@@ -263,17 +263,16 @@ rumDataPageLeafGetItemPointerSize(ItemPointer iptr, ItemPointer prev)
263
263
*/
264
264
Size
265
265
rumCheckPlaceToDataPageLeaf (OffsetNumber attnum ,
266
- ItemPointer iptr , Datum addInfo , bool addInfoIsNull , ItemPointer prev ,
267
- RumState * rumstate , Size size )
266
+ RumKey * item , ItemPointer prev , RumState * rumstate , Size size )
268
267
{
269
268
Form_pg_attribute attr ;
270
269
271
- size += rumDataPageLeafGetItemPointerSize (iptr , prev );
270
+ size += rumDataPageLeafGetItemPointerSize (& item -> iptr , prev );
272
271
273
- if (!addInfoIsNull )
272
+ if (!item -> addInfoIsNull )
274
273
{
275
274
attr = rumstate -> addAttrs [attnum - 1 ];
276
- size = rumComputeDatumSize (size , addInfo , attr -> attbyval ,
275
+ size = rumComputeDatumSize (size , item -> addInfo , attr -> attbyval ,
277
276
attr -> attalign , attr -> attlen , attr -> attstorage );
278
277
}
279
278
@@ -722,8 +721,7 @@ dataIsEnoughSpace(RumBtree btree, Buffer buf, OffsetNumber off)
722
721
for (j = btree -> curitem ; j < btree -> nitem ; j ++ )
723
722
{
724
723
size = rumCheckPlaceToDataPageLeaf (btree -> entryAttnum ,
725
- & btree -> items [j ].iptr , btree -> items [j ].addInfo ,
726
- btree -> items [j ].addInfoIsNull ,
724
+ & btree -> items [j ],
727
725
(j == btree -> curitem ) ? (& iptr ) : & btree -> items [j - 1 ].iptr ,
728
726
btree -> rumstate , size );
729
727
}
@@ -732,8 +730,7 @@ dataIsEnoughSpace(RumBtree btree, Buffer buf, OffsetNumber off)
732
730
{
733
731
j = btree -> curitem ;
734
732
size = rumCheckPlaceToDataPageLeaf (btree -> entryAttnum ,
735
- & btree -> items [j ].iptr , btree -> items [j ].addInfo ,
736
- btree -> items [j ].addInfoIsNull , & iptr , btree -> rumstate , size );
733
+ & btree -> items [j ], & iptr , btree -> rumstate , size );
737
734
}
738
735
size += MAXIMUM_ALIGNOF ;
739
736
@@ -827,9 +824,7 @@ dataPlaceToPage(RumBtree btree, Page page, OffsetNumber off)
827
824
Pointer ptr2 ;
828
825
829
826
ptr2 = page + rumCheckPlaceToDataPageLeaf (btree -> entryAttnum ,
830
- & btree -> items [j ].iptr , btree -> items [j ].addInfo ,
831
- btree -> items [j ].addInfoIsNull ,
832
- & iptr , btree -> rumstate , ptr - page );
827
+ & btree -> items [j ], & iptr , btree -> rumstate , ptr - page );
833
828
834
829
freespace = RumDataPageFreeSpacePre (page , ptr2 );
835
830
if (freespace < 0 )
@@ -954,8 +949,7 @@ dataSplitPageLeaf(RumBtree btree, Buffer lbuf, Buffer rbuf,
954
949
955
950
prevTotalsize = totalsize ;
956
951
totalsize = rumCheckPlaceToDataPageLeaf (btree -> entryAttnum ,
957
- & item .iptr , item .addInfo , item .addInfoIsNull ,
958
- & prevIptr , btree -> rumstate , totalsize );
952
+ & item , & prevIptr , btree -> rumstate , totalsize );
959
953
960
954
maxItemIndex ++ ;
961
955
totalCount ++ ;
@@ -968,8 +962,7 @@ dataSplitPageLeaf(RumBtree btree, Buffer lbuf, Buffer rbuf,
968
962
969
963
prevTotalsize = totalsize ;
970
964
totalsize = rumCheckPlaceToDataPageLeaf (btree -> entryAttnum ,
971
- & item .iptr , item .addInfo , item .addInfoIsNull ,
972
- & prevIptr , btree -> rumstate , totalsize );
965
+ & item , & prevIptr , btree -> rumstate , totalsize );
973
966
974
967
totalCount ++ ;
975
968
maxItemSize = Max (maxItemSize , totalsize - prevTotalsize );
@@ -989,10 +982,8 @@ dataSplitPageLeaf(RumBtree btree, Buffer lbuf, Buffer rbuf,
989
982
*/
990
983
while (maxItemIndex < btree -> nitem &&
991
984
(newTotalsize = rumCheckPlaceToDataPageLeaf (btree -> entryAttnum ,
992
- & item .iptr , item .addInfo , item .addInfoIsNull ,
993
- & prevIptr , btree -> rumstate , totalsize )) <
994
- 2 * RumDataPageSize - 2 * maxItemSize - 2 * MAXIMUM_ALIGNOF
995
- )
985
+ & item , & prevIptr , btree -> rumstate , totalsize )) <
986
+ 2 * RumDataPageSize - 2 * maxItemSize - 2 * MAXIMUM_ALIGNOF )
996
987
{
997
988
maxItemIndex ++ ;
998
989
totalCount ++ ;
@@ -1008,8 +999,7 @@ dataSplitPageLeaf(RumBtree btree, Buffer lbuf, Buffer rbuf,
1008
999
{
1009
1000
prevTotalsize = totalsize ;
1010
1001
totalsize = rumCheckPlaceToDataPageLeaf (btree -> entryAttnum ,
1011
- & item .iptr , item .addInfo , item .addInfoIsNull ,
1012
- & prevIptr , btree -> rumstate , totalsize );
1002
+ & item , & prevIptr , btree -> rumstate , totalsize );
1013
1003
maxItemIndex ++ ;
1014
1004
1015
1005
totalCount ++ ;
0 commit comments