Re: BUG #16035: STATEMENT_TIMEOUT not working when we have singlequote usage inside CTE which is used in inner sql
От | Tatsuo Ishii |
---|---|
Тема | Re: BUG #16035: STATEMENT_TIMEOUT not working when we have singlequote usage inside CTE which is used in inner sql |
Дата | |
Msg-id | 20191021.140217.112252720388603202.t-ishii@sraoss.co.jp обсуждение исходный текст |
Ответ на | Re: BUG #16035: STATEMENT_TIMEOUT not working when we have singlequote usage inside CTE which is used in inner sql (Tatsuo Ishii <ishii@sraoss.co.jp>) |
Ответы |
Re: BUG #16035: STATEMENT_TIMEOUT not working when we have single quote usage inside CTE which is used in inner sql
|
Список | pgsql-bugs |
If there's no objection, I would like to commit/push the diff. > I admit v11's current behavior is inconstant, but I am not sue going > to back V10's behavior is a good idea. > > With attached patch (against master), SET STATEMENT_TIMEOUT > immediately affects to subsequent commands in the multi statement. I > think this is not only more intuitive than v10's behavior but it meets > the original reporter's expectation. > > SET STATEMENT_TIMEOUT = '10s'; > SET > Time: 0.418 ms > -- SELECT timeout in 1 second. > SET STATEMENT_TIMEOUT = '1s'\;SELECT * FROM ( WITH test AS ( SELECT pg_sleep(5), 'Billy' as emp_name ) SELECT 1 FROM test) AS sub; > ERROR: canceling statement due to statement timeout > Time: 1001.107 ms (00:01.001) > > Here are results of test cases attached (statement_timeout.sql). > > \timing > Timing is on. > -- SELECT timeout in 1 second. > SET STATEMENT_TIMEOUT = '1s'\;SELECT * FROM ( WITH test AS ( SELECT pg_sleep(5), 'Billy' as emp_name ) SELECT 1 FROM test) AS sub; > psql:/home/t-ishii/tmp/statement_timeout.sql:3: ERROR: canceling statement due to statement timeout > Time: 1001.138 ms (00:01.001) > SET STATEMENT_TIMEOUT = '10s'; > SET > Time: 0.434 ms > -- SELECT timeout in 1 second. > SET STATEMENT_TIMEOUT = '1s'\;SELECT * FROM ( WITH test AS ( SELECT pg_sleep(5), 'Billy' as emp_name ) SELECT 1 FROM test) AS sub; > psql:/home/t-ishii/tmp/statement_timeout.sql:7: ERROR: canceling statement due to statement timeout > Time: 1000.978 ms (00:01.001) > -- This time SELECT succeeds and STATEMENT_TIMEOUT is set to 8 secinds. > SET STATEMENT_TIMEOUT = '8s'\;SELECT * FROM ( WITH test AS ( SELECT pg_sleep(5), 'Billy' as emp_name ) SELECT 1 FROM test) AS sub; > ?column? > ---------- > 1 > (1 row) > > Time: 5004.886 ms (00:05.005) > SHOW STATEMENT_TIMEOUT; > statement_timeout > ------------------- > 8s > (1 row) > > Time: 0.433 ms > -- Following SELECT succeeds because now statement_timeout value is 8 seconds.. > SELECT * FROM ( WITH test AS ( SELECT pg_sleep(5), 'Billy' as emp_name ) SELECT 1 FROM test ) AS sub; > ?column? > ---------- > 1 > (1 row) > > Time: 5006.196 ms (00:05.006)
В списке pgsql-bugs по дате отправления: