Merge lp:~akopytov/percona-xtrabackup/BT27412-bug1055989-2.0 into lp:percona-xtrabackup/2.0
Status: | Merged |
---|---|
Approved by: | Alexey Kopytov |
Approved revision: | no longer in the source branch. |
Merged at revision: | 478 |
Proposed branch: | lp:~akopytov/percona-xtrabackup/BT27412-bug1055989-2.0 |
Merge into: | lp:percona-xtrabackup/2.0 |
Diff against target: |
202 lines (+99/-28) 2 files modified
innobackupex (+52/-6) src/xtrabackup.c (+47/-22) |
To merge this branch: | bzr merge lp:~akopytov/percona-xtrabackup/BT27412-bug1055989-2.0 |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Alexey Kopytov (community) | Approve | ||
Laurynas Biveinis (community) | Needs Fixing | ||
Review via email: mp+134413@code.launchpad.net |
Description of the change
Bug #1055989: innobackupex waits for streaming temporary log file to
The problem was that in XtraBackup 2.0 streaming xtrabackup_logfile from
a temporary file was performed in the xtrabackup binary and
innobackupex waited for the xtrabackup process to exit before unlocking
the tables. Streaming the log file might take a long time, while
unnecessarily keeping the server locked with FTWRL. In fact, releasing
the lock can be performed as soon as the xtrabackup binary stops
duplicating the redo log.
Fixed by:
- splitting resume_ibbackup() into two functions. resume_ibbackup()
itself now resumes the xtrabackup process and then just waits for the
log copying to stop rather than process termination as previously. The
new function wait_for_
termination and obtains its exit status. This function is called after
releasing the FTWRL lock.
- implementing a new synchronization point between innobackupex and
xtrabackup using the same mechanism (the xtrabackup_
which is used for synchronization before starting FTWRL: when
innobackupex wants to wait until log copying finishes, it removes
xtrabacku
xtrabackup. So xtrabackup creates the file to signal innobackupex when
log copying is complete and it is now safe to release the FTWRL lock.
http:// jenkins. percona. com/view/ XtraBackup/ job/percona- xtrabackup- 2.0-param/ 303/