Skip to content

Commit 80b864b

Browse files
author
Artur Zakirov
committed
Fix bug in rumReadTuple
1 parent ba30d78 commit 80b864b

File tree

3 files changed

+10
-10
lines changed

3 files changed

+10
-10
lines changed

rumdatapage.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1400,8 +1400,8 @@ rumInsertItemPointers(RumState *rumstate,
14001400

14011401
BlockNumber rootBlkno = gdi->stack->blkno;
14021402

1403-
/* TODO: Fix this */
1404-
gdi->btree.items = (ItemPointer) palloc(sizeof(ItemPointerData) * nitem);
1403+
/* TODO: Fix this terrible code. */
1404+
gdi->btree.items = (ItemPointerData *) palloc(sizeof(ItemPointerData) * nitem);
14051405
gdi->btree.addInfo = (Datum *) palloc(sizeof(Datum) * nitem);
14061406
gdi->btree.addInfoIsNull = (bool *) palloc(sizeof(bool) * nitem);
14071407
for (i = 0; i < nitem; i++)

rumentrypage.c

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,18 +24,18 @@ rumReadTuple(RumState *rumstate, OffsetNumber attnum,
2424
IndexTuple itup, RumKey *items)
2525
{
2626
Pointer ptr = RumGetPosting(itup);
27+
RumKey item;
2728
int nipd = RumGetNPosting(itup),
2829
i;
2930

31+
item.iptr.ip_blkid.bi_lo = 0;
32+
item.iptr.ip_blkid.bi_hi = 0;
33+
item.iptr.ip_posid = 0;
34+
3035
for (i = 0; i < nipd; i++)
3136
{
32-
if (i == 0)
33-
{
34-
items[0].iptr.ip_blkid.bi_lo = 0;
35-
items[0].iptr.ip_blkid.bi_hi = 0;
36-
items[0].iptr.ip_posid = 0;
37-
}
38-
ptr = rumDataPageLeafRead(ptr, attnum, &items[i], rumstate, true);
37+
ptr = rumDataPageLeafRead(ptr, attnum, &item, rumstate, true);
38+
items[i] = item;
3939
}
4040
}
4141

rumvalidate.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ rumvalidate(Oid opclassoid)
111111
case GIN_EXTRACTVALUE_PROC:
112112
/* Some opclasses omit nullFlags */
113113
ok = check_amproc_signature(procform->amproc, INTERNALOID, false,
114-
3, 3, opcintype, INTERNALOID,
114+
5, 5, opcintype, INTERNALOID,
115115
INTERNALOID, INTERNALOID,
116116
INTERNALOID);
117117
break;

0 commit comments

Comments
 (0)