Make sure all child processes are killed on error
Bug #1135441 reported by
Alexey Kopytov
This bug affects 5 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Percona XtraBackup moved to https://jira.percona.com/projects/PXB |
Fix Released
|
High
|
Alexey Kopytov | ||
2.0 |
Won't Fix
|
Undecided
|
Unassigned | ||
2.1 |
Fix Released
|
High
|
Alexey Kopytov | ||
2.2 |
Fix Released
|
High
|
Alexey Kopytov |
Bug Description
innobackupex tries to make sure all child processes are killed if an error occurs in the script. This is performed by the Die subroutine.
However, it is not used consistently. In some parts of code Die is used, while other parts use "die" (i.e. just terminate innobackupex without any cleanups).
We should make sure the cleanup is performed regardless of the error type and the part of code where it has occurred.
Related branches
lp:~akopytov/percona-xtrabackup/bug1135441-2.1
- Stewart Smith (community): Approve
- Registry Administrators: Pending requested
-
Diff: 782 lines (+153/-137)2 files modifiedinnobackupex (+140/-137)
src/xtrabackup.cc (+13/-0)
lp:~akopytov/percona-xtrabackup/bug1135441-followup-2.1
- Alexey Kopytov (community): Approve
-
Diff: 11 lines (+2/-0)1 file modifiedinnobackupex (+2/-0)
Alexey Kopytov <email address hidden> writes:
> However, it is not used consistently. In some parts of code Die is used,
> while other parts use "die" (i.e. just terminate innobackupex without
> any cleanups).
I think we should be able to add a END {} block and get rid of Die, thus
making everything consistent
--
Stewart Smith