Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitd0aa83e

Browse files
committed
fix formatting, hide static-only used function
1 parent7866a76 commitd0aa83e

File tree

3 files changed

+44
-18
lines changed

3 files changed

+44
-18
lines changed

‎rum.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -490,7 +490,6 @@ extern void checkLeafDataPage(RumState *rumstate, AttrNumber attrnum, Page page)
490490
/* rumdatapage.c */
491491
externintrumCompareItemPointers(constItemPointerData*a,constItemPointerData*b);
492492
externintcompareRumKey(RumState*state,constRumKey*a,constRumKey*b);
493-
externchar*rumDataPageLeafWriteItemPointer(char*ptr,ItemPointeriptr,ItemPointerprev,booladdInfoIsNull);
494493
externPointerrumPlaceToDataPageLeaf(Pointerptr,OffsetNumberattnum,
495494
ItemPointeriptr,DatumaddInfo,booladdInfoIsNull,ItemPointerprev,
496495
RumState*rumstate);
@@ -881,7 +880,8 @@ rumDataPageLeafRead(Pointer ptr, OffsetNumber attnum, ItemPointer iptr,
881880
break;
882881
#endif
883882
default:
884-
elog(ERROR,"unsupported byval length: %d", (int) (attr->attlen));
883+
elog(ERROR,"unsupported byval length: %d",
884+
(int) (attr->attlen));
885885
}
886886
}
887887
}

‎rumdatapage.c

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ rumDatumWrite(Pointer ptr, Datum datum, bool typbyval, char typalign,
160160
* BlockNumber is stored in incremental manner we also need a previous item
161161
* pointer. Also store addInfoIsNull flag using one bit of OffsetNumber.
162162
*/
163-
char*
163+
staticchar*
164164
rumDataPageLeafWriteItemPointer(char*ptr,ItemPointeriptr,ItemPointerprev,
165165
booladdInfoIsNull)
166166
{
@@ -1285,6 +1285,11 @@ updateItemIndexes(Page page, OffsetNumber attnum, RumState *rumstate)
12851285
((PageHeader)page)->pd_lower=ptr-page;
12861286
((PageHeader)page)->pd_upper= ((char*)RumPageGetIndexes(page))-page;
12871287

1288+
Assert(ptr <= (char*)RumPageGetIndexes(page));
1289+
Assert(((PageHeader)page)->pd_upper >= ((PageHeader)page)->pd_lower);
1290+
Assert(((PageHeader)page)->pd_upper- ((PageHeader)page)->pd_lower==
1291+
RumPageGetOpaque(page)->freespace);
1292+
12881293
returniptr;
12891294
}
12901295

‎ruminsert.c

Lines changed: 36 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,8 @@ typedef struct
3939
*/
4040
staticBlockNumber
4141
createPostingTree(RumState*rumstate,OffsetNumberattnum,Relationindex,
42-
ItemPointerData*items,Datum*addInfo,bool*addInfoIsNull,uint32nitems)
42+
ItemPointerData*items,
43+
Datum*addInfo,bool*addInfoIsNull,uint32nitems)
4344
{
4445
BlockNumberblkno;
4546
Bufferbuffer=RumNewBuffer(index);
@@ -64,7 +65,7 @@ createPostingTree(RumState *rumstate, OffsetNumber attnum, Relation index,
6465
if (i>0)
6566
prev_iptr=items[i-1];
6667
ptr=rumPlaceToDataPageLeaf(ptr,attnum,&items[i],addInfo[i],
67-
addInfoIsNull[i],&prev_iptr,rumstate);
68+
addInfoIsNull[i],&prev_iptr,rumstate);
6869
}
6970
freespace=RumDataPageFreeSpacePre(page,ptr);
7071
Assert(freespace >=0);
@@ -150,14 +151,18 @@ RumFormTuple(RumState *rumstate,
150151
if (nipd>0)
151152
{
152153
newsize=rumCheckPlaceToDataPageLeaf(attnum,&ipd[0],addInfo[0],
153-
addInfoIsNull[0],&nullItemPointer,rumstate,newsize);
154+
addInfoIsNull[0],
155+
&nullItemPointer,
156+
rumstate,newsize);
154157
for (i=1;i<nipd;i++)
155158
{
156159
newsize=rumCheckPlaceToDataPageLeaf(attnum,&ipd[i],addInfo[i],
157-
addInfoIsNull[i],&ipd[i-1],rumstate,newsize);
160+
addInfoIsNull[i],&ipd[i-1],
161+
rumstate,newsize);
158162
}
159163
}
160164

165+
161166
if (category!=RUM_CAT_NORM_KEY)
162167
{
163168
Assert(IndexTupleHasNulls(itup));
@@ -198,12 +203,18 @@ RumFormTuple(RumState *rumstate,
198203
{
199204
char*ptr=RumGetPosting(itup);
200205
ptr=rumPlaceToDataPageLeaf(ptr,attnum,&ipd[0],addInfo[0],
201-
addInfoIsNull[0],&nullItemPointer,rumstate);
206+
addInfoIsNull[0],&nullItemPointer,
207+
rumstate);
202208
for (i=1;i<nipd;i++)
203209
{
204210
ptr=rumPlaceToDataPageLeaf(ptr,attnum,&ipd[i],addInfo[i],
205-
addInfoIsNull[i],&ipd[i-1],rumstate);
211+
addInfoIsNull[i],&ipd[i-1],
212+
rumstate);
206213
}
214+
215+
Assert(MAXALIGN((ptr- ((char*)itup))+
216+
((category==RUM_CAT_NORM_KEY) ?0 :sizeof(RumNullCategory)))
217+
==newsize);
207218
}
208219

209220
/*
@@ -214,6 +225,7 @@ RumFormTuple(RumState *rumstate,
214225
Assert(IndexTupleHasNulls(itup));
215226
RumSetNullCategory(itup,rumstate,category);
216227
}
228+
217229
returnitup;
218230
}
219231

@@ -341,20 +353,24 @@ buildFreshLeafTuple(RumState *rumstate,
341353
do
342354
{
343355
size=rumCheckPlaceToDataPageLeaf(attnum,&items[itemsCount],
344-
addInfo[itemsCount],addInfoIsNull[itemsCount],&prevIptr,
345-
rumstate,size);
356+
addInfo[itemsCount],
357+
addInfoIsNull[itemsCount],
358+
&prevIptr,rumstate,size);
346359
prevIptr=items[itemsCount];
347360
itemsCount++;
348361
}
349362
while (itemsCount<nitem&&size<RumDataPageSize);
350-
itemsCount--;
363+
364+
if (size >=RumDataPageSize)
365+
itemsCount--;
351366

352367

353368
/*
354369
* Build posting-tree-only result tuple. We do this first so as to
355370
* fail quickly if the key is too big.
356371
*/
357-
res=RumFormTuple(rumstate,attnum,key,category,NULL,NULL,NULL,0, true);
372+
res=RumFormTuple(rumstate,attnum,key,category,
373+
NULL,NULL,NULL,0, true);
358374

359375
/*
360376
* Initialize posting tree with as many TIDs as will fit on the first
@@ -377,7 +393,8 @@ buildFreshLeafTuple(RumState *rumstate,
377393
{
378394
RumPostingTreeScan*gdi;
379395

380-
gdi=rumPrepareScanPostingTree(rumstate->index,postingRoot, FALSE,attnum,rumstate);
396+
gdi=rumPrepareScanPostingTree(rumstate->index,postingRoot, FALSE,
397+
attnum,rumstate);
381398
gdi->btree.isBuild= (buildStats!=NULL);
382399

383400
rumInsertItemPointers(rumstate,
@@ -457,25 +474,29 @@ rumEntryInsert(RumState *rumstate,
457474
freeRumBtreeStack(stack);
458475

459476
/* insert into posting tree */
460-
gdi=rumPrepareScanPostingTree(rumstate->index,rootPostingTree, FALSE,attnum,rumstate);
477+
gdi=rumPrepareScanPostingTree(rumstate->index,rootPostingTree,
478+
FALSE,attnum,rumstate);
461479
gdi->btree.isBuild= (buildStats!=NULL);
462-
rumInsertItemPointers(rumstate,attnum,gdi,items,addInfo,addInfoIsNull,nitem,buildStats);
480+
rumInsertItemPointers(rumstate,attnum,gdi,items,addInfo,
481+
addInfoIsNull,nitem,buildStats);
463482
pfree(gdi);
464483

465484
return;
466485
}
467486

468487
/* modify an existing leaf entry */
469488
itup=addItemPointersToLeafTuple(rumstate,itup,
470-
items,addInfo,addInfoIsNull,nitem,buildStats);
489+
items,addInfo,addInfoIsNull,nitem,
490+
buildStats);
471491

472492
btree.isDelete= TRUE;
473493
}
474494
else
475495
{
476496
/* no match, so construct a new leaf entry */
477497
itup=buildFreshLeafTuple(rumstate,attnum,key,category,
478-
items,addInfo,addInfoIsNull,nitem,buildStats);
498+
items,addInfo,addInfoIsNull,nitem,
499+
buildStats);
479500
}
480501

481502
/* Insert the new or modified leaf tuple */

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp