[MDEV-14103] Testing for group commit in MyRocks Created: 2017-10-22  Updated: 2017-12-05  Resolved: 2017-12-05

Status: Closed
Project: MariaDB Server
Component/s: Storage Engine - RocksDB
Fix Version/s: N/A

Type: Task Priority: Major
Reporter: Sergei Petrunia Assignee: Andrii Nikitin (Inactive)
Resolution: Done Votes: 0
Labels: None

Issue Links:
Blocks
is blocked by MDEV-14138 RocksDB Crash recovery is broken Closed
PartOf
is part of MDEV-9658 Make MyRocks in MariaDB stable Closed
Relates
relates to MDEV-11934 MariaRocks: Group Commit with binlog Closed
relates to MDEV-14131 Burst in connections may show: Lost c... Confirmed

 Description   

MyRocks now has "group commit with the binary log" feature. Its goal is to keep the storage engine and the binlog in sync despite server crashes. It's interesting to run it under a parallel workload.

This task is about testing it with a setup that was used to test similar features with InnoDB.

Essential settings for testing:

rocksdb_enable_2pc=ON
rocksdb_flush_log_at_trx_commit=1
sync_binlog=1
log_bin=1
binlog_format=ROW



 Comments   
Comment by Andrii Nikitin (Inactive) [ 2017-10-26 ]

I investigated following ways this may be tested:

  • force unmount partition with data directory => not usable, because practical filesystems don't support force flag in umount
  • fsfreeze => not usable, because it lets complete those IO operations which were already initiated
  • virtual machines / containers => probably not reliable, because it is unclear how it interacts with host flushing

After all I decided to write magic letter 'c' to /proc/sysrq-trigger , which crashes kernel and is very similar to power outage. This method was used to test and report MDEV-14138 .

Comment by Sergei Petrunia [ 2017-12-05 ]

Following the Slack discussion: functional testing of this feature is considered done.

Generated at Thu Feb 08 08:10:57 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.