-
Notifications
You must be signed in to change notification settings - Fork 316
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
feat: Implements a reader to make schema compatible #2326
feat: Implements a reader to make schema compatible #2326
Conversation
931b600
to
73eacbe
Compare
73eacbe
to
2a80b38
Compare
Codecov Report
Additional details and impacted files@@ Coverage Diff @@
## migrate-region-server #2326 +/- ##
========================================================
Coverage ? 77.79%
========================================================
Files ? 712
Lines ? 113969
Branches ? 0
========================================================
Hits ? 88662
Misses ? 25307
Partials ? 0 |
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.
LGTM
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.
LGTM 👍
@evenyag Some conflicts have to be resolved. |
a3d1bb7
* docs: update comment * feat: Add compat reader to SeqScan * feat: add struct to compat pk and fields * refactor: remove unused fields from ParquetReader * feat: compat framework * feat: Implement CompatPrimaryKey and CompatFields * feat: implement compat reader * feat: Test compat reader * test: test compat reader * feat: add more checks to concat * style: fix clippy * test: more tests for compat reader * test: test reader with projection
* docs: update comment * feat: Add compat reader to SeqScan * feat: add struct to compat pk and fields * refactor: remove unused fields from ParquetReader * feat: compat framework * feat: Implement CompatPrimaryKey and CompatFields * feat: implement compat reader * feat: Test compat reader * test: test compat reader * feat: add more checks to concat * style: fix clippy * test: more tests for compat reader * test: test reader with projection
* docs: update comment * feat: Add compat reader to SeqScan * feat: add struct to compat pk and fields * refactor: remove unused fields from ParquetReader * feat: compat framework * feat: Implement CompatPrimaryKey and CompatFields * feat: implement compat reader * feat: Test compat reader * test: test compat reader * feat: add more checks to concat * style: fix clippy * test: more tests for compat reader * test: test reader with projection
* docs: update comment * feat: Add compat reader to SeqScan * feat: add struct to compat pk and fields * refactor: remove unused fields from ParquetReader * feat: compat framework * feat: Implement CompatPrimaryKey and CompatFields * feat: implement compat reader * feat: Test compat reader * test: test compat reader * feat: add more checks to concat * style: fix clippy * test: more tests for compat reader * test: test reader with projection
* docs: update comment * feat: Add compat reader to SeqScan * feat: add struct to compat pk and fields * refactor: remove unused fields from ParquetReader * feat: compat framework * feat: Implement CompatPrimaryKey and CompatFields * feat: implement compat reader * feat: Test compat reader * test: test compat reader * feat: add more checks to concat * style: fix clippy * test: more tests for compat reader * test: test reader with projection
I hereby agree to the terms of the GreptimeDB CLA
What's changed and what's your intention?
This PR implements a
CompatReader
to make readers from SSTs with an old schema to be compatible with the latest schema.CompatPrimaryKey
encodes new tags and appends encoded data to the old primary key.CompatFields
builds a mapping from old fields to new fields. For missing columns, it adds a default vector.Checklist
Refer to a related PR or issue link (optional)