Search Postgresql Archives

Re: alter table schema, default sequences stay the same

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

 



Sim Zacks <sim@xxxxxxxxxxxxxx> writes:
>> I haven't consumed enough caffeine today to recall the details, but
>> I think you could have ended up with default expressions like the above
>> if the database had been dumped and reloaded from 8.0 or earlier.
>> nextval(regclass) was introduced in 8.1 precisely to solve this type
>> of problem.

> My first database was an 8.0 and at some point we upgraded to 8.2 so
> that must have caused the ?corruption?

Yeah, that would fit.  The upgrade process was intentionally designed to
work that way, because the pre-8.1 behavior of DEFAULT nextval('foo')
was that it always referred to the sequence currently named foo, because
'foo' was just a text constant.  We didn't want to risk breaking things
for anyone who was depending on that behavior.  But now you have to
explicitly put in ::text if that's how you want it to behave ---
otherwise you get a regclass constant, which will track the original
sequence's identity despite renamings.

			regards, tom lane

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


[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