Index: aset.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/utils/mmgr/aset.c,v
retrieving revision 1.60
retrieving revision 1.61
diff -c -c -r1.60 -r1.61
*** aset.c	14 May 2005 20:29:13 -0000	1.60
--- aset.c	4 Jun 2005 20:14:12 -0000	1.61
***************
*** 399,404 ****
--- 399,415 ----
  	if (block == NULL)
  		return;
  
+ 	/*
+ 	 * When blocks list has only "keeper" block and freeptr of the block
+ 	 * is initial value, the context is not used from last reset.
+ 	 */
+ 	if (block == set->keeper && block->next == NULL)
+ 	{
+ 		char	   *datastart = ((char *) block) + ALLOC_BLOCKHDRSZ;
+ 		if (block->freeptr == datastart)
+ 			return;
+ 	}
+ 
  	/* Clear chunk freelists */
  	MemSetAligned(set->freelist, 0, sizeof(set->freelist));
  
