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

Commit3938150

Browse files
committed
Fix longstanding error in VACUUM: sometimes would examine a buffer page
after writing/unpinning it. An actual failure is unlikely, unless thesystem is tremendously short of buffers ... but a bug is a bug.
1 parent1d4ee0c commit3938150

File tree

1 file changed

+9
-12
lines changed

1 file changed

+9
-12
lines changed

‎src/backend/commands/vacuum.c

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
*
99
*
1010
* IDENTIFICATION
11-
* $Header: /cvsroot/pgsql/src/backend/commands/vacuum.c,v 1.198 2001/06/27 23:31:38 tgl Exp $
11+
* $Header: /cvsroot/pgsql/src/backend/commands/vacuum.c,v 1.199 2001/06/29 16:34:30 tgl Exp $
1212
*
1313
*-------------------------------------------------------------------------
1414
*/
@@ -631,7 +631,6 @@ scan_heap(VRelStats *vacrelstats, Relation onerel,
631631
maxoff;
632632
boolpgchanged,
633633
tupgone,
634-
dobufrel,
635634
notup;
636635
char*relname;
637636
VacPagevacpage,
@@ -931,15 +930,6 @@ scan_heap(VRelStats *vacrelstats, Relation onerel,
931930
}
932931
}
933932

934-
if (pgchanged)
935-
{
936-
WriteBuffer(buf);
937-
dobufrel= false;
938-
changed_pages++;
939-
}
940-
else
941-
dobufrel= true;
942-
943933
if (tempPage!= (Page)NULL)
944934
{/* Some tuples are gone */
945935
PageRepairFragmentation(tempPage,NULL);
@@ -955,8 +945,15 @@ scan_heap(VRelStats *vacrelstats, Relation onerel,
955945
free_size+=vacpage->free;
956946
reap_page(vacuum_pages,vacpage);
957947
}
958-
if (dobufrel)
948+
949+
if (pgchanged)
950+
{
951+
WriteBuffer(buf);
952+
changed_pages++;
953+
}
954+
else
959955
ReleaseBuffer(buf);
956+
960957
if (notup)
961958
empty_end_pages++;
962959
else

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp