-
Notifications
You must be signed in to change notification settings - Fork 34
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
Run SM tests agains SSTables with UUID ID #4182
Comments
UUID SSTables are the default in newer Scylla version, so we should focus on testing them and mock integer based SSTables when needed. Ref #4182
Interestingly enough, if we simply don't force the creation of integer based SSTables, the tests are passing! The tests are passing because in the deduplication stage, we compare UUID SSTables by both name and size. The tests are failing, because the code I wrote for checking if the backup would create versioned files compares UUID SSTables only by name. Anyway, just enabling the UUID identifiers and never testing against integer identifiers does not give us full coverage, so I will go with the second approach of manually renaming SSTables in the snapshot dir. |
A side note is that we should align the way in which we compare UUID SSTables. |
This way we are able to cover mixed scenarios (integer + UUID SSTables), which was missing from our test coverage. It also allows us to move to testing the default UUID SSTables, which should be our priority. Fixes #4182
This way we are able to cover mixed scenarios (integer + UUID SSTables), which was missing from our test coverage. It also allows us to move to testing the default UUID SSTables, which should be our priority. Fixes #4182
SSTables with UUID ID were introduced to Scylla a long time ago, but we disable them in SM tests with the following
scylla.yaml
configuration:We do it because we wanted to test the backup deduplication mechanism and it required some SSTables with integer based IDs.
It would be nice if we could just test the UUID IDs, as this is the default and most common case, but unfortunately for us, many users can still have both integer based and UUID SSTables in the same cluster (only new SSTables are written with UUIDs while some old ones could never been re-written and still have integer based ID).
For now I see 3 ways to tackle this problem:
uuid_sstable_identifiers_enabled
.This is quick and easy, but it wouldn't allow for testing mixed ID scenarios.
This is probably the most correct approach, but it would require the most effort as well.
There is a question of how easy would it be to integrate pre-created SSTables with our test scenarios which usually create a real backup from a real cluster.
The text was updated successfully, but these errors were encountered: