Bruce Momjian <pgman@candle.pha.pa.us> writes:
> Hold, I think I see an idea here. We have two cases, those for SERIAL
> and those for manual nextval() in DEFAULT. For SERIAL, we can easily
> map to a nextval(::regclass) call on pg_dump reload. For manual
> nextval, it will appear in the dump as nextval('myseq'::text), and Tom
> is saying that will be late binding.
> I think we can live with SERIAL working fine on reload, and requiring
> users who created a manual default using nextval() to ALTER TABLE
> DROP/SET DEFAULT to remove the ::text marker if they want early binding.
"Removing the ::text marker" isn't going to work, because if we have
both nextval(regclass) and nextval(text) then the latter is going to
capture any cases with an unknown literal.
regards, tom lane