Bradley Kieser wrote:
> Hi Michael,
>
> But what if another insert happens in the mean time? Then the sequence
> would have advanced that the data will be scrambled. |Given that this
> could be a very active dataset, that situation is almost certain to occur.
>
I think you are wrong, the sequence are not affected by transactions ( on rollback
the serial is not rolledback ), but however the value are isolated between transactions.
I don't see the problem:
#section1
begin;
insert into test (b) values ( 1 );
#section2
begin;
insert into test (b) values ( 1 );
#section1
select currval('test_a_seq'); <==== give 1
#section2
select currval('test_a_seq'); <==== give 2
Regards
Gaetano Mendola