diff --git a/src/backend/access/gin/ginxlog.c b/src/backend/access/gin/ginxlog.c
index eb90ddd684ebd129b36ba8cf3a765ee55fca521e..cff5bc8bd59136225458f8460ee54050a8f0f82a 100644
--- a/src/backend/access/gin/ginxlog.c
+++ b/src/backend/access/gin/ginxlog.c
@@ -8,7 +8,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *			 $PostgreSQL: pgsql/src/backend/access/gin/ginxlog.c,v 1.21 2010/01/02 16:57:33 momjian Exp $
+ *			 $PostgreSQL: pgsql/src/backend/access/gin/ginxlog.c,v 1.22 2010/02/09 20:31:24 heikki Exp $
  *-------------------------------------------------------------------------
  */
 #include "postgres.h"
@@ -777,8 +777,6 @@ ginContinueSplit(ginIncompleteSplit *split)
 									   GinPageGetOpaque(page)->maxoff))->key;
 	}
 
-	FreeFakeRelcacheEntry(reln);
-
 	btree.rightblkno = split->rightBlkno;
 
 	stack.blkno = split->leftBlkno;
@@ -789,6 +787,8 @@ ginContinueSplit(ginIncompleteSplit *split)
 	findParents(&btree, &stack, split->rootBlkno);
 	ginInsertValue(&btree, stack.parent);
 
+	FreeFakeRelcacheEntry(reln);
+
 	UnlockReleaseBuffer(buffer);
 }