Node #1
mysqld.log
2018-04-04T06:04:35.693029Z 4 [Note] WSREP: wsrep: applying write-set (56593786)
2018-04-04T06:04:35.693067Z 4 [Note] WSREP: wsrep: writing row for write-set (56593786)
2018-04-04T06:04:35.693107Z 4 [Note] WSREP: wsrep: applied write set (56593786)
2018-04-04T06:04:35.693115Z 4 [Note] WSREP: wsrep: committing write set (56593786)
2018-04-04T06:04:35.693128Z 4 [Note] WSREP: wsrep: committed write set (56593786)
2018-04-04T06:04:35.696431Z 39 [Note] WSREP: wsrep: replicating commit (-1)
2018-04-04T06:04:35.696439Z 39 [Note] WSREP: wsrep: initiating replication for write set (-1)
2018-04-04T06:04:35.696914Z 39 [Note] WSREP: wsrep: write set replicated (56593787)
2018-04-04T06:04:35.696930Z 39 [Note] WSREP: wsrep: initiating pre-commit for write set (56593787)
2018-04-04T06:04:35.696953Z 39 [Note] WSREP: wsrep: pre-commit/certification passed (56593787)
2018-04-04T06:04:35.698399Z 38 [Note] WSREP: set_query_FieldA(), assigned new next trx FieldA: 852473
2018-04-04T06:04:35.698488Z 39 [Note] WSREP: set_query_FieldA(), assigned new next trx FieldA: 852474
2018-04-04T06:04:35.699824Z 6 [Note] WSREP: wsrep: applying write-set (56593788)
2018-04-04T06:04:35.699891Z 6 [Note] WSREP: wsrep: updating row for write-set (56593788)
general log
2018-04-04T06:04:35.685099Z 39 Query BEGIN
2018-04-04T06:04:35.687321Z 39 Query INSERT INTO `TableA`(`FieldB`, `FieldC`) VALUES (62, 0)
2018-04-04T06:04:35.696417Z 39 Query COMMIT
* Record Result = (FieldA = 1210, FieldB = 62, FieldC = 0)
Node #2
mysqld.log
2018-04-04T06:04:35.700608Z 3 [Note] WSREP: wsrep: writing row for write-set (56593787)
*** Priority TRANSACTION:
TRANSACTION 91556508, ACTIVE 0 sec inserting
mysql tables in use 1, locked 1
MySQL thread id 3, OS thread handle 140516297950976, query id 838273 wsrep: writing row for write-set (56593787)
*** Victim TRANSACTION:
TRANSACTION 91556506, ACTIVE 0 sec
, undo log entries 1
MySQL thread id 36, OS thread handle 140516169017088, query id 838270 172.19.140.168 admin
*** WAITING FOR THIS LOCK TO BE GRANTED:
RECORD LOCKS space id 43 page no 8 n bits 272 index PRIMARY of table `TestDB`.`TableA` trx id 91556506 lock_mode X
2018-04-04T06:04:35.700685Z 3 [Note] WSREP: --------- CONFLICT DETECTED --------
2018-04-04T06:04:35.700701Z 3 [Note] WSREP: cluster conflict due to high priority abort for threads:
2018-04-04T06:04:35.700689Z 32 [Note] WSREP: set_query_id(), assigned new next trx id: 838274
2018-04-04T06:04:35.700706Z 3 [Note] WSREP: Winning thread:
THD: 3, mode: applier, state: executing, conflict: no conflict, seqno: 56593787
SQL: (null)
2018-04-04T06:04:35.700724Z 3 [Note] WSREP: Victim thread:
THD: 36, mode: local, state: idle, conflict: no conflict, seqno: -1
SQL: (null)
2018-04-04T06:04:35.700728Z 3 [Note] WSREP: BF thread 3 (with write-set: 56593787) aborting Victim thread 36 with transaction (91556506)
2018-04-04T06:04:35.700731Z 3 [Note] WSREP: Aborting query: void
2018-04-04T06:04:35.700734Z 3 [Note] WSREP: Killing Transaction (91556506) in QUERY_IDLE state
2018-04-04T06:04:35.700738Z 3 [Note] WSREP: Enqueue transaction for force-abort 36
2018-04-04T06:04:35.700740Z 3 [Note] WSREP: Signal Rollback/Aborter
2018-04-04T06:04:35.700779Z 1 [Note] WSREP: Rollback/Aborter thread wakes for signal. Has some transaction rollback work to do.
2018-04-04T06:04:35.700791Z 36 [Note] WSREP: Initiating rollback. Transaction (query: (null)) triggered by thread 36 was BF aborted
general log
2018-04-04T06:04:35.698995Z 36 Query BEGIN
2018-04-04T06:04:35.699641Z 36 Query UPDATE `TableA` SET `FieldC`=1 WHERE `FieldA`=1211
2018-04-04T06:04:35.700493Z 36 Query SELECT * FROM `TableA` WHERE `FieldA`=1211
2018-04-04T06:04:36.294376Z 36 Query ROLLBACK
Victim transaction's thead id is 36, Node#2 general log is transaction that run thread 36
Winning transaction wsrep seqno is 56593787. Thus, Node #1 general log is transaction that run thread 39
symbolic-links=0
wsrep_provider=/usr/lib/galera3/libgalera_smm.so
wsrep_debug=ON
wsrep_cluster_name=test_cluster
binlog_format=ROW
default_storage_engine=InnoDB
wsrep_slave_threads= 8
wsrep_log_conflicts
innodb_autoinc_lock_mode=2
wsrep_node_address=172.20.86.102
wsrep_node_name=firstnode
pxc_strict_mode=ENFORCING
wsrep_sst_method=xtrabackup-v2
wsrep_sst_auth="sstuser:sstuser"
wsrep_retry_autocommit=3
Node #2
symbolic-links=0
wsrep_provider=/usr/lib/galera3/libgalera_smm.so
wsrep_debug=ON
wsrep_cluster_name=test_cluster
binlog_format=ROW
default_storage_engine=InnoDB
wsrep_slave_threads= 8
wsrep_log_conflicts
innodb_autoinc_lock_mode=2
wsrep_node_address=172.20.85.211
wsrep_node_name=secondnode
pxc_strict_mode=ENFORCING
# SST method
wsrep_sst_method=xtrabackup-v2
wsrep_sst_auth="sstuser:sstuser"
wsrep_retry_autocommit=3
[Test Case]
I run test by own test-client, but it's simple.
Each thread did not access same record.
Each thread access just their own record.