Fix embarrassing bug in recent smgr refactoring patch: WAL records should

be written for *non*-temp tables only. Report and test case by Mark
Kirkwood and Simon Riggs.
This commit is contained in:
Heikki Linnakangas 2009-01-04 14:59:22 +00:00
parent a65ed83f8a
commit 74ef810ca6

View File

@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/catalog/storage.c,v 1.3 2009/01/01 17:23:37 momjian Exp $
* $PostgreSQL: pgsql/src/backend/catalog/storage.c,v 1.4 2009/01/04 14:59:22 heikki Exp $
*
* NOTES
* Some of this code used to be in storage/smgr/smgr.c, and the
@ -106,7 +106,7 @@ RelationCreateStorage(RelFileNode rnode, bool istemp)
srel = smgropen(rnode);
smgrcreate(srel, MAIN_FORKNUM, false);
if (istemp)
if (!istemp)
{
/*
* Make an XLOG entry showing the file creation. If we abort, the file
@ -203,7 +203,7 @@ RelationTruncate(Relation rel, BlockNumber nblocks)
* harmless failure to truncate, that could spell trouble at WAL replay,
* into a certain PANIC.
*/
if (rel->rd_istemp)
if (!rel->rd_istemp)
{
/*
* Make an XLOG entry showing the file truncation.