Subject: Re: PG-15.6: timeout parameters erroring out

From: Mukesh Tanuku <[email-masked]>
Date: Mon, 10 Feb 2025 16:06:36 +0530

Thanks for your quick responses.

I have just added the session related timeout parameters in the
postgresql.conf file also tried tweaking with different values/patterns
like ('1min', '1 min', 80000, 10s, '10s', '10 s')

but i get an immediate error after reloading the configuration file.

*postgres.log file*
2025-02-10 10:27:10.748 GMT [934108] LOG:  received SIGHUP, reloading
configuration files
2025-02-10 10:27:10.749 GMT [934108] LOG:  parameter
"idle_in_transaction_session_timeout" changed to "80000"
2025-02-10 10:27:16.117 GMT [2531150] ERROR:  trailing junk after numeric
literal at or near "80s" at character 43
2025-02-10 10:27:16.117 GMT [2531150] STATEMENT:  SET
idle_in_transaction_session_timeout = 80s

though we are not firing any SQL statements explicitly we see this error.

i guess something else is the issue other than spacing.

Regards
Mukesh Tanuku

On Mon, Feb 10, 2025 at 10:38 AM David G. Johnston <
[email-masked]> wrote:

> On Sunday, February 9, 2025, Tom Lane <[email-masked]> wrote:
>
>> Mukesh Tanuku <[email-masked]> writes:
>> > We unabled the postgres timeout parameters in the postgresql.conf file
>>
>> > *idle_in_transaction_session_timeout = '1min'idle_session_timeout =
>> '5min'*
>>
> Did you actually run them together on one line like that?
>
>
>>
> I think that is an email client artifact, dealing with RTF or something.
>
> I do agree too much is missing here.  The only known errors involve SET
> which configuration file settings don’t use.  And those errors are indeed
> the lack of quoting.
>
> The lack of space I mentioned earlier, in the config text literal, is fine.
>
> David J.
>
>

---

From: rob stone <[email-masked]>
Date: Mon, 10 Feb 2025 23:39:12 +1100

On Mon, 2025-02-10 at 16:06 +0530, Mukesh Tanuku wrote:
> postgresql.conf file also tried tweaking with different
> values/patterns like ('1min', '1 min', 80000, 10s, '10s', '10 s')
> 
> postgres.log file
> 2025-02-10 10:27:16.117 GMT [2531150] ERROR:  trailing junk after
> numeric literal at or near "80s" at character 43

I'd say that 934108 is the config file reload and that 2531150 is from
somebody running psql from a shell or SQL code coming out from an
application.

---

From: Mukesh Tanuku <[email-masked]>
Date: Mon, 10 Feb 2025 19:04:12 +0530

Thanks for clarifying, got it.
Is this issue specifically reported in only the PG 15 version? more syntax
sensitivity.

---

From: Mukesh Tanuku <[email-masked]>
Date: Mon, 10 Feb 2025 19:06:00 +0530

I see there is some open PR in awx-operator (
https://github.com/ansible/awx/issues/15406) which is related to this. AWX
is connected to DB in my case.

---

From: Tom Lane <[email-masked]>
Date: Mon, 10 Feb 2025 11:00:57 -0500

> Is this issue specifically reported in only the PG 15 version? more syntax

PG 15 and up report the syntax error differently.

regression=# set foo = 15min;
ERROR:  trailing junk after numeric literal at or near "15min"
LINE 1: set foo = 15min;
                  ^

In v14 that'd look like

regression=# set foo = 15min;
ERROR:  syntax error at or near "min"
LINE 1: set foo = 15min;
                    ^

There are variants of this (lack of space between a number and an
identifier) that will be rejected by 15+ although older versions
accepted them.  But in a SET command I think no version will take it.

			regards, tom lane

---

From: Mukesh Tanuku <[email-masked]>
Date: Mon, 10 Feb 2025 21:38:45 +0530

Thanks for all of you for responding and clarifying things. Really
appreciate it.

We finally confirmed that it is a SET command issue where the AWX
application is firing the query without quotes and it's a known bug from
their end.

Thank you once again.
Regards
Mukesh Tanuku