Vik Fearing <vik.fearing@2ndquadrant.com> writes:
> On 25/08/2019 18:59, Tom Lane wrote:
>> Vik Fearing <vik.fearing@2ndquadrant.com> writes:
>>> Is there a reason why the serial pseudotypes still behave as they did
>>> pre-v10 and don't map to GENERATED BY DEFAULT AS IDENTITY these days?
>> Backwards compatibility?
> With what?
Applications that expect declaring a serial column to result in the same
catalog side-effects as before. The default expressions look different,
and the dependencies look different. For instance, an app that expected
atthasdef to tell it something about what happens when a column's value
is omitted would be surprised. An app that thought it could alter the
default expression for a column originally declared serial would be even
more surprised.
Admittedly, many of these things look a lot like the sort of system
catalog changes we make routinely and expect applications to cope.
But I don't think this would be a cost-free change. Serials have acted
the way they do for a pretty long time.
regards, tom lane