BUG #6685: Concurrency fault in create table

Started by Mark Thorntonalmost 14 years ago4 messagesbugs
Jump to latest
#1Mark Thornton
mthornton@optrak.com

The following bug has been logged on the website:

Bug reference: 6685
Logged by: Mark Thornton
Email address: mthornton@optrak.com
PostgreSQL version: 9.1.4
Operating system: Ubuntu 12.04
Description:

Executing
create table child_a () inherits (parent)
create table child_b () inherits (parent)

concurrently (two separate connections) results in an error "concurrent
tuple update".

Postgres should be responsible for serializing updates to the shared
resource (whatever it is).

#2Craig Ringer
craig@2ndquadrant.com
In reply to: Mark Thornton (#1)
Re: BUG #6685: Concurrency fault in create table

On 06/10/2012 06:25 PM, mthornton@optrak.com wrote:

The following bug has been logged on the website:

Bug reference: 6685
Logged by: Mark Thornton
Email address: mthornton@optrak.com
PostgreSQL version: 9.1.4
Operating system: Ubuntu 12.04
Description:

Executing
create table child_a () inherits (parent)
create table child_b () inherits (parent)

concurrently (two separate connections) results in an error "concurrent
tuple update".

Please copy and paste the full error message.

Which application are you using? psql directly? Something else?

--
Craig Ringer

#3Tom Lane
tgl@sss.pgh.pa.us
In reply to: Mark Thornton (#1)
Re: BUG #6685: Concurrency fault in create table

mthornton@optrak.com writes:

The following bug has been logged on the website:
Bug reference: 6685
Logged by: Mark Thornton
Email address: mthornton@optrak.com
PostgreSQL version: 9.1.4
Operating system: Ubuntu 12.04
Description:

Executing
create table child_a () inherits (parent)
create table child_b () inherits (parent)

concurrently (two separate connections) results in an error "concurrent
tuple update".

You sure that's a 9.1 server? I can reproduce such an error in older
releases, but not 9.1.

I believe the relevant fix is
http://git.postgresql.org/gitweb/?p=postgresql.git&a=commitdiff&h=fbcf4b92aa64d4577bcf25925b055316b978744a
As noted there, the change wasn't back-patched for fear that the
stronger lock on the parent table might be an undesirable behavioral
change for some applications.

regards, tom lane

#4Mark Thornton
mthornton@optrak.com
In reply to: Tom Lane (#3)
Re: BUG #6685: Concurrency fault in create table

On 10/06/12 22:08, Tom Lane wrote:

mthornton@optrak.com writes:

The following bug has been logged on the website:
Bug reference: 6685
Logged by: Mark Thornton
Email address: mthornton@optrak.com
PostgreSQL version: 9.1.4
Operating system: Ubuntu 12.04
Description:
Executing
create table child_a () inherits (parent)
create table child_b () inherits (parent)
concurrently (two separate connections) results in an error "concurrent
tuple update".

You sure that's a 9.1 server? I can reproduce such an error in older
releases, but not 9.1.

Ah, now I come to think of it, I do have more than one version here.
I'll recheck which one shows the problem.

Mark