Re: NAMEDATALEN increase because of non-latin languages

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Andrew Dunstan <andrew(at)dunslane(dot)net>
Cc: Julien Rouhaud <rjuju123(at)gmail(dot)com>, John Naylor <john(dot)naylor(at)enterprisedb(dot)com>, Денис Романенко <deromanenko(at)gmail(dot)com>, alvherre(at)alvh(dot)no-ip(dot)org, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: NAMEDATALEN increase because of non-latin languages
Date: 2021-08-18 16:12:44
Message-ID: 1459083.1629303164@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Andrew Dunstan <andrew(at)dunslane(dot)net> writes:
> On 8/18/21 10:53 AM, Tom Lane wrote:
>> Yeah, it would annoy the heck out of me too. Again there's a potential
>> technical solution, which is to decouple the user-visible column order
>> from the storage order. However, multiple people have tilted at that
>> windmill without much success, so making it a prerequisite for improving
>> the name-length situation doesn't seem like a smart plan.

> There might be other benefits, though. IIRC what we discussed years ago
> was having for each attribute an immutable number (presumably attnum as
> now) and a mutable display order and storage order. Previous patches
> didn't implement this and so were rejected. I think part of the trouble
> is that we'd have to go through roughly 1700 mentions of attnum in the
> source and decide if it's really attnum they want or if it's
> attnum_display_order or attnum_storage_order. So this has the potential
> to be extraordinarily invasive and potentially bug-prone. And then
> there's the world of extensions to consider.

Yeah, exactly: conceptually that's simple, but flushing all the bugs
out would be a years-long nightmare. It'd make all the fun we had
with missed attisdropped checks look like a walk in the park. Unless
somebody can figure out a way to mechanically check for mistakes,
I don't think I want to go there.

I wonder though if we could fix the immediate problem with something
less ambitious. The hard part of the full proposal, I think, is
separating permanent identity from physical position. If we were to
split out *only* the display order from that, the patch footprint
ought to be far far smaller --- basically, I think, we'd need to fix
star-expansion and not a lot more in the backend. Of course,
client-side code like psql's \d and pg_dump would need to be upgraded
too, but any missed things there would be cosmetic that's-not-the-
expected-column-order bugs, not core dumps. Also, at least in the v1
patch we could use this just for system catalogs without exposing it
as a feature for user tables, which would greatly restrict the set of
client-side places that really need fixed.

(I think Alvaro was the last person to mess with this issue, so I
wonder what his take is on the feasibility of such a restricted
solution.)

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Geoghegan 2021-08-18 16:27:57 Re: The Free Space Map: Problems and Opportunities
Previous Message Andrew Dunstan 2021-08-18 15:55:26 Re: NAMEDATALEN increase because of non-latin languages