diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2009-10-02 21:14:11 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2009-10-02 21:14:11 +0000 |
commit | c3110e49b1601941e0173e8d75378f943b4ca6fd (patch) | |
tree | 3cb0a453fe9e193f38e8796e9281c8274bc96f28 /src/backend/access/gin/ginvacuum.c | |
parent | ac317a8474e7c2e2c67ee37f8cb1a6511eb662d9 (diff) |
Make sure that GIN fast-insert and regular code paths enforce the same
tuple size limit. Improve the error message for index-tuple-too-large
so that it includes the actual size, the limit, and the index name.
Sync with the btree occurrences of the same error.
Back-patch to 8.4 because it appears that the out-of-sync problem
is occurring in the field.
Teodor and Tom
Diffstat (limited to 'src/backend/access/gin/ginvacuum.c')
-rw-r--r-- | src/backend/access/gin/ginvacuum.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/backend/access/gin/ginvacuum.c b/src/backend/access/gin/ginvacuum.c index 7f2ff9896f0..621460a2434 100644 --- a/src/backend/access/gin/ginvacuum.c +++ b/src/backend/access/gin/ginvacuum.c @@ -8,7 +8,7 @@ * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/access/gin/ginvacuum.c,v 1.30 2009/06/11 14:48:53 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/access/gin/ginvacuum.c,v 1.30.2.1 2009/10/02 21:14:11 tgl Exp $ *------------------------------------------------------------------------- */ @@ -564,7 +564,8 @@ ginVacuumEntryPage(GinVacuumState *gvs, Buffer buffer, BlockNumber *roots, uint3 value = gin_index_getattr(&gvs->ginstate, itup); attnum = gintuple_get_attrnum(&gvs->ginstate, itup); - itup = GinFormTuple(&gvs->ginstate, attnum, value, GinGetPosting(itup), newN); + itup = GinFormTuple(gvs->index, &gvs->ginstate, attnum, value, + GinGetPosting(itup), newN, true); PageIndexTupleDelete(tmppage, i); if (PageAddItem(tmppage, (Item) itup, IndexTupleSize(itup), i, false, false) != i) |