On Fri, Jul 13, 2012 at 12:00:14PM +0000, daniele.varra...@gmail.com wrote:
> The following bug has been logged on the website:
> 
> Bug reference:      6734
> Logged by:          Daniele Varrazzo
> Email address:      daniele.varra...@gmail.com
> PostgreSQL version: 9.1.4
> Operating system:   Linux
> Description:        
> 
> Weird, isn't it? Test case below. 
> 
> Dropping the comment, the create table command works as expected. The
> command fails with an: "ERROR: relation "foo2_f1_idx" already exists".
The comments on chooseIndexName in src/backend/parser/parse_utilcmd.c say:

* XXX this is inherently broken because the indexes aren't created
* immediately, so we fail to resolve conflicts when the same name is
* derived for multiple indexes.

Which looks like the case here. So it seems like
chooseIndexName/ChooseIndexName might need to take a list of any indexes
names that have already been created to avoid this.

> 
> begin;
> 
> CREATE TABLE foo
> (
>   id serial primary key,
>   f1 integer NOT NULL
> );
> 
> 
> CREATE INDEX foo_idx1 ON foo (f1);
> 
> CREATE INDEX foo_idx2 ON foo (f1) WHERE id > 10;
> 
> COMMENT ON INDEX foo_idx2 IS 'whatever';
> 
> create table foo2 (like foo including all);
> 
> rollback;
> 
> 
> 
> -- 
> Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-bugs

-Ryan Kelly

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

Reply via email to