You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@arrow.apache.org by "Vanco Buca (JIRA)" <ji...@apache.org> on 2018/06/11 17:17:00 UTC

[jira] [Created] (ARROW-2696) [JAVA] enhance AllocationListener with an onFailedAllocation() call

Vanco Buca created ARROW-2696:
---------------------------------

             Summary: [JAVA] enhance AllocationListener with an onFailedAllocation() call
                 Key: ARROW-2696
                 URL: https://issues.apache.org/jira/browse/ARROW-2696
             Project: Apache Arrow
          Issue Type: Improvement
          Components: Java - Memory
            Reporter: Vanco Buca


If an allocation fails, there might be an action taken by user code that will free up some memory before the allocation can be retried again. This action could include flushing some temporary buffers, getting rid of some temporarily cached data, or even spilling state to disk.

Today's code is forced to catch out-of-memory exceptions, and then retry the operation at a high level. A more elegant way to do this is to have a callback whenever allocation failed. The callback would inform the allocator whether or not to retry the allocation.

Since the allocator already has an AllocationListener, it makes sense to enhance the existing listener with a new method.

{{The proposed signature is:}}

{{  boolean onAllocationFailed(long allocationSize);}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)