summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane2002-08-19 00:40:15 +0000
committerTom Lane2002-08-19 00:40:15 +0000
commitf4ad5e8d184fd6e0527fd2bea5ac141d5d8ccf17 (patch)
tree81d9c76a5616658e8ee1a676056e9dd008578800
parent5f6a27f8f9421f59fd66074d994784733da0294a (diff)
Clean up leftover bugs from recent COPY feature patch --- missed
required changes to copyfuncs/equalfuncs.
-rw-r--r--src/backend/commands/copy.c4
-rw-r--r--src/backend/nodes/copyfuncs.c3
-rw-r--r--src/backend/nodes/equalfuncs.c4
-rw-r--r--src/include/nodes/parsenodes.h4
4 files changed, 9 insertions, 6 deletions
diff --git a/src/backend/commands/copy.c b/src/backend/commands/copy.c
index 890ef6f6768..afe08a74a69 100644
--- a/src/backend/commands/copy.c
+++ b/src/backend/commands/copy.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.163 2002/08/15 16:36:02 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.164 2002/08/19 00:40:14 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -1513,7 +1513,7 @@ CopyGetAttnums(Relation rel, List *attnamelist)
foreach(l, attnamelist)
{
- char *name = strVal(lfirst(l));
+ char *name = ((Ident *) lfirst(l))->name;
int attnum;
/* Lookup column name, elog on failure */
diff --git a/src/backend/nodes/copyfuncs.c b/src/backend/nodes/copyfuncs.c
index a989d700642..59bc6895235 100644
--- a/src/backend/nodes/copyfuncs.c
+++ b/src/backend/nodes/copyfuncs.c
@@ -15,7 +15,7 @@
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/nodes/copyfuncs.c,v 1.202 2002/08/19 00:11:53 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/nodes/copyfuncs.c,v 1.203 2002/08/19 00:40:14 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -2016,6 +2016,7 @@ _copyCopyStmt(CopyStmt *from)
CopyStmt *newnode = makeNode(CopyStmt);
Node_Copy(from, newnode, relation);
+ Node_Copy(from, newnode, attlist);
newnode->is_from = from->is_from;
if (from->filename)
newnode->filename = pstrdup(from->filename);
diff --git a/src/backend/nodes/equalfuncs.c b/src/backend/nodes/equalfuncs.c
index ae79501ae4c..60b6d2d3b16 100644
--- a/src/backend/nodes/equalfuncs.c
+++ b/src/backend/nodes/equalfuncs.c
@@ -20,7 +20,7 @@
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/nodes/equalfuncs.c,v 1.151 2002/08/19 00:11:53 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/nodes/equalfuncs.c,v 1.152 2002/08/19 00:40:14 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -801,6 +801,8 @@ _equalCopyStmt(CopyStmt *a, CopyStmt *b)
{
if (!equal(a->relation, b->relation))
return false;
+ if (!equal(a->attlist, b->attlist))
+ return false;
if (a->is_from != b->is_from)
return false;
if (!equalstr(a->filename, b->filename))
diff --git a/src/include/nodes/parsenodes.h b/src/include/nodes/parsenodes.h
index 8c356a55976..14d4126bbed 100644
--- a/src/include/nodes/parsenodes.h
+++ b/src/include/nodes/parsenodes.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: parsenodes.h,v 1.199 2002/08/15 16:36:07 momjian Exp $
+ * $Id: parsenodes.h,v 1.200 2002/08/19 00:40:15 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -869,7 +869,7 @@ typedef struct CopyStmt
{
NodeTag type;
RangeVar *relation; /* the relation to copy */
- List *attlist;
+ List *attlist; /* List of Ident nodes, or NIL for all */
bool is_from; /* TO or FROM */
char *filename; /* if NULL, use stdin/stdout */
List *options; /* List of DefElem nodes */