Skip site navigation (1) Skip section navigation (2)

Re: Cannot dump 8.4.8 database using later versions

From: Pavel Golub <pavel(at)microolap(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>, Josh Berkus <josh(at)agliodbs(dot)com>, Bruce Momjian <bruce(at)momjian(dot)us>, <pgsql-bugs(at)postgresql(dot)org>, Pavel Golub <pavel(at)gf(dot)microolap(dot)com>
Subject: Re: Cannot dump 8.4.8 database using later versions
Date: 2011-11-16 07:12:54
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-bugs
Hello, Tom.

You wrote:

TL> Robert Haas <robertmhaas(at)gmail(dot)com> writes:
>> On Tue, Nov 15, 2011 at 5:16 AM, Heikki Linnakangas
>> <heikki(dot)linnakangas(at)enterprisedb(dot)com> wrote:
>>> NEW used to be a reserved keyword, but it's not so in 9.0 anymore. So 9.0
>>> pg_dump thinks it doesn't need to be quoted.

>> Why isn't it correct?

TL> It's correct to not quote it in pg_dump's output (since we make no
TL> promises that such output would load into a pre-9.0 server anyway).
TL> The problem is that it needs to be quoted in commands that pg_dump
TL> sends back to the 8.4 server.  Example:

TL> psql (8.4.9)
TL> You are now connected to database "db84".
TL> db84=# create table "new"( f1 int, "new" text);

TL> ... pg_dump with newer pg_dump ...

TL> pg_dump: SQL command failed
TL> pg_dump: Error message from server: ERROR:  syntax error at or near "new"
TL> LINE 1: COPY (f1, new) TO stdout;
TL>                              ^
TL> pg_dump: The command was: COPY (f1, new) TO stdout;

TL> The least painful solution might be to always quote *every* identifier
TL> in commands sent to the source server, since we don't especially care
TL> how nice-looking those are.

+1 for this. This will prevent such situations in the future.

TL>                         regards, tom lane

With best wishes,
 Pavel                          mailto:pavel(at)gf(dot)microolap(dot)com

In response to

pgsql-bugs by date

Next:From: CNDate: 2011-11-16 08:18:56
Subject: Re: BUG #6294: character 0xefbd9e of encoding "UTF8" has no equivalent in "BIG5"
Previous:From: Tom LaneDate: 2011-11-16 03:04:57
Subject: Re: Cannot dump 8.4.8 database using later versions

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group