octopus
octopus copied to clipboard
rocksdb consistency test
Suppose we have 5 rocksdb:
- generate a series of keys, eg. 100k. The first half is to insert, the other is to delete
- generate several ranges to perform delete range
- perform following operations based on above 100k keys and ranges
- for 50k
insert, do a shuffle; for 50kdelete, do a shuffle - randomly choose from the 100k keys, and insert them in one of three ways: insert, batch insert, ingest sst
- for the 50k
delete, delete them in one of two ways: delete, batch delete - do delete range
- verify that all 5 db are exactly the same, then goto 1
too many duplicated code with TiKV's, I worry that if we change TiKV's code, we need to not forget to change here.
I tried using tikv as a lib, but that doesn't work, actually tried 2 times. I think later if we add another rocksdb test, we can re-use some code here, so that if tikv changes, we need only change one time.
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.