BUG #15492: pg_cancel_backend(pg_backend_pid()) returns truesporadically
От | PG Bug reporting form |
---|---|
Тема | BUG #15492: pg_cancel_backend(pg_backend_pid()) returns truesporadically |
Дата | |
Msg-id | 15492-9b79ce7d1e0687a9@postgresql.org обсуждение исходный текст |
Ответы |
Re: BUG #15492: pg_cancel_backend(pg_backend_pid()) returns true sporadically
|
Список | pgsql-bugs |
The following bug has been logged on the website: Bug reference: 15492 Logged by: Alexander Lakhin Email address: exclusion@gmail.com PostgreSQL version: 11.0 Operating system: Windows 2012 R2 Description: When performing `make standbycheck` I get sporadic failure: ============== running regression test queries ============== test hs_standby_check ... ok test hs_standby_allowed ... ok test hs_standby_disallowed ... ok test hs_standby_functions ... FAILED ====================== 1 of 4 tests failed. ====================== *** C:/tmp/postgrespro-standard-10.6.1/src/test/regress/expected/hs_standby_functions.out Wed Nov 7 01:14:03 2018 --- C:/tmp/postgrespro-standard-10.6.1/src/test/regress/results/hs_standby_functions.out Wed Nov 7 06:36:47 2018 *************** *** 37,40 **** -- suicide is painless select pg_cancel_backend(pg_backend_pid()); ! ERROR: canceling statement due to user request --- 37,44 ---- -- suicide is painless select pg_cancel_backend(pg_backend_pid()); ! pg_cancel_backend ! ------------------- ! t ! (1 row) ! ====================================================================== In fact, I see the same when I just do in psql (using EnterpriseDB's PostgreSQL 11 for Windows): postgres=# select pg_cancel_backend(pg_backend_pid()); ERROR: canceling statement due to user request postgres=# select pg_cancel_backend(pg_backend_pid()); ERROR: canceling statement due to user request postgres=# select pg_cancel_backend(pg_backend_pid()); ERROR: canceling statement due to user request postgres=# select pg_cancel_backend(pg_backend_pid()); pg_cancel_backend ------------------- t (1 row) postgres=# select pg_cancel_backend(pg_backend_pid()); pg_cancel_backend ------------------- t (1 row) postgres=# select pg_cancel_backend(pg_backend_pid()); ERROR: canceling statement due to user request postgres=# I couldn't reproduce it on Linux, though. So if it's an expected behaviour, shouldn't the hs_standby_functions check be fixed? (I don't understand what is the point of this pg_cancel_backend call.)
В списке pgsql-bugs по дате отправления: