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

Commite3e6e3a

Browse files
committed
Remove dead checks for invalid left page in ginDeletePage.
In some places, the function assumes the left page is valid, and in others,it checks if it is valid. Remove all the checks.
1 parent1bd3842 commite3e6e3a

File tree

1 file changed

+12
-24
lines changed

1 file changed

+12
-24
lines changed

‎src/backend/access/gin/ginvacuum.c

Lines changed: 12 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -285,16 +285,14 @@ ginDeletePage(GinVacuumState *gvs, BlockNumber deleteBlkno, BlockNumber leftBlkn
285285
GinPageGetOpaque(page)->flags=GIN_DELETED;
286286

287287
MarkBufferDirty(pBuffer);
288-
if (leftBlkno!=InvalidBlockNumber)
289-
MarkBufferDirty(lBuffer);
288+
MarkBufferDirty(lBuffer);
290289
MarkBufferDirty(dBuffer);
291290

292291
if (RelationNeedsWAL(gvs->index))
293292
{
294293
XLogRecPtrrecptr;
295294
XLogRecDatardata[4];
296295
ginxlogDeletePagedata;
297-
intn;
298296

299297
data.node=gvs->index->rd_node;
300298
data.blkno=deleteBlkno;
@@ -315,32 +313,22 @@ ginDeletePage(GinVacuumState *gvs, BlockNumber deleteBlkno, BlockNumber leftBlkn
315313
rdata[1].len=0;
316314
rdata[1].next=rdata+2;
317315

318-
if (leftBlkno!=InvalidBlockNumber)
319-
{
320-
rdata[2].buffer=lBuffer;
321-
rdata[2].buffer_std= FALSE;
322-
rdata[2].data=NULL;
323-
rdata[2].len=0;
324-
rdata[2].next=rdata+3;
325-
n=3;
326-
}
327-
else
328-
n=2;
316+
rdata[2].buffer=lBuffer;
317+
rdata[2].buffer_std= FALSE;
318+
rdata[2].data=NULL;
319+
rdata[2].len=0;
320+
rdata[2].next=rdata+3;
329321

330-
rdata[n].buffer=InvalidBuffer;
331-
rdata[n].buffer_std= FALSE;
332-
rdata[n].len=sizeof(ginxlogDeletePage);
333-
rdata[n].data= (char*)&data;
334-
rdata[n].next=NULL;
322+
rdata[3].buffer=InvalidBuffer;
323+
rdata[3].buffer_std= FALSE;
324+
rdata[3].len=sizeof(ginxlogDeletePage);
325+
rdata[3].data= (char*)&data;
326+
rdata[3].next=NULL;
335327

336328
recptr=XLogInsert(RM_GIN_ID,XLOG_GIN_DELETE_PAGE,rdata);
337329
PageSetLSN(page,recptr);
338330
PageSetLSN(parentPage,recptr);
339-
if (leftBlkno!=InvalidBlockNumber)
340-
{
341-
page=BufferGetPage(lBuffer);
342-
PageSetLSN(page,recptr);
343-
}
331+
PageSetLSN(BufferGetPage(lBuffer),recptr);
344332
}
345333

346334
if (!isParentRoot)

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp