-
Notifications
You must be signed in to change notification settings - Fork 51
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
timestamps #72
timestamps #72
Conversation
@robert3005 fixed the weird rebase. this should be good to go |
This works on the legacy int96 format as well because
|
.reduceOption(FilterApi.and) | ||
} else { | ||
None | ||
} | ||
|
||
log.debug(s"Pushing converted filters: $pushed") |
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.
maybe info? FilterCompat.get logs at that level
👍 only nit about logging since I was chasing about that value multiple times already. Otherwise looks good to me. |
Cool done, merging. |
val isOptionalField = f.metadata.contains(StructType.metadataKeyForOptionalField) && | ||
f.metadata.getBoolean(StructType.metadataKeyForOptionalField) | ||
|
||
(isTs && int96AsTimestamp) || isOptionalField |
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.
nit: could be lazy with the boolean evaluations:
fields.filterNot { f =>
(int96AsTimestamp && DataTypes.TimestampType.acceptsType(f.dataType))
|| (f.metadata.contains(StructType.metadataKeyForOptionalField)
&& f.metadata.getBoolean(StructType.metadataKeyForOptionalField))
}.map(f => f.name -> f.dataType).toMap
No description provided.