So, wrt. wsrep_desync and state transfer there are two ways it can go:
a) wsrep_desync=ON and then a SST request comes to this node - this works fine since this won't be chosen as a donor then
b) SST request is sent to this node and then wsrep_desync is set to ON and OFF (probably by a backup application which is unaware of SST going on).
It is b) which can be problematic, particularly, the setting wsrep_desync to OFF which can potentially break SST.
wsrep->resync() and in turn, resync in galera needs to check state transfer into consideration.
So, wrt. wsrep_desync and state transfer there are two ways it
can go:
a) wsrep_desync=ON and then a SST request comes to this node -
this works fine since this won't be chosen as a donor then
b) SST request is sent to this node and then wsrep_desync is set
to ON and OFF (probably by a backup application which is unaware
of SST going on).
It is b) which can be problematic, particularly, the setting
wsrep_desync to OFF which can potentially break SST.
wsrep->resync() and in turn, resync in galera needs to check
state transfer into consideration.