Thread: Re: [COMMITTERS] pgsql: Avoid locale dependency in expected output.

Re: [COMMITTERS] pgsql: Avoid locale dependency in expected output.

From
Peter Eisentraut
Date:
> Avoid locale dependency in expected output.
> 
> We'll have to settle for just listing the extensions' data types,
> since function arguments seem to sort differently in different locales.
> Per buildfarm results.

This could probably be worked around by using COLLATE "C" in psql \df
and \do.  That would probably make sense, because the argument types are
by themselves of type "name", so a list of them should perhaps sort like
"name" as well.



Re: [COMMITTERS] pgsql: Avoid locale dependency in expected output.

From
Tom Lane
Date:
Peter Eisentraut <peter_e@gmx.net> writes:
>> Avoid locale dependency in expected output.
>> 
>> We'll have to settle for just listing the extensions' data types,
>> since function arguments seem to sort differently in different locales.
>> Per buildfarm results.

> This could probably be worked around by using COLLATE "C" in psql \df
> and \do.  That would probably make sense, because the argument types are
> by themselves of type "name", so a list of them should perhaps sort like
> "name" as well.

I did consider that, but the PITA factor looked too large.  Currently
the SQL code is like 'ORDER BY 1,2,4'.  We can't do '4 COLLATE "C"'
for syntactical reasons, so we'd have to repeat the column expression.
There's also the fact that psql couldn't use COLLATE with a pre-9.1
server.  So I wasn't going to propose that just to make a regression
test a bit more complete.

OTOH, if people think that locale-independent ordering of the results
is a good thing in itself, maybe it's worth the trouble.
        regards, tom lane