Re: BUG #18711: Attempting a connection with a database name longer than 63 characters now fails
Bruce Momjian <bruce@momjian.us>
From: Bruce Momjian <bruce@momjian.us>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Thomas Munro <thomas.munro@gmail.com>, Bertrand Drouvot <bertranddrouvot.pg@gmail.com>, Nathan Bossart <nathandbossart@gmail.com>, adam@labkey.com, pgsql-bugs@lists.postgresql.org
Date: 2024-12-02T23:37:47Z
Lists: pgsql-bugs
On Mon, Dec 2, 2024 at 06:16:19PM -0500, Tom Lane wrote: > Bruce Momjian <bruce@momjian.us> writes: > > I am concerned we are going to get a lot of complaints about this > > restricted change because most people are happily using whatever > > encoding they want, and as long as they don't hit the 64-byte limit, > > they are fine. Are people going to be happy with this restriction just > > to keep 64+-byte identifiers safe? > > That's a remarkably rose-tinted view of the current state of affairs. > Reality is that using multiple encodings in shared catalogs just plain > doesn't work very well. Even something as simple as "select datname > from pg_database" is likely to give garbage if there are entries in > encodings that don't match your current database's encoding. What > Thomas is proposing is to formalize and then enforce the two usage > patterns that we know work okay. > > Moreover, the proposal also includes a third backwards-compatibility > mode that will let anyone who does like the current approach to keep > using it. So I'm unclear on why you think there's a big downside. I have not heard of anyone complaining about the problem of viewing the shared catalog columns so I didn't consider that benefit. -- Bruce Momjian <bruce@momjian.us> https://momjian.us EDB https://enterprisedb.com When a patient asks the doctor, "Am I going to die?", he means "Am I going to die soon?"
Commits
-
Revert "Don't truncate database and user names in startup packets."
- d09fbf645ece 17.3 landed
- a0ff56e2d3ff 18.0 landed
-
Don't truncate database and user names in startup packets.
- 562bee0fc13d 17.0 cited
-
Truncate incoming username and database name to NAMEDATALEN-1 characters
- d18c1d1f5102 7.1.1 cited