Enis Soztutar created PHOENIX-2527:
--------------------------------------

             Summary: InsufficientMemoryException error message is misleading
                 Key: PHOENIX-2527
                 URL: https://issues.apache.org/jira/browse/PHOENIX-2527
             Project: Phoenix
          Issue Type: Bug
            Reporter: Enis Soztutar
            Assignee: Enis Soztutar


We got an InsufficientMemoryException from user code, and was confused about 
why it cannot allocate more memory, while it reports as having remaining 
available memory: 
{code}
Caused by: org.apache.phoenix.memory.InsufficientMemoryException: Requested 
memory of 1185 bytes could not be allocated from remaining memory of 128843776 
bytes from global pool of 128843776 bytes after w
aiting for 10000ms.
        at 
org.apache.phoenix.memory.GlobalMemoryManager.allocateBytes(GlobalMemoryManager.java:81)
        at 
org.apache.phoenix.memory.GlobalMemoryManager.allocate(GlobalMemoryManager.java:102)
        at 
org.apache.phoenix.memory.GlobalMemoryManager.allocate(GlobalMemoryManager.java:108)
        at 
org.apache.phoenix.cache.ServerCacheClient.addServerCache(ServerCacheClient.java:147)
        at 
org.apache.phoenix.join.HashCacheClient.addHashCache(HashCacheClient.java:83)
        at 
org.apache.phoenix.execute.HashJoinPlan$HashSubPlan.execute(HashJoinPlan.java:346)
        at org.apache.phoenix.execute.HashJoinPlan$1.call(HashJoinPlan.java:143)
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        at 
org.apache.phoenix.job.JobManager$InstrumentedJobFutureTask.run(JobManager.java:172)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
{code}

Turns out that remaining memory is actually used memory. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to