[
https://issues.apache.org/jira/browse/ARROW-17480?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Larry White updated ARROW-17480:
--------------------------------
Description:
Only three FieldVector types do not implement setNull(): UnionVector,
DenseUnionVector and NullVector, preventing it from being addable to the
ValueVector interface and thus requiring a cast when used.
For all three vector types it could be added as a no-op. For NullVector, all
values are already null. For the other two, null values are not supported at
the top level, but only in the individual child vectors. A no-op
implementation is not only consistent with the existing writeNull() operations
in the Union and DenseUnion Writer classes, but it is consistent with isNull(),
which always returns false.
An implementation is also needed in the abstract ExtensionTypeVector, which can
delegate to the underlying vector object.
See also a similar issue opened for FieldWriter (ARROW-2538), which may be
closable given the current code base.
was:
Only three FieldVector types do not implement setNull(): UnionVector,
DenseUnionVector and NullVector, preventing it from being addable to the
ValueVector interface and thus requiring a cast when used.
For all three vector types it could be added as a no-op. For NullVector, all
values are already null. For the other two, null values are not supported at
the top level, but only in the individual child vectors. A no-op
implementation is not only consistent with the existing writeNull() operations
in the Union and DenseUnion Writer classes, but it is consistent with isNull(),
which always returns false.
See also a similar issue opened for FieldWriter (ARROW-2538), which may be
closable given the current code base.
> [Java] add setNull() to FieldVector interface
> ---------------------------------------------
>
> Key: ARROW-17480
> URL: https://issues.apache.org/jira/browse/ARROW-17480
> Project: Apache Arrow
> Issue Type: Improvement
> Components: Java
> Affects Versions: 9.0.0
> Reporter: Larry White
> Assignee: Larry White
> Priority: Major
> Labels: Java
>
> Only three FieldVector types do not implement setNull(): UnionVector,
> DenseUnionVector and NullVector, preventing it from being addable to the
> ValueVector interface and thus requiring a cast when used.
> For all three vector types it could be added as a no-op. For NullVector, all
> values are already null. For the other two, null values are not supported at
> the top level, but only in the individual child vectors. A no-op
> implementation is not only consistent with the existing writeNull()
> operations in the Union and DenseUnion Writer classes, but it is consistent
> with isNull(), which always returns false.
> An implementation is also needed in the abstract ExtensionTypeVector, which
> can delegate to the underlying vector object.
> See also a similar issue opened for FieldWriter (ARROW-2538), which may be
> closable given the current code base.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)