Nodes can't join bootstrapped node

I’m trying to join node 4 to the cluster of node 1 that I bootstrapped the sst starts for a while then it fails.

Details:
node 1:

  • Ubuntu 16
  • Percona MySQL 5.7.36-39

node 4

  • Ubuntu 20
  • Percona MySQL 5.7.41-44

Here is the error code produced by node 4:
2023-05-10T02:17:18.193148Z 0 [Note] WSREP: (c791a3a7, ‘tcp://0.0.0.0:4567’) turning message relay requesting off
2023-05-10T02:17:26.816988Z WSREP_SST: [ERROR] ******************* FATAL ERROR **********************
2023-05-10T02:17:26.818588Z WSREP_SST: [ERROR] xtrabackup_checkpoints missing. xtrabackup/SST failed on DONOR. Check DONOR log
2023-05-10T02:17:26.820036Z WSREP_SST: [ERROR] ******************************************************
2023-05-10T02:17:26.821683Z WSREP_SST: [ERROR] Cleanup after exit with status:2
2023-05-10T02:17:26.827562Z 0 [Warning] WSREP: 0.0 (node-1): State transfer to 1.0 (node-4) failed: -22 (Invalid argument)
2023-05-10T02:17:26.827720Z 0 [ERROR] WSREP: gcs/src/gcs_group.cpp:gcs_group_handle_join_msg():811: Will never receive state. Need to abort.
2023-05-10T02:17:26.827835Z 0 [Note] WSREP: gcomm: terminating thread
2023-05-10T02:17:26.827942Z 0 [Note] WSREP: gcomm: joining thread
2023-05-10T02:17:26.828143Z 0 [Note] WSREP: gcomm: closing backend
2023-05-10T02:17:27.313454Z 0 [ERROR] WSREP: Process completed with error: wsrep_sst_xtrabackup-v2 --role ‘joiner’ --address ‘10.16.139.233’ --datadir ‘/var/lib/mysql/’ --defaults-file ‘/etc/mysql/my.cnf’ --defaults-group-suffix ‘’ --parent ‘7436’ --mysqld-version ‘5.7.41-44-57’ ‘’ : 2 (No such file or directory)
2023-05-10T02:17:27.313574Z 0 [ERROR] WSREP: Failed to read uuid:seqno from joiner script.
2023-05-10T02:17:27.313617Z 0 [ERROR] WSREP: SST script aborted with error 2 (No such file or directory)
2023-05-10T02:17:27.313991Z 0 [ERROR] WSREP: SST failed: 2 (No such file or directory)
2023-05-10T02:17:27.314045Z 0 [ERROR] Aborting

Node 4 config

[mysqld]

Path to Galera library

wsrep_provider=/usr/lib/galera3/libgalera_smm.so

Cluster connection URL contains IPs of nodes

#If no IP is found, this implies that a new cluster needs to be created,
#in order to do that you need to bootstrap this node
wsrep_cluster_address=gcomm://10.xx.xxx.xxx,10.xx.xxx.xxx

In order for Galera to work correctly binlog format should be ROW

binlog_format=ROW

MyISAM storage engine has only experimental support

default_storage_engine=InnoDB

Slave thread to use

wsrep_slave_threads= 64

wsrep_log_conflicts

This changes how InnoDB autoincrement locks are managed and is a requirement for Galera

innodb_autoinc_lock_mode=2

Node IP address

wsrep_node_address=10.xx.xxx.xxx

Cluster name

wsrep_cluster_name=pxc-cluster

#If wsrep_node_name is not specified, then system hostname will be used
wsrep_node_name=node-4

#pxc_strict_mode allowed values: DISABLED,PERMISSIVE,ENFORCING,MASTER
pxc_strict_mode=DISABLED

SST method

wsrep_sst_method=xtrabackup-v2
wsrep_sst_auth=“sstuser:******”

#additional configs
character_set_server = utf8
collation_server = utf8_unicode_ci
group_concat_max_len = 4096
innodb_buffer_pool_instances = 8
innodb_buffer_pool_chunk_size= 134217728
innodb_buffer_pool_size = 3221225472
innodb_thread_concurrency = 16
max_allowed_packet = 134217728
net_read_timeout = 120
query_cache_size = 8388608
thread_pool_size = 8
tmp_table_size = 33554432
innodb_lock_wait_timeout = 120
innodb_page_cleaners = 4
max_connect_errors = 1000000
max_connections = 200
query_alloc_block_size = 16384
thread_cache_size = 20
thread_stack = 196608
back_log = 50
host_cache_size = 328
innodb_autoextend_increment = 1000
innodb_thread_sleep_delay = 0
max_heap_table_size = 33554432
open_files_limit = 65535
innodb_data_file_path = ibdata1:10M:autoextend
innodb_file_format = Antelope
innodb_flush_log_at_trx_commit = 1
innodb_flush_method = O_DIRECT
innodb_log_file_size = 536870912
innodb_max_dirty_pages_pct = 80
innodb_thread_sleep_delay = 0
long_query_time = 8
max_binlog_size = 536870912
myisam_recover_options = BACKUP
table_open_cache = 4096
table_definition_cache = 2000
sync_binlog = 1
slow_query_log_file = /var/log/mysql/mysql-slow.log
slave_load_tmpdir = /var/tmp
myisam_recover_options = BACKUP
max_heap_table_size = 33554432
max_binlog_size = 536870912
long_query_time = 8
open_files_limit = 65535
general_log_file = /var/lib/mysql/aws-sydney-paradise-db.log
log_bin_index = /var/lib/mysql/mysql-bin.index
log_error = /var/log/mysql/mysql-error.log
performance_schema = OFF
bind_address = 0.0.0.0
wsrep_provider_options=gcache.size=1G
#disable_log_bin

There should be more to the log above what you have provided. Also, look at the logs inside node1’s datadir for the SST process as there will be more information there too.