Support socat parametrization to perform SST
General
Escalation
General
Escalation
Description
Environment
None
AFFECTED CS IDs
262256
Smart Checklist
Activity
Show:

Vinicius Grippa August 5, 2019 at 12:48 PM
The option is available as Mykola mentioned. Here is the link for the documentation:
https://www.percona.com/doc/percona-xtradb-cluster/LATEST/manual/xtrabackup_sst.html#sockopt

Vinicius Grippa August 5, 2019 at 12:16 PM
@Mykola Marzhan
Yes, it works! We digged the documentation and didn't find this option.
Thanks for catching it! This ticket can be closed for me.

Mykola Marzhan August 5, 2019 at 12:10 PM
@Vinicius Grippa, sorry, is the following config works for you? (1Gb buffer)
[sst]
sockopt="rcvbuf=1073741824,sndbuf=1073741824"
Not a Bug
Details
Details
Assignee

Reporter

Affects versions
Priority
Smart Checklist
Open Smart Checklist
Smart Checklist

Open Smart Checklist
Created August 5, 2019 at 11:21 AM
Updated March 6, 2024 at 10:07 PM
Resolved August 5, 2019 at 12:48 PM
Currently, even though the buffer setting for socat was noted as useful in upstream before:
https://galeracluster.com/library/documentation/xtrabackup-options.html
the transferfmt reads only "nc" vs "socat" options, and the additional params are ignored, as the command is hard-coded later in the script. I think socat params should be optionable in [SST] section as well, especially large buffer.
For instance, to SST without encryption, you'd need to modify this code part:
else if [[ $encrypt -eq 1 ]]; then wsrep_log_warning "**** WARNING **** encrypt=1 is deprecated and will be removed in a future release" fi if [[ "$WSREP_SST_OPT_ROLE" == "joiner" ]]; then tcmd="socat -b 65536 -u TCP-LISTEN:${TSST_PORT},reuseaddr${sockopt} stdio" else tcmd="socat -b 65536 -u stdio TCP:${REMOTEIP}:${TSST_PORT}${sockopt}" fi