You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@liurenjie1024 we just need to be very careful with old PartitionSpecs: They might not be valid anymore for the current schema - yet, we still want to keep them.
In these cases Java has schema field pointing to the current schema, even if fields might not be present. Java achieves this by using build_unchecked.
In think it would be much cleaner to use UnboundPartitionSpecs for these cases.
We could change TableMetadata to
pubstructTableMetadata{
...
pub(crate)partition_specs:HashMap<i32,UnboundPartitionSpecRef>,// Changed to unboundpub(crate)default_spec:PartitionSpecRef,// This is a new field bound to the current schema.// Remove: default_spec_id - get it from default_spec.id}
This discussion is a follow up of this comment, in summary, I'm thinking about make
PartitionSpec
safe with following changes:schema
field toPartitionSpec
.This will introduce several changes:
PartitionSpec
could only be built using builder, which has checks for serveral parts to ensure it's correctPartitionSpec
's partition type could be infered by itselfTableMetadata
to use builder to build it.The text was updated successfully, but these errors were encountered: