psql and pg_dump using obselete copy commands
Should psql and pg_dump be upgraded to use the new v3 protocol copy
functions if they are available, as they are currently using the
deprecated API.
Chris
Christopher Kings-Lynne wrote:
Should psql and pg_dump be upgraded to use the new v3 protocol copy
functions if they are available, as they are currently using the
deprecated API.
We have been telling people to use newer pg_dump's on older servers, but
we only support reloading into the current PostgreSQL version, so I see
no reason not to updated it to the current syntax.
We added the new syntax in 7.3.
Added to TODO:
o Update pg_dump to use the newer COPY syntax
--
Bruce Momjian | http://candle.pha.pa.us
pgman@candle.pha.pa.us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
We have been telling people to use newer pg_dump's on older servers, but
we only support reloading into the current PostgreSQL version, so I see
no reason not to updated it to the current syntax.We added the new syntax in 7.3.
Added to TODO:
o Update pg_dump to use the newer COPY syntax
I think you misunderstood me - all I think we should do is switch to
using PQgetCopyData instead of PQgetline (deprecated) if the libpq
pg_dump is built against has it. (And the protocol supports it.)
Same for PQputCopyData vs. PQputline.
Chris
Christopher Kings-Lynne wrote:
We have been telling people to use newer pg_dump's on older servers, but
we only support reloading into the current PostgreSQL version, so I see
no reason not to updated it to the current syntax.We added the new syntax in 7.3.
Added to TODO:
o Update pg_dump to use the newer COPY syntax
I think you misunderstood me - all I think we should do is switch to
using PQgetCopyData instead of PQgetline (deprecated) if the libpq
pg_dump is built against has it. (And the protocol supports it.)Same for PQputCopyData vs. PQputline.
Oh, if we do that, do we disallow connecting to older servers?
TODO item removed.
--
Bruce Momjian | http://candle.pha.pa.us
pgman@candle.pha.pa.us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
Oh, if we do that, do we disallow connecting to older servers?
Not at all, since the logic would be like this:
if we have new copy functions
and we have protocol version function
and protocol version >= 3
then use new copy functions
else
use old copy functions
That would be even simpler if someone would answer my question about the
new copy functions working on a pre v3 server. (I'm setting up to test
that atm)
Chris
Christopher Kings-Lynne wrote:
Oh, if we do that, do we disallow connecting to older servers?
Not at all, since the logic would be like this:
if we have new copy functions
and we have protocol version function
and protocol version >= 3
then use new copy functions
else
use old copy functionsThat would be even simpler if someone would answer my question about the
new copy functions working on a pre v3 server. (I'm setting up to test
that atm)
I just talked to Christopher via IM. He says the new fuctions work with
older server, and pg_dump always uses the libpq version that shipped
with that version (or a newer one) so we have for TODO added:
o Update pg_dump and psql to use the new COPY libpq API
--
Bruce Momjian | http://candle.pha.pa.us
pgman@candle.pha.pa.us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073