Обсуждение: SEQUENCES and COPY FROM

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

SEQUENCES and COPY FROM

От
Mike Embry
Дата:
In the process of upgrading from 6.1 to 6.3.2+patches at long last.
Just bumped into an interesting
problem with sequences.  With 6.1, you could use sequences with COPY
FROM.  This no longer
seems to be true with 6.3.2+patches.  INSERT and UPDATE still work fine
but when using COPY FROM
all sequence fields are either 0 or NULL.

Can live without but curious if it's a bug or feature?  Maybe fixed in
6.4?  Wasn't COPY FROM changed
at the time pg_shadow was added?

Here's the affected schema:

CREATE SEQUENCE history_seq;

CREATE TABLE history (
    gid                   INTEGER,
    state                 TEXT,
    dtin                  DATETIME,
    dtout                DATETIME,
    seqno               INTEGER DEFAULT nextval('history_seq') NOT NULL
);

MikE



Re: [HACKERS] SEQUENCES and COPY FROM

От
Vadim Mikheev
Дата:
Mike Embry wrote:
>
> In the process of upgrading from 6.1 to 6.3.2+patches at long last.
> Just bumped into an interesting
> problem with sequences.  With 6.1, you could use sequences with COPY
> FROM.  This no longer
> seems to be true with 6.3.2+patches.  INSERT and UPDATE still work fine
> but when using COPY FROM
> all sequence fields are either 0 or NULL.
>
> Can live without but curious if it's a bug or feature?  Maybe fixed in
> 6.4?  Wasn't COPY FROM changed
> at the time pg_shadow was added?

Feature...
DEFAULT is for INSERT only (when column was not specified at all)!
Use triggers from contrib/spi/autoinc.* - triggers work
for everything :)

Vadim