mirror of
https://github.com/postgres/postgres.git
synced 2025-04-24 10:47:04 +03:00
Fix for SELECT INTO ... GROUP/ORDER BY where table already exists unlink error.
This commit is contained in:
parent
8fb0ac8898
commit
6da0055274
@ -7,7 +7,7 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/access/heap/heapam.c,v 1.8 1996/11/05 09:53:01 scrappy Exp $
|
* $Header: /cvsroot/pgsql/src/backend/access/heap/heapam.c,v 1.9 1997/01/01 06:01:03 momjian Exp $
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* INTERFACE ROUTINES
|
* INTERFACE ROUTINES
|
||||||
@ -495,6 +495,10 @@ heap_open(Oid relationId)
|
|||||||
IncrHeapAccessStat(global_open);
|
IncrHeapAccessStat(global_open);
|
||||||
|
|
||||||
r = (Relation) RelationIdGetRelation(relationId);
|
r = (Relation) RelationIdGetRelation(relationId);
|
||||||
|
|
||||||
|
if(RelationIsValid(r) && r->rd_istemp) {
|
||||||
|
r->rd_tmpunlinked = FALSE; /* now we can unlink it */
|
||||||
|
}
|
||||||
|
|
||||||
if (RelationIsValid(r) && r->rd_rel->relkind == RELKIND_INDEX) {
|
if (RelationIsValid(r) && r->rd_rel->relkind == RELKIND_INDEX) {
|
||||||
elog(WARN, "%s is an index relation", r->rd_rel->relname.data);
|
elog(WARN, "%s is an index relation", r->rd_rel->relname.data);
|
||||||
@ -524,6 +528,10 @@ heap_openr(char *relationName)
|
|||||||
|
|
||||||
r = RelationNameGetRelation(relationName);
|
r = RelationNameGetRelation(relationName);
|
||||||
|
|
||||||
|
if(RelationIsValid(r) && r->rd_istemp) {
|
||||||
|
r->rd_tmpunlinked = FALSE; /* now we can unlink it */
|
||||||
|
}
|
||||||
|
|
||||||
if (RelationIsValid(r) && r->rd_rel->relkind == RELKIND_INDEX) {
|
if (RelationIsValid(r) && r->rd_rel->relkind == RELKIND_INDEX) {
|
||||||
elog(WARN, "%s is an index relation", r->rd_rel->relname.data);
|
elog(WARN, "%s is an index relation", r->rd_rel->relname.data);
|
||||||
}
|
}
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/catalog/heap.c,v 1.9 1996/12/31 06:58:27 vadim Exp $
|
* $Header: /cvsroot/pgsql/src/backend/catalog/heap.c,v 1.10 1997/01/01 06:01:16 momjian Exp $
|
||||||
*
|
*
|
||||||
* INTERFACE ROUTINES
|
* INTERFACE ROUTINES
|
||||||
* heap_creatr() - Create an uncataloged heap relation
|
* heap_creatr() - Create an uncataloged heap relation
|
||||||
@ -303,7 +303,8 @@ heap_creatr(char *name,
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
rdesc->rd_istemp = isTemp;
|
rdesc->rd_istemp = isTemp;
|
||||||
|
rdesc->rd_tmpunlinked = TRUE; /* change once table is opened */
|
||||||
|
|
||||||
/* ----------------
|
/* ----------------
|
||||||
* have the storage manager create the relation.
|
* have the storage manager create the relation.
|
||||||
* ----------------
|
* ----------------
|
||||||
|
Loading…
x
Reference in New Issue
Block a user