diff options
author | Marc G. Fournier <scrappy@hub.org> | 1996-10-24 07:55:54 +0000 |
---|---|---|
committer | Marc G. Fournier <scrappy@hub.org> | 1996-10-24 07:55:54 +0000 |
commit | 20b4c46e263ca32d97e35aebc1662a9f0fd433fe (patch) | |
tree | d22ac0a0b75044a94283f242483f40134522b043 /src/backend/utils/cache | |
parent | e152661200c1b3e6a834c918ba64681dde404440 (diff) | |
download | postgresql-20b4c46e263ca32d97e35aebc1662a9f0fd433fe.tar.gz postgresql-20b4c46e263ca32d97e35aebc1662a9f0fd433fe.zip |
Fixes: Errors when PQexec() in backend creates temp
relations and transaction is aborted
Submitted by: wieck@sapserv.debis.de (Jan Wieck)
Diffstat (limited to 'src/backend/utils/cache')
-rw-r--r-- | src/backend/utils/cache/relcache.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/backend/utils/cache/relcache.c b/src/backend/utils/cache/relcache.c index f10d3da7f61..81d9ca59898 100644 --- a/src/backend/utils/cache/relcache.c +++ b/src/backend/utils/cache/relcache.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/cache/relcache.c,v 1.2 1996/10/23 07:41:00 scrappy Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/cache/relcache.c,v 1.3 1996/10/24 07:55:29 scrappy Exp $ * *------------------------------------------------------------------------- */ @@ -1418,7 +1418,14 @@ RelationPurgeLocalRelation(bool xactCommitted) * remove the file if we abort. This is so that files for * tables created inside a transaction block get removed. */ - smgrunlink(reln->rd_rel->relsmgr, reln); + if(reln->rd_istemp) { + if(!(reln->rd_tmpunlinked)) { + smgrunlink(reln->rd_rel->relsmgr, reln); + reln->rd_tmpunlinked = TRUE; + } + } else { + smgrunlink(reln->rd_rel->relsmgr, reln); + } } reln->rd_islocal = FALSE; |