-
Couldn't load subscription status.
- Fork 3.4k
HBASE-26537: Make HBASE-15676 backwards compatible, using a flag on the proto #3916
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
Conversation
564cf26 to
0ad9458
Compare
|
💔 -1 overall
This message was automatically generated. |
|
💔 -1 overall
This message was automatically generated. |
0ad9458 to
937fcac
Compare
|
💔 -1 overall
This message was automatically generated. |
|
Test failures look unrelated, maybe timeout related. The |
|
💔 -1 overall
This message was automatically generated. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure what happened to our precommit environment but for sure the protoc failures are due to the wrong version being supplied by the environment (in PATH) for a 1.x build.
|
I plan to merge tomorrow unless objection. |
This adds a new proto field to FuzzyRowFilter proto to aid in providing a compatibility path for pre-HBASE-15676 clients. Users would need to roll this out to their server side first, then roll out to their clients. At which point they are safe to upgrade beyond 1.x.
This brings back support for the old v1 mask from pre-15676. If the new
isMaskV2field is empty/false, we use the old mask. If present and true, we use the new mask which is used in later versions of hbase.I updated all of the tests in TestFuzzyRowFilterEndToEnd to test with both the v1 and v2 masks. You'll note that
testAllFixedBits()(the test added in 15676) matches all rows in the table when using the v1 mask. This is the bug that jira fixed.