Re: Set COLLATE on a session level - Mailing list pgsql-general

From Laurenz Albe
Subject Re: Set COLLATE on a session level
Date
Msg-id 03ede77a49f4e8085d885e0dc1c66128ebed8e27.camel@cybertec.at
Whole thread Raw
In response to Re: Set COLLATE on a session level  (Peter Eisentraut <peter.eisentraut@enterprisedb.com>)
Responses Re: Set COLLATE on a session level  (Dirk Mika <Dirk.Mika@mikatiming.de>)
List pgsql-general
On Sat, 2020-12-05 at 13:12 +0100, Peter Eisentraut wrote:
> On 2020-12-04 17:18, Tom Lane wrote:
> > > There is a SET COLLATION command in the SQL standard that does this.
> > > Someone just has to implement it.  It wouldn't be terribly difficult, I
> > > think.
> > 
> > [ squint... ]  Just because it's in the standard doesn't mean it's a
> > good idea.  It sounds like this is morally equivalent to a GUC that
> > changes query semantics.  We have learned painfully that such behaviors
> > are best avoided, because they break things you didn't expect to break.
> 
> I think it would be analogous to the schema search path.

Usually you notice right away if the "search_path" is wrong, because
relations won't be found.

But with a bad collation set in a session, the problems would be more
subtle. For example, if someone asks you why an index isn't used to
support sorting, you'd always have to remember to ask what collation
has been set in the session.

Yours,
Laurenz Albe




pgsql-general by date:

Previous
From: "David G. Johnston"
Date:
Subject: Re: Using a boolean column with IF / THEN
Next
From: 孙冰
Date:
Subject: The hidden cost of limit-offset