Search Postgresql Archives

Re: In processing DDL, when does pg_catalog get updated?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



"Ken Winter" <ken@xxxxxxxxxxx> writes:
> My question is: Why didn't the chunk of "gen_sequences" code that consults
> pg_catalog find a record of "e_mail_address_invisible_id_seq", and thereby
> refrain from trying to create it again?

I added a few "raise notice" commands to your function, and got this:

NOTICE:  sub_idcol = invisible_id
NOTICE:  default_exp = nextval('public.e_mail_address_invisible_id_seq'::text)
NOTICE:  sequence_name = public.e_mail_address_invisible_id_seq
NOTICE:  not found
NOTICE:  sub_idcol = pop_id
NOTICE:  default_exp = nextval('pop_seq'::text)
NOTICE:  sequence_name = pop_seq
NOTICE:  found
ERROR:  relation "e_mail_address_invisible_id_seq" already exists
CONTEXT:  SQL statement "CREATE SEQUENCE public.e_mail_address_invisible_id_seq;"
PL/pgSQL function "gen_sequences" line 51 at execute statement

The problem seems to be that you're not accounting for a schema name
possibly appearing in nextval's argument.

			regards, tom lane


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux