-
Notifications
You must be signed in to change notification settings - Fork 225
fix: [iceberg] Add LogicalTypeAnnotation in ParquetColumnSpec #2000
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
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #2000 +/- ##
============================================
+ Coverage 56.12% 58.67% +2.55%
- Complexity 976 1253 +277
============================================
Files 119 134 +15
Lines 11743 13102 +1359
Branches 2251 2396 +145
============================================
+ Hits 6591 7688 +1097
- Misses 4012 4179 +167
- Partials 1140 1235 +95 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
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.
Probably need to include ID
as well in the type definition
cc @hsiang-c |
@kazuyukitanimura yes. We can consider merging #1987 to speed up CI, but need to fix some tests due to configuration. |
boolean isUTC = Boolean.parseBoolean(params.getOrDefault("isAdjustedToUTC", "true")); | ||
String timeUnitStr = params.getOrDefault("unit", "MICROS"); |
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.
The use of default values seems like it could be dangerous if the caller forgets to pass a parameter or has a typo in the key?
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.
Fixed. Thanks
|
||
// DECIMAL | ||
case "DecimalLogicalTypeAnnotation": | ||
int scale = Integer.parseInt(params.get("scale")); |
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.
Should we add error handling to return a helpful error if these keys do not exist, rather than fail with NPE?
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.
Yes, makes sense to me. I have added a check.
@huaxingao Could you add some unit tests? |
Which issue does this PR close?
Closes #.
Rationale for this change
In order to pass and reassemble the
ColumnDescriptor
from Iceberg to Comet, we need to includeLogicalTypeAnnotation
too.What changes are included in this PR?
How are these changes tested?