On 2015-05-10 22:51:33 -0400, Robert Haas wrote:
> > And there's definitely some things
> > around that pretty much only still exist because changing them would
> > break too much stuff.
>
> Such as what?
Without even thinking about it:
* linitial vs lfirst vs lnext. That thing still induces an impedance mismatch when reading code for me, and I believe a
goodnumber of other people.
* Two 'string buffer' APIs with essentially only minor differences.
* A whole bunch of libpq APIs. Admittedly that's a bit more exposed than lots of backend only things.
* The whole V0 calling convention that makes it so much easier to get odd crashes.
Admittedly that's all I could come up without having to think. But I do
vaguely remember a lot of things we did not do because of bwcompat
concerns.