-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add batching in UT to support million ios for baseline test. #510
Conversation
I think we can have a general test case for both baseline and incremental, the pattern is similar, only difference is if
It needs a night for long running, hope we can exercise recovery more times vs exercise a recovery with big gap. |
Yeah this is a nice test case to add. We can add this in our SM long running. raft_repl UT is more like functionality test with smaller and larger number of inputs. |
in SM it is hard to ensure we go through incremental or baseline. I think it is a good waste to generate 1M IOs and only test one recovery:) |
334f941
to
272b1ca
Compare
In hour HomeStore 4.x replication long running, we definitely should have test case running recovery a few hundred times (we also do it with nublox 1.3 homestore long run) during the night time, (with I/Os running before and after recovery) and keep rebooting one replica. Our goal is to "abuse" HomeStore so badly so it won't "abuse" us in production. With it being said, it can be done by someone else and in another PR (create an issue and track it). |
272b1ca
to
fd82772
Compare
fd82772
to
a7c2b9c
Compare
Codecov ReportAttention: Patch coverage is
❗ Your organization needs to install the Codecov GitHub app to enable full functionality. Additional details and impacted files@@ Coverage Diff @@
## master #510 +/- ##
===========================================
+ Coverage 56.51% 67.40% +10.89%
===========================================
Files 108 109 +1
Lines 10300 10419 +119
Branches 1402 1398 -4
===========================================
+ Hits 5821 7023 +1202
+ Misses 3894 2717 -1177
- Partials 585 679 +94 ☔ View full report in Codecov by Sentry. |
Add batching of read and write values in UT.
Keep mapping a index to key value pairs for quick lookup during snapshot read.
Add shutdown and start to simulate follower down, writes complete, follower start. Earlier we used to restart with sleep, but for 1 million io's or different values of num_io's we dont know how much to sleep.
To test
./test_raft_repl_dev --gtest_filter=RaftReplDevTest.BaselineTest --num_io=1000000 --log_mods=replication:debug --config_path ./config --dev_size_mb=2048600 --snapsho
t_distance=0