	Your e-mail did not arrive at its intended destination. You need to
send it to Michael J. Davis, not Michael Davis.


	From:	Vadim Mikheev <vadim @ krs.ru> on 05/04/99 09:18 PM
	To:	Tom Lane <tgl @ sss.pgh.pa.us>@SMTP@EXCHANGE
	cc:	pgsql-hackers @ postgreSQL.org@SMTP@EXCHANGE 
	Subject:	Re: [HACKERS] Advice wanted on backend memory
management

	Tom Lane wrote:
	> 
	> I want to change hashjoin's use of a fixed-size overflow area for
tuples
	> that don't fit into the hashbucket they ought to go in.  Since
it's
	> always possible for an improbably large number of tuples to hash
into the
	> same hashbucket, the overflow area itself can overflow; without
the
	> ability to recover from that, hashjoin is inherently unreliable.
	> So I think this is an important thing to fix.
	> 
	> To do this, I need to be able to allocate chunks of space that I
will
	> later want to give back all at once (at the end of a hash pass).
	> Seems to me like a job for palloc and a special memory context ---
	> but I see no way in mcxt.h to create a new memory context.  How do
	> I do that?  Also, I'd want the new context to be a "sub-context"
of

	No way :(
	StartPortalAllocMode could help but - portalmem.c:
	/*
	 * StartPortalAllocMode 
	 *      Starts a new block of portal heap allocation using mode and
limit;
	 *      the current block is disabled until EndPortalAllocMode is
called.
	
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	I'm unhappy with this allocation block stacking for quite long time
:(

	Try to pfree chunks "by hand".

	Vadim




Wed, 5 May 1999 09:18:27 -0500 
Michael Davis <Michael.Davis@tvguide.com>
Re: [HACKERS] Advice wanted on backend memory management