I was looking at this from POV of xtrabackup and SST, and
===========
st_.get (uuid, seqno);
if (0 != args->state_uuid && *args->state_uuid != WSREP_UUID_UNDEFINED && *args->state_uuid == uuid &&
seqno == WSREP_SEQNO_UNDEFINED)
{
/* non-trivial recovery information provided on startup, and db is safe
* so use recovered seqno value */
seqno = args->state_seqno;
}
log_debug << "End state: " << uuid << ':' << seqno << " #################";
update_state_uuid (uuid);
cc_seqno_ = seqno; // is it needed here?
apply_monitor_.set_initial_position(seqno);
if (co_mode_ != CommitOrder::BYPASS) commit_monitor_.set_initial_position(seqno);
cert_.assign_initial_position(seqno, trx_proto_ver_);
=======================
It looks like the provided position (with wsrep-start-position)
is allowed only when UUID matches the one in grastate.dat and
sequence number is -1 in grastate.dat
Now, from Xtrabackup's perspective, --no-lock is only used when DDL and
non-transactional tables are not in effect (at the moment this needs
to checked manually). So, doesn't that mean if that is taken care of
(automatically since SST runs unattended on donor) then grastate.dat
won't be needed? Regarding DDL, is it not possible for SST code in WSREP
to acquire a shared MDL lock (MDL_SHARED_READ or MDL_SHARED_HIGH_PRIO) which should block DDL?
I was looking at this from POV of xtrabackup and SST, and
===========
st_.get (uuid, seqno);
if (0 != args->state_uuid &&
*args- >state_ uuid != WSREP_UUID_ UNDEFINED &&
*args- >state_ uuid == uuid && UNDEFINED) state_uuid (uuid);
seqno == WSREP_SEQNO_
{
/* non-trivial recovery information provided on startup, and db is safe
* so use recovered seqno value */
seqno = args->state_seqno;
}
log_debug << "End state: " << uuid << ':' << seqno << " #################";
update_
cc_seqno_ = seqno; // is it needed here? monitor_ .set_initial_ position( seqno); :BYPASS)
commit_ monitor_ .set_initial_ position( seqno); .assign_ initial_ position( seqno, trx_proto_ver_);
apply_
if (co_mode_ != CommitOrder:
cert_
======= ======= ======= ==
It looks like the provided position (with wsrep-start- position)
is allowed only when UUID matches the one in grastate.dat and
sequence number is -1 in grastate.dat
Now, from Xtrabackup's perspective, --no-lock is only used when DDL and HIGH_PRIO) which should block DDL?
non-transactional tables are not in effect (at the moment this needs
to checked manually). So, doesn't that mean if that is taken care of
(automatically since SST runs unattended on donor) then grastate.dat
won't be needed? Regarding DDL, is it not possible for SST code in WSREP
to acquire a shared MDL lock (MDL_SHARED_READ or MDL_SHARED_