COPY and read-only transactions

Lists: pgsql-hackers
From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: pgsql-hackers(at)postgresql(dot)org
Subject: COPY and read-only transactions
Date: 2006-03-30 12:20:04
Message-ID: 200603301420.05736.peter_e@gmx.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

I probably made the original mistake in the code, so I refrain from claiming
to know anything about Boolean logic, but this note in the release notes
doesn't seem right:

Fix the sense of the test for read-only transaction in COPY
The code formerly prohibited COPY TO, where it should prohibit COPY FROM.

???

--
Peter Eisentraut
http://developer.postgresql.org/~petere/


From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Peter Eisentraut <peter_e(at)gmx(dot)net>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: COPY and read-only transactions
Date: 2006-03-30 14:29:26
Message-ID: 14395.1143728966@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Peter Eisentraut <peter_e(at)gmx(dot)net> writes:
> I probably made the original mistake in the code, so I refrain from claiming
> to know anything about Boolean logic, but this note in the release notes
> doesn't seem right:

> Fix the sense of the test for read-only transaction in COPY
> The code formerly prohibited COPY TO, where it should prohibit COPY FROM.

No, it's correct --- the directions are COPY table TO file or COPY table
FROM file. The FROM case is therefore the one that changes the database.

I've always found that directionality nonintuitive, but it's surely far
too late to reverse the sense.

regards, tom lane


From: Martijn van Oosterhout <kleptog(at)svana(dot)org>
To: Peter Eisentraut <peter_e(at)gmx(dot)net>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: COPY and read-only transactions
Date: 2006-03-30 14:30:20
Message-ID: 20060330143020.GB16142@svana.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Thu, Mar 30, 2006 at 02:20:04PM +0200, Peter Eisentraut wrote:
> I probably made the original mistake in the code, so I refrain from claiming
> to know anything about Boolean logic, but this note in the release notes
> doesn't seem right:
>
> Fix the sense of the test for read-only transaction in COPY
> The code formerly prohibited COPY TO, where it should prohibit COPY FROM.

COPY FROM STDIN is copying FROM the user TO the database
COPY TO STDIN is copying TO the user FROM the database

Does that help?

--
Martijn van Oosterhout <kleptog(at)svana(dot)org> http://svana.org/kleptog/
> Patent. n. Genius is 5% inspiration and 95% perspiration. A patent is a
> tool for doing 5% of the work and then sitting around waiting for someone
> else to do the other 95% so you can sue them.