maria-developers team mailing list archive
-
maria-developers team
-
Mailing list archive
-
Message #09925
Problem with parallel replication in 10.2
Hi!
I was trying to run a test that fails in the upcoming bb-10.2-jan on
the normal 10.2 tree, when I noticed this strange issue:
- Test fails with timeout when running with --debug
- When looking at the trace file, I notice that we get a duplicate key
error for the table gtid_slave_post (MyISAM table). Is this something
normal ?
To repeat:
Store the included test in suite/rpl and run it with:
mysql-test-run --debug --record rpl_skr
Issue 2:
bb-10.2-jan tree is a working tree for a merge of MariaDB 10.2 and MySQL 5.7
When running rpl_skr in 10.2 it takes 2 seconds
When running it in the bb-10.2-jan tree it takes either a long time
or we get a timeout.
This is probably because of the new lock code in lock0lock.cc and
lock0wait.cc which doesn't break conflicting transaction but instead
waits for a timeout
Would appreciate any help with this!
Note that rpl_skr is a test that was originally part of
rpl_parallel.test, but I have made it separate to be able to more
easily test for this issue.
Before testing bb-10.2-jan, please apply this patch that fixes one
critical issue in this tree related to group-commit:
diff --git a/storage/innobase/handler/ha_innodb.cc
b/storage/innobase/handler/ha_innodb.cc
index b69468d..0e9caed 100644
--- a/storage/innobase/handler/ha_innodb.cc
+++ b/storage/innobase/handler/ha_innodb.cc
@@ -4976,16 +4953,15 @@ innobase_commit(
thd_wakeup_subsequent_commits(thd, 0);
/* Now do a write + flush of logs. */
- if (!read_only) {
- trx_commit_complete_for_mysql(trx);
- }
+ trx_commit_complete_for_mysql(trx);
trx_deregister_from_2pc(trx);
} else {
/* We just mark the SQL statement ended and do not do a
transaction commit */
+ DBUG_PRINT("info", ("Just mark SQL statement"));
/* If we had reserved the auto-inc lock for some
table in this SQL statement we release it now */
Regards,
Monty
Attachment:
rpl_skr.test
Description: Binary data
Follow ups