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

Commit1d15afd

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 parent807a262 commit1d15afd

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.189 2001/03/25 23:23:58 tgl Exp $
11+
* $Header: /cvsroot/pgsql/src/backend/commands/vacuum.c,v 1.189.2.1 2001/06/29 16:34:49 tgl Exp $
1212
*
1313
*-------------------------------------------------------------------------
1414
*/
@@ -577,7 +577,6 @@ scan_heap(VRelStats *vacrelstats, Relation onerel,
577577
maxoff;
578578
boolpgchanged,
579579
tupgone,
580-
dobufrel,
581580
notup;
582581
char*relname;
583582
VacPagevacpage,
@@ -876,15 +875,6 @@ scan_heap(VRelStats *vacrelstats, Relation onerel,
876875
}
877876
}
878877

879-
if (pgchanged)
880-
{
881-
WriteBuffer(buf);
882-
dobufrel= false;
883-
changed_pages++;
884-
}
885-
else
886-
dobufrel= true;
887-
888878
if (tempPage!= (Page)NULL)
889879
{/* Some tuples are gone */
890880
PageRepairFragmentation(tempPage,NULL);
@@ -900,8 +890,15 @@ scan_heap(VRelStats *vacrelstats, Relation onerel,
900890
free_size+=vacpage->free;
901891
reap_page(vacuum_pages,vacpage);
902892
}
903-
if (dobufrel)
893+
894+
if (pgchanged)
895+
{
896+
WriteBuffer(buf);
897+
changed_pages++;
898+
}
899+
else
904900
ReleaseBuffer(buf);
901+
905902
if (notup)
906903
empty_end_pages++;
907904
else

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp