*** pgsql/src/backend/access/gist/gistvacuum.c 2008/10/31 15:04:59 1.39 --- pgsql/src/backend/access/gist/gistvacuum.c 2008/11/03 20:47:48 1.40 *************** *** 8,14 **** * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION ! * $PostgreSQL: pgsql/src/backend/access/gist/gistvacuum.c,v 1.38 2008/10/06 08:04:11 heikki Exp $ * *------------------------------------------------------------------------- */ --- 8,14 ---- * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION ! * $PostgreSQL: pgsql/src/backend/access/gist/gistvacuum.c,v 1.39 2008/10/31 15:04:59 heikki Exp $ * *------------------------------------------------------------------------- */ *************** gistDeleteSubtree(GistVacuum *gv, BlockN *** 144,161 **** UnlockReleaseBuffer(buffer); } - static Page - GistPageGetCopyPage(Page page) - { - Size pageSize = PageGetPageSize(page); - Page tmppage; - - tmppage = (Page) palloc(pageSize); - memcpy(tmppage, page, pageSize); - - return tmppage; - } - static ArrayTuple vacuumSplitPage(GistVacuum *gv, Page tempPage, Buffer buffer, IndexTuple *addon, int curlenaddon) { --- 144,149 ---- *************** gistVacuumUpdate(GistVacuum *gv, BlockNu *** 325,331 **** addon = (IndexTuple *) palloc(sizeof(IndexTuple) * lenaddon); /* get copy of page to work */ ! tempPage = GistPageGetCopyPage(page); for (i = FirstOffsetNumber; i <= maxoff; i = OffsetNumberNext(i)) { --- 313,319 ---- addon = (IndexTuple *) palloc(sizeof(IndexTuple) * lenaddon); /* get copy of page to work */ ! tempPage = PageGetTempPageCopy(page); for (i = FirstOffsetNumber; i <= maxoff; i = OffsetNumberNext(i)) {