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

Samarth Jain updated PHOENIX-3518:
----------------------------------
    Attachment: PHOENIX-3518_v2.patch

v2 patch with a better handling of IllegalStateException by not throwing the 
IllegalStateException ;). 

[~jleech] - one way to reproduce this would be to have a longish running task 
like multiple CREATE INDEX statements on a table with and bring down HBase or 
something like that to trigger an error in renewLease. Without the patch, you 
would see the renew lease effectively not working because task executions are 
suppressed. You would also see some memory leak since the task is suppressed 
and no longer draining the queue. 

> Memory Leak in RenewLeaseTask
> -----------------------------
>
>                 Key: PHOENIX-3518
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-3518
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.7.0
>         Environment: 5.7.1-1.cdh5.7.1.p0.11 + jdk1.7.0_67
> 4.7.0-1.clabs_phoenix1.3.0.p0.000
> CentOS Linux release 7.0.1406 (Core)
> apache-tomcat-8.5.4 + jdk1.8.0_102 
>            Reporter: Jonathan Leech
>         Attachments: PHOENIX-3518.patch, PHOENIX-3518_v2.patch
>
>
> Looks like PHOENIX-2357 introduced a memory leak, at least for me... I end up 
> with old gen filled up with objects - 100,000,000 instances each of 
> WeakReference and LinkedBlockingQueue$Node, owned by 
> ConnectionQueryServicesImpl.connectionsQueue. The PhoenixConnection referred 
> to by the  WeakReference is null for all but the few active connections. I 
> don't see anything in the log - I can't confirm that it's logging properly 
> though. Per the docs for ScheduledThreadPoolExecutor, if the run method 
> throws an error, further executions are suppressed.



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

Reply via email to