Details
Description
After update from 10.11.9 to 10.11.10 we observe problem with Rsync SST. It seems that there is a mass rewrite of wsrep_sst_common and if we use dedicated log dir for aria, Rsync SST method crash,
aria_log_dir_path=/var/lib/mysql/logs |
datadir=/var/lib/mysql/data |
Problem is in function create_dirs in in wsrep_sst_common which is probably trapped somewhere on other exit code than 0. But if you use custom aria log dir, last exit code is 1 due to condition on line 1866
[ $simplify -ne 0 -a "$ar_log_dir" = "$DATA_DIR" ] && ar_log_dir="" |
After it scripts flow go to simple_cleanup and exit. If you add on line below, for example echo "1", which has exit code 0, SST can continue and all work.
Output from bash -x
....
|
+ '[' 0 -ne 0 -a /var/lib/mysql/logs = /var/lib/mysql/data ']' |
+ simple_cleanup
|
+ local estatus=1 |
+ '[' 1 -ne 0 ']' |
+ wsrep_log_error 'Cleanup after exit with status: 1' |
+ wsrep_log '[ERROR] Cleanup after exit with status: 1' |
+ local t |
+ '[' Linux = Linux ']' |
++ date '+%Y%m%d %H:%M:%S.%3N' |
+ t='20241111 19:27:39.773' |
+ echo 'WSREP_SST: [ERROR] Cleanup after exit with status: 1 (20241111 19:27:39.773)' |
WSREP_SST: [ERROR] Cleanup after exit with status: 1 (20241111 19:27:39.773) |
+ '[' -n /var/lib/mysql/data/wsrep_sst.pid ']' |
++ pwd |
+ '[' /usr/bin '!=' /usr/bin ']' |
+ '[' -f /var/lib/mysql/data/wsrep_sst.pid ']' |
+ rm -f /var/lib/mysql/data/wsrep_sst.pid |
+ exit 1' |
How to test:
add different aria and data dir, eg.
aria_log_dir_path=/var/lib/mysql/logs |
datadir=/var/lib/mysql/data |
an run rsync SST - problematic part is:.
wsrep_sst_rsync --role 'joiner' --address '10.11.2.31' --datadir '/var/lib/mysql/data/' --parent 2603575 --progress 0 --binlog '/var/lib/mysql/logs/mysql-bin' --binlog-index '/var/lib/mysql/logs/mysql-bin.index' --mysqld-args --wsrep_start_position=00000000-0000-0000-0000-000000000000:-1,0-0-0 |
If you need some more data, let me know.