Re: invalid value for parameter "client_encoding": "ISO_8859_8" - Mailing list pgsql-admin

From Mariel Cherkassky
Subject Re: invalid value for parameter "client_encoding": "ISO_8859_8"
Date
Msg-id CA+t6e1k9a-DYewONz+V4TQLu1m6pj1E0TwiTUH7=nTJKJT=W+Q@mail.gmail.com
Whole thread Raw
In response to Re: invalid value for parameter "client_encoding": "ISO_8859_8"  (Mariel Cherkassky <mariel.cherkassky@gmail.com>)
Responses Re: invalid value for parameter "client_encoding": "ISO_8859_8"  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-admin
I realized that it happens immediatly when I reload my cluster settings via pg_ctl reload. Immediatly raised the curremt message for every database in my cluster :
2018-07-11 17:17:56 IDTjiradbuserjiradbERROR:  invalid value for parameter "client_encoding": "ISO_8859_8"
2018-07-11 17:17:56 IDTjiradbuserjiradbDETAIL:  Cannot change "client_encoding" now.

What can I check in my postgresql.conf ?

2018-07-04 12:01 GMT+03:00 Mariel Cherkassky <mariel.cherkassky@gmail.com>:
It happens to all the sessions I have to all the databases. In other words, different apps are connected to different databases but I still keep getting those errors. I queried pg_shadow and I didnt see that a specific user has a different client_encoding configured. Moreover, the client_encoding is set to default in postgresql.conf.

What else can I check ? I'm trying to check the if the problem is in the pool as tatsuo suggested but is there anything else that I can check ?

2018-07-01 18:33 GMT+03:00 Tom Lane <tgl@sss.pgh.pa.us>:
Mariel Cherkassky <mariel.cherkassky@gmail.com> writes:
> My postgresql env consist of 3 nodes(9.6 version) and 2 pgpool`s that acts
> as a load balancer. I'm using postgresql as a database for the next apps :
> bitbucket,jira and crowd. However, I'm getting alot of errors in the pgpool
> log about the client_encoding for every connection that comes from one of
> those application :

> invalid value for parameter "client_encoding": "ISO_8859_8"
> Cannot change "client_encoding" now.

[ digs around ... ] The "Cannot change" bit seems to indicate that this
error is coming from check_client_encoding(), and it's failing because
it cannot change client_encoding for an existing session outside a
transaction.  The comment about it is:

     * ... This would only happen if someone tries to change
     * client_encoding in postgresql.conf and then SIGHUP existing sessions.
     * It seems like a bad idea for client_encoding to change that way anyhow,
     * so we don't go out of our way to support it.

I'm not very sure how you'd get into a state where this was affecting
new sessions as well as pre-existing ones, or why it would affect only
some sessions.  Maybe the latter could be explained if all but this one
app explicitly set client_encoding for themselves.

Anyway, I think it's impossible for the client app to trigger this
by itself.  There must be some server-side source of this value,
if not postgresql.conf then maybe ALTER DATABASE/ROLE SET?

                        regards, tom lane

pgsql-admin by date:

Previous
From: Mario De Frutos Dieguez
Date:
Subject: row is too big: size 8168, maximum size 8160
Next
From: Tom Lane
Date:
Subject: Re: invalid value for parameter "client_encoding": "ISO_8859_8"