From 3dfec7f73ef3a4e281648f1c0e1a7deaf1850320 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Mon, 3 Oct 2005 23:43:29 +0000 Subject: COPY's test for read-only transaction was backward; it prohibited COPY TO where it should prohibit COPY FROM. Found by Alon Goldshuv. --- src/backend/commands/copy.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/backend/commands/copy.c b/src/backend/commands/copy.c index 79ffac04df0..5db88569636 100644 --- a/src/backend/commands/copy.c +++ b/src/backend/commands/copy.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/commands/copy.c,v 1.236.4.1 2005/05/13 06:35:25 neilc Exp $ + * $PostgreSQL: pgsql/src/backend/commands/copy.c,v 1.236.4.2 2005/10/03 23:43:29 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -900,7 +900,8 @@ DoCopy(const CopyStmt *stmt) rel = heap_openrv(relation, (is_from ? RowExclusiveLock : AccessShareLock)); /* check read-only transaction */ - if (XactReadOnly && !is_from && !isTempNamespace(RelationGetNamespace(rel))) + if (XactReadOnly && is_from && + !isTempNamespace(RelationGetNamespace(rel))) ereport(ERROR, (errcode(ERRCODE_READ_ONLY_SQL_TRANSACTION), errmsg("transaction is read-only"))); -- cgit v1.2.3