> 在 2023年12月23日,11:35,Junwang Zhao <zhjw...@gmail.com> 写道: > > On Sat, Dec 23, 2023 at 11:17 AM Japin Li <japi...@hotmail.com> wrote: >> >> a >>> On Sat, 23 Dec 2023 at 10:40, Japin Li <japi...@hotmail.com> wrote: >>> On Sat, 23 Dec 2023 at 08:32, Japin Li <japi...@hotmail.com> wrote: >>>> On Fri, 22 Dec 2023 at 23:30, Junwang Zhao <zhjw...@gmail.com> wrote: >>>>> On Fri, Dec 22, 2023 at 10:44 PM Japin Li <japi...@hotmail.com> wrote: >>>>>> >>>>>> >>>>>> On Fri, 22 Dec 2023 at 22:37, Junwang Zhao <zhjw...@gmail.com> wrote: >>>>>>> On Fri, Dec 22, 2023 at 10:25 PM Japin Li <japi...@hotmail.com> wrote: >>>>>>>> I try to set idle_in_transaction_session_timeout after begin >>>>>>>> transaction, >>>>>>>> it changes immediately, so I think transaction_timeout should also be >>>>>>>> take >>>>>>>> immediately. >>>>>>> >>>>>>> Ah, right, idle_in_transaction_session_timeout is set after the set >>>>>>> command finishes and before the backend send *ready for query* >>>>>>> to the client, so the value of the GUC is already set before >>>>>>> next command. >>>>>>> >>>>>> >>>>>> I mean, is it possible to set transaction_timeout before next comand? >>>>>> >>>>> Yeah, it's possible, set transaction_timeout in the when it first >>>>> goes into *idle in transaction* mode, see the attached files. >>>>> >>>> >>>> Thanks for updating the patch, LGTM. >>> >>> Sorry for the noise! >>> >>> Read the previous threads, I find why the author enable transaction_timeout >>> in start_xact_command(). >>> >>> The v15 patch cannot handle COMMIT AND CHAIN, see [1]. For example: >>> >>> SET transaction_timeout TO '2s'; BEGIN; SELECT 1, pg_sleep(1); COMMIT AND >>> CHAIN; SELECT 2, pg_sleep(1); COMMIT; >>> >>> The transaction_timeout do not reset when executing COMMIT AND CHAIN. >>> >>> [1] >>> https://www.postgresql.org/message-id/a906dea1-76a1-4f26-76c5-a7efad3ef5b8%40oss.nttdata.com >> >> Attach v16 to solve this. Any suggestions? > > I've checked this with *COMMIT AND CHAIN* and *ABORT AND CHAIN*, > both work as expected. Thanks for the update. >
Thanks for your testing and reviewing!