-
Notifications
You must be signed in to change notification settings - Fork 340
Fix Table.scan
to enable case sensitive argument
#1423
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
Table.scan
to enable case sensitivity argumentTable.scan
to enable case sensitive argument
Hi @jiakai-li - thank you for reporting this issue and putting up this PR! The behavior looks right to me, but I think it would be worth thinking through this behavior change holistically. In iceberg-python/pyiceberg/table/update/snapshot.py Lines 340 to 344 in ede363b
If we introduce Tagging @Fokko for review |
First of all, thanks @jiakai-li for raising this PR, and thanks @sungwy for raising that issue. And I agree, I think we should also be able to control case-sensitivity when doing deletes (defaulting to |
Yes, I think updating this PR to include the changes for both makes sense @jiakai-li 👍 Thank you again for tackling this issue! |
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.
Thanks for the PR! Left a comment on making the tests more readable
- Add more readable integration test for case-sensitive and case-insensitive `Table.scan` - Remove less readable test - Enable `case_sensitive` delete and overwrite
Hey guys, thanks a lot for your kind guidance and great suggestions. I've updated the PR to:
Please let me know if there is other changes you would like me to make, thanks. |
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.
added a few nit comments, generally LGTM! Thanks!
Thank you @kevinjqliu ! I've updated the test cases and resolved the comments. Please let me know if you have further comments. |
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.
Thanks again @jiakai-li this looks very good. I've left some small comments, but in general this looks good 👍
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.
This looks great, thanks @jiakai-li for working on this, and thanks @sungwy for the sharp eye 👍
* fix-table-scan-enable-case-sensitivity * Updates included: - Add more readable integration test for case-sensitive and case-insensitive `Table.scan` - Remove less readable test - Enable `case_sensitive` delete and overwrite * Remove less readable test * Add integration test `Table.delete` and `Table.overwrite` * Fix typo * Add test cases for default `Table.delete` case-sensitivity * Update `case_sensitive` argument position
This pull request fixes below issue:
The change modified the
DataScan._build_partition_projection
method to passcase_sensitive
argument when callinginclusive_projection
. So thatTable.scan
method respects this configuration. Also added related tests.