[MDEV-7903] xtrabackup SST failing with maria-10.0-galera Created: 2015-04-03 Updated: 2015-06-25 Resolved: 2015-06-25 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Galera SST |
| Affects Version/s: | 10.0.16-galera |
| Fix Version/s: | 10.0.20-galera |
| Type: | Bug | Priority: | Critical |
| Reporter: | aftab khan | Assignee: | Nirbhay Choubey (Inactive) |
| Resolution: | Fixed | Votes: | 5 |
| Labels: | None | ||
| Environment: |
prod |
||
| Issue Links: |
|
||||||||
| Description |
|
Performing an SST using xtrabackup-v2 methods
It creates some corrupt binary log file on the joiner node
This issue is repeatable, set log_bin to non-default location on all the nodes e.g. we have set it to
Work around was to change log_bin location to its default location on all the nodes i.e.
SST using xtrabackup-v2 on a joiner node would be a success. |
| Comments |
| Comment by Nirbhay Choubey (Inactive) [ 2015-05-02 ] | ||||||||
|
A part of the fix depends on | ||||||||
| Comment by David Oliver [ 2015-05-03 ] | ||||||||
|
The workaround only worked for me if I used the exact name and also commented out the log_bin_index like this. For each test I simply bootstrap the first node then start the second and if it didn't fail then I would restart the second again. It failed with the name mariadb-bin and whenever the log_bin_index was specified even when the name was provided without a path as just the filename like log_bin_index = mariadb-bin.index. WSREP_SST cleaning datadir failed in these cases where the log_bin_index name was set. It would be good to confirm that whatever fix is provided also works for the WSREP_SST cleaning step. I'm testing on Ubuntu 14.10 with latest MariaDB Galera packages. WORKAROUND THAT WORKED: FAILED SCENARIO 2: worked initially then on restart of the joiner node, it showed the error already described in this issue FAILED SCENARIO 3: 150503 15:49:57 [Note] WSREP: Shifting PRIMARY -> JOINER (TO: 0) FAILED SCENARIO 3: WSREP_SST: [INFO] Evaluating timeout -k 110 100 socat -u TCP-LISTEN:4444,reuseaddr stdio | xbstream -x; RC=( ${PIPESTATUS[@]} ) (20150503 16:13:08.917) | ||||||||
| Comment by Joffrey MICHAIE (Inactive) [ 2015-05-27 ] | ||||||||
|
Hi, problem comes from following snippet in xtrabackup-v2:
When commenting this code, the node is starting correctly. I think regression comes from https://mariadb.atlassian.net/browse/MDEV-6391 patch, which was included in 10.0.17. I am not sure if we have access to xtrabackup-v2 code. Only binary logs (files ending with numbers) should be put in the index file: Proposed "Fix":
Joffrey | ||||||||
| Comment by Nirbhay Choubey (Inactive) [ 2015-06-25 ] | ||||||||
|
joffrey I can't reproduce the scenario where state file ends up in index file on joiner node. This issue, however, seem related to the missing log_bin_basename variable in 10.0.
Without this variable, binary log directory outside data directory will simply not work. BTW, I have already ported these missing variables to 10.1 ( | ||||||||
| Comment by Nirbhay Choubey (Inactive) [ 2015-06-25 ] | ||||||||
|
Ok, so its the state file left on the joiner node that's causing the problem. | ||||||||
| Comment by Nirbhay Choubey (Inactive) [ 2015-06-25 ] | ||||||||
|
https://github.com/MariaDB/server/commit/5467b12dc3894c36eba092430a785806e0d008c9 |