From: | PG Bug reporting form <noreply(at)postgresql(dot)org> |
---|---|
To: | pgsql-bugs(at)lists(dot)postgresql(dot)org |
Cc: | exclusion(at)gmail(dot)com |
Subject: | BUG #15492: pg_cancel_backend(pg_backend_pid()) returns true sporadically |
Date: | 2018-11-08 04:30:05 |
Message-ID: | 15492-9b79ce7d1e0687a9@postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
The following bug has been logged on the website:
Bug reference: 15492
Logged by: Alexander Lakhin
Email address: exclusion(at)gmail(dot)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.)
From | Date | Subject | |
---|---|---|---|
Next Message | Frederico Galvão | 2018-11-08 04:40:25 | Re: BUG #15489: Segfault on DELETE |
Previous Message | Thomas Munro | 2018-11-08 01:50:35 | Re: BUG #15449: file_fdw using program cause exit code error when using LIMIT |