-
Notifications
You must be signed in to change notification settings - Fork 402
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
Remove check for inner nullability of component columns #9009
Conversation
Fixes connection to redap server
Web viewer built successfully. If applicable, you should also test it:
Note: This comment is updated whenever you push a commit. |
|
return Err(ChunkError::Malformed { | ||
reason: format!( | ||
"The outer array in a chunked component batch must be a sparse list, got {:?}", | ||
"The inner array in a chunked component batch must be a list, got {:?}", |
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 is not the inner array, this is the outer list_array, i.e. the column
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.
But I already merged, so
### Related * #8998 * #6819 ### What `pixi run rerun rerun://redap.rerun.io/catalog` failed with `Detected malformed Chunk: The outer array in chunked component batch must be a sparse list, got List(Field { name: "item", data_type: Utf8, nullable: false, dict_id: 0, dict_is_ordered: false, metadata: {} })`. The cause was a check in the `Chunk::sanity_check` requiring _inner mutability_, i.e. allowing a single component to be null in a list. The intention of the check was to check for _outer_ nullability, i.e. that any cell in the column can be `null` (or a dense list). In other words, we want to support `Vec<Option<Vec<T>>`, but NOT require `Vec<Option<Vec<Option<T>>>`. Why did this trigger now? Because we now allow sending component columns as "mono components", i.e. as `Vec<T>` and that is then automatically changed to `Vec<Vec<T>>`, but wether or not it has interior nullability depends on if the source data had it.
Related
wrap_in_list_array
#8998What
pixi run rerun rerun://redap.rerun.io/catalog
failed withDetected malformed Chunk: The outer array in chunked component batch must be a sparse list, got List(Field { name: "item", data_type: Utf8, nullable: false, dict_id: 0, dict_is_ordered: false, metadata: {} })
.The cause was a check in the
Chunk::sanity_check
requiring inner mutability, i.e. allowing a single component to be null in a list. The intention of the check was to check for outer nullability, i.e. that any cell in the column can benull
(or a dense list).In other words, we want to support
Vec<Option<Vec<T>>
, but NOT requireVec<Option<Vec<Option<T>>>
.Why did this trigger now? Because we now allow sending component columns as "mono components", i.e. as
Vec<T>
and that is then automatically changed toVec<Vec<T>>
, but wether or not it has interior nullability depends on if the source data had it.