Re: [GENERAL] spi/timetravel: unique constraint violation on UPDATE - Mailing list pgsql-general

From Tom Lane
Subject Re: [GENERAL] spi/timetravel: unique constraint violation on UPDATE
Date
Msg-id 28981.1500153333@sss.pgh.pa.us
Whole thread Raw
In response to [GENERAL] spi/timetravel: unique constraint violation on UPDATE  (postgresql@get-experience.com)
Responses Re: [GENERAL] spi/timetravel: unique constraint violation on UPDATE  (postgresql@get-experience.com)
List pgsql-general
postgresql@get-experience.com writes:
> I'm having a problem with the timetravel extension. Following simple schema:
> ...
> What am I doing wrong here? According to the function comment in
> timetravel.c it should:
> a) set last-version row to NEW data; valid_from=now()
> b) insert a new row with OLD data; valid_to=now() - at this point the
> old valid_from is already supposed to be updated.

I don't see anywhere in that comment that says "the old valid_from is
already supposed to be updated".  Given that the INSERT of the cloned row
happens during the BEFORE UPDATE trigger, it would take a lot of magic
for things to happen that way ;-).

Perhaps you could make your PK be on (id, valid_from, valid_to).

            regards, tom lane


pgsql-general by date:

Previous
From: postgresql@get-experience.com
Date:
Subject: [GENERAL] spi/timetravel: unique constraint violation on UPDATE
Next
From: postgresql@get-experience.com
Date:
Subject: Re: [GENERAL] spi/timetravel: unique constraint violation on UPDATE