From: | Fujii Masao <fujii(at)postgresql(dot)org> |
---|---|
To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
Subject: | pgsql: Fix assertion failure and segmentation fault in backup code. |
Date: | 2022-07-20 00:58:08 |
Message-ID: | E1oDy2R-000Lth-6V@gemulon.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Fix assertion failure and segmentation fault in backup code.
When a non-exclusive backup is canceled, do_pg_abort_backup() is called
and resets some variables set by pg_backup_start (pg_start_backup in v14
or before). But previously it forgot to reset the session state indicating
whether a non-exclusive backup is in progress or not in this session.
This issue could cause an assertion failure when the session running
BASE_BACKUP is terminated after it executed pg_backup_start and
pg_backup_stop (pg_stop_backup in v14 or before). Also it could cause
a segmentation fault when pg_backup_stop is called after BASE_BACKUP
in the same session is canceled.
This commit fixes the issue by making do_pg_abort_backup reset
that session state.
Back-patch to all supported branches.
Author: Fujii Masao
Reviewed-by: Kyotaro Horiguchi, Masahiko Sawada, Michael Paquier, Robert Haas
Discussion: https://postgr.es/m/3374718f-9fbf-a950-6d66-d973e027f44c@oss.nttdata.com
Branch
------
REL_15_STABLE
Details
-------
https://git.postgresql.org/pg/commitdiff/0829cc43ed69252184f90161b4940444d8b48574
Modified Files
--------------
src/backend/access/transam/xlog.c | 2 ++
1 file changed, 2 insertions(+)
From | Date | Subject | |
---|---|---|---|
Next Message | Fujii Masao | 2022-07-20 00:58:25 | pgsql: Prevent BASE_BACKUP in the middle of another backup in the same |
Previous Message | Fujii Masao | 2022-07-20 00:57:32 | pgsql: Fix assertion failure and segmentation fault in backup code. |