From: Frank Heikens <frankheikens@mac.com>
To: scorpdaddy@hotmail.com <scorpdaddy@hotmail.com>
Cc: pgsql-admin@postgresql.org <pgsql-admin@postgresql.org>
Subject: Re: sequence numbers under pg concurrence model
Date: Thu, 24 Feb 2011 20:54:53 +0100
Message-ID: <1BFCE64D-F2CD-40DF-BAAA-EECDA5FC3F5D@mac.com> (raw)
In-Reply-To: <BLU0-SMTP1820FE6B2BC38FE48BB45D0CEDA0@phx.gbl>
References: <BLU0-SMTP1820FE6B2BC38FE48BB45D0CEDA0@phx.gbl>
Op 24 feb 2011, om 20:49 heeft scorpdaddy@hotmail.com het volgende
geschreven:
> What is the expected behaviour of sequence numbers under pg
> concurrence model?
From the manual:
Important: To avoid blocking concurrent transactions that obtain
numbers from the same sequence, a nextval operation is never rolled
back; that is, once a value has been fetched it is considered used,
even if the transaction that did the nextval later aborts. This means
that aborted transactions might leave unused "holes" in the sequence
of assigned values. setval operations are never rolled back, either.
http://www.postgresql.org/docs/current/static/functions-sequence.html> E.g. Uncommitted transaction 1 in progress has inserted 5 tuples
> into table foo. Meanwhile uncommitted transaction 2 in progress
> inserts 100 tuples into table foo. If the sequence number for the
> pk started at 1000 before these transactions, what are the sequence
> numbers for transaction 1, 2, and the final sequence number if they
> both commit? One rollback's? Both rollback? One hangs open while
> the other commits? One hang and one rollback's?
>
Frank Heikens
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-admin@postgresql.org
Cc: frankheikens@mac.com, scorpdaddy@hotmail.com
Subject: Re: sequence numbers under pg concurrence model
In-Reply-To: <1BFCE64D-F2CD-40DF-BAAA-EECDA5FC3F5D@mac.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox