Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
10.2(EOL)
-
None
Description
Branching this off from MDEV-15173 (see that MDEV for all the details)
Parallel slave (slave_parallel_mode=conservative does not provide a lot of speedup over single-threaded slave when log_slave_updates=OFF.
When log_slave_updates=ON the performance is acceptable.
Summary of the investigations from MDEV-15173:
The reason is that with log_slave_updates=ON the server employs XA between the storage engine the binlog:
- Prepare calls sync their effects to disk
- They are are done in parallel, so they can take advantage of the group commit.
- Commit calls are done one-after-another in order to commit in the master's binlog order
- but they dont sync to disk and so are fast.
With log_slave_updates=OFF :
- XA is not used (as MyRocks is the only participant)
- commit() calls are done one-after-another in the binlog order
- The storage engine is instructed to sync.
- The above two together mean that MyRocks' group commit does not function.
Attachments
Issue Links
- relates to
-
MDEV-15173 MyRocks: basic performance checks
- Closed
-
MDEV-18080 Run MyRocks benchmark: MariaDB vs Percona Server vs FB/MySQL
- Open