[ 
https://issues.apache.org/jira/browse/ARROW-1283?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Bryan Cutler updated ARROW-1283:
--------------------------------
    Description: When working with a VectorSchemaRoot, once it is no longer 
needed it resources are freed by calling {{close()}} followed by then closing 
the allocator.  Sometimes it is needed to close a second time due to complex 
operations.  If the VectorSchemaRoot is closed again after the allocator, it 
raises an assertion error during {{clear()}} because it is trying to allocate 
an empty buffer, which ends up being destroyed immediately anyway.  The 
{{close()}} operation should mean that the object is no longer to be used, so 
once closed it should not try to reallocate it.  (was: When working with a 
VectorSchemaRoot, once it is no longer needed it resources are freed by calling 
{{close()}} followed by then closing the allocator.  Sometimes it is needed to 
close a second time due to complex operations.  If the VectorSchemaRoot is 
closed again after the allocator, it raises an assertion error during 
{{clear()}} because it is trying to allocate an empty buffer.  The {{close()}} 
operation should mean that the object is no longer to be used, so this empty 
buffer is not needed and ends up being destroyed immediately anyway.)

> [Java] VectorSchemaRoot should be able to be closed() more than once
> --------------------------------------------------------------------
>
>                 Key: ARROW-1283
>                 URL: https://issues.apache.org/jira/browse/ARROW-1283
>             Project: Apache Arrow
>          Issue Type: Bug
>          Components: Java - Vectors
>            Reporter: Bryan Cutler
>            Assignee: Bryan Cutler
>
> When working with a VectorSchemaRoot, once it is no longer needed it 
> resources are freed by calling {{close()}} followed by then closing the 
> allocator.  Sometimes it is needed to close a second time due to complex 
> operations.  If the VectorSchemaRoot is closed again after the allocator, it 
> raises an assertion error during {{clear()}} because it is trying to allocate 
> an empty buffer, which ends up being destroyed immediately anyway.  The 
> {{close()}} operation should mean that the object is no longer to be used, so 
> once closed it should not try to reallocate it.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to