| From: | Marc Cousin <cousinmarc(at)gmail(dot)com> |
|---|---|
| To: | Jaime Casanova <jaime(at)2ndquadrant(dot)com> |
| Cc: | pgsql-hackers(at)postgresql(dot)org |
| Subject: | Re: Review: rollback sequence reset for TRUNCATE ... RESTART IDENTITY |
| Date: | 2010-11-17 15:00:46 |
| Message-ID: | 201011171600.47254.cousinmarc@gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
The Wednesday 17 November 2010 15:50:36, Jaime Casanova wrote :
> On Wed, Nov 17, 2010 at 8:13 AM, Marc Cousin <cousinmarc(at)gmail(dot)com> wrote:
> > - Does the feature work as advertised?
> >
> > Yes. It works consistently, isn't fooled by savepoints or multiple
> > serials in a table, or concurrent transactions
>
> i haven't tested this nor readed the patch but i wondering what
> happens in the presence of a prepared transaction (2PC), did you try
> with concurrent transactions with different serialization levels?
I haven't tested with 2PC.
I didn't check with different isolations levels either.
I just verified that locking was happening as it should : truncate is blocked
by a transaction already locking the table with an AccessShareLock and vice-
versa.
And that Rollbacking and rollbacking to savepoint restores the sequence to the
correct state : the sequence isn't restored to its value at the savepoint, but
at its last value before the truncate.
I don't see a special test-case with different isolation levels or 2PC. What
do you have in mind ?
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2010-11-17 15:11:51 | Re: unlogged tables |
| Previous Message | Jaime Casanova | 2010-11-17 14:50:36 | Re: Review: rollback sequence reset for TRUNCATE ... RESTART IDENTITY |