From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | "Bill Moran" <wmoran(at)collaborativefusion(dot)com> |
Cc: | pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: BUG #3692: Conflicting create table statements throw unexpected error |
Date: | 2007-10-22 21:44:59 |
Message-ID: | 26493.1193089499@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
"Bill Moran" <wmoran(at)collaborativefusion(dot)com> writes:
> Issuing a statement like:
> CREATE TABLE table2 AS SELECT * FROM table1;
> simultaneously in two separate sessions should result in an error like
> "ERROR: relation "table2" already exists" (in one or the other of the
> sessions, depending on the exact timing of things).
This isn't really fixable, or at least the cure would be worse than the
disease. The "already exists" message is just a pre-check and it cannot
detect an uncommitted concurrent attempt to insert the same table name.
The place where the rubber really meets the road is during unique index
insertion. We might be able to fix things so that you get a unique
index complaint about pg_class.relname instead of pg_type, but that
would be about it.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Bill Moran | 2007-10-23 12:26:16 | Re: BUG #3692: Conflicting create table statements throw unexpected error |
Previous Message | Bill Moran | 2007-10-22 20:37:12 | BUG #3692: Conflicting create table statements throw unexpected error |