[ 
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)

Reply via email to