Обсуждение: BUG #5494: pg_dump dependiences sequence problem

Поиск
Список
Период
Сортировка

BUG #5494: pg_dump dependiences sequence problem

От
"Ovidiu Tanasiciuc"
Дата:
The following bug has been logged online:

Bug reference:      5494
Logged by:          Ovidiu Tanasiciuc
Email address:      tanasiciuc@yahoo.com
PostgreSQL version: 8.4.1
Operating system:   Windows XP
Description:        pg_dump dependiences sequence problem
Details:

I have 2 tables a and b
a have column id - bigserial
b have column Id - bigserial with I uppercase
both automatic have 2 sequences
the problem is then i make pg_dump with data only and insert command,even
like or from pgadmin
E:/Programe/PostgreSQL/8.4/bin\pg_dump.exe --host servercnp --port 5432
--username postgres --format plain --data-only --column-inserts --verbose
--file "C:\Users\ovidiu\Desktop\x.sql" --table public.a secretariat

the table a.sql file have the line
SELECT pg_catalog.setval('a_id_seq', 4392, false);
but the tabel b doesn't have this line.

this is a bug because it's mean tha pg_depend doesn't read ok dependiences
for columns with uppercase character.

my problem is that i like to make a backup without command set sequences,but
i can't find any parameters for this.

Anyway, even if is corect to make backup with set seuences includes, please
make to work and for columns uppercases.

Re: BUG #5494: pg_dump dependiences sequence problem

От
Tom Lane
Дата:
"Ovidiu Tanasiciuc" <tanasiciuc@yahoo.com> writes:
> I have 2 tables a and b
> a have column id - bigserial
> b have column Id - bigserial with I uppercase
> both automatic have 2 sequences
> the problem is then i make pg_dump with data only and insert command,even
> like or from pgadmin
> E:/Programe/PostgreSQL/8.4/bin\pg_dump.exe --host servercnp --port 5432
> --username postgres --format plain --data-only --column-inserts --verbose
> --file "C:\Users\ovidiu\Desktop\x.sql" --table public.a secretariat

> the table a.sql file have the line
> SELECT pg_catalog.setval('a_id_seq', 4392, false);
> but the tabel b doesn't have this line.

Are you looking carefully?  It would actually look like

SELECT pg_catalog.setval('"b_Id_seq"', something, false);

Another likely theory is that you didn't actually make the column "Id"
as a serial, but tried to attach a sequence to it manually.  In that
case I'd guess you forgot the ALTER SEQUENCE OWNED BY step.

            regards, tom lane