From: MARK CALLAGHAN Date: April 30 2009 6:17pm Subject: Re: memory allocation architecture in MySQL List-Archive: http://lists.mysql.com/internals/36578 Message-Id: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit On Fri, Oct 31, 2008 at 11:18 AM, Michael Widenius wrote: > > Hi again! > >>>>>> "MARK" == MARK CALLAGHAN writes: > > > > MARK> It would help if there were a document on the developer wiki page that > MARK> stated this. > > http://forge.mysql.com/wiki/MySQL_Internals_How_to_allocate_memory Is there any chance we can get a per THD MEM_ROOT? There is not one today so allocations for Security_context use the global pool (malloc) and then there is a need for Security_context::destroy. For the roles support I have added I want to assign a string to Security_context::priv_user that may require deallocation. It is tricky to remember when that may be done because empty constant strings are assigned to it ("") and non-empty constant strings are assigned to it ("DELAYED" for delayed inserts). The current behavior for priv_user is that it never requires deallocation. I will probably solve my problem by adding a buffer into Security_context and using that buffer so I can avoid allocation. -- Mark Callaghan mdcallag@stripped