diff options
author | Thirunarayanan Balathandayuthapani <thiru@mariadb.com> | 2018-04-03 16:43:36 +0530 |
---|---|---|
committer | Thirunarayanan Balathandayuthapani <thiru@mariadb.com> | 2018-04-03 16:43:36 +0530 |
commit | d9c5a4667840137c2e366ba3f579e1f6aa904062 (patch) | |
tree | 159fae362c3ce3757cdd9827563351765d792c54 /extra | |
parent | 6223f1dd98c81b6c53bf15595ae6fb32f3a3c54c (diff) | |
download | mariadb-git-d9c5a4667840137c2e366ba3f579e1f6aa904062.tar.gz |
MDEV-15737 assertion in mariabackup.exe!recv_calc_lsn_on_data_add()
- recovered_lsn shouldn't be initialized during xtrabackup_copy_logfile().
If partial redo log read during the end of xtrabackup_copy_logfile() then
recovered_lsn will be different from scanned_lsn. Re-initialization of
recovered_lsn could lead to partial read again. It is a regression of
MDEV-14545
Diffstat (limited to 'extra')
-rw-r--r-- | extra/mariabackup/xtrabackup.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/extra/mariabackup/xtrabackup.cc b/extra/mariabackup/xtrabackup.cc index 11f485e003f..67ffc7b6843 100644 --- a/extra/mariabackup/xtrabackup.cc +++ b/extra/mariabackup/xtrabackup.cc @@ -2555,7 +2555,6 @@ xtrabackup_copy_logfile(copy_logfile copy) recv_sys->parse_start_lsn = log_copy_scanned_lsn; recv_sys->scanned_lsn = log_copy_scanned_lsn; - recv_sys->recovered_lsn = log_copy_scanned_lsn; start_lsn = ut_uint64_align_down(log_copy_scanned_lsn, OS_FILE_LOG_BLOCK_SIZE); @@ -4082,6 +4081,8 @@ reread_log_header: /* copy log file by current position */ log_copy_scanned_lsn = checkpoint_lsn_start; + recv_sys->recovered_lsn = log_copy_scanned_lsn; + if (xtrabackup_copy_logfile(COPY_FIRST)) goto fail; |