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

Samarth Jain resolved PHOENIX-3584.
-----------------------------------
       Resolution: Fixed
    Fix Version/s: 4.10.0
                   4.9.1

> Expose metrics for ConnectionQueryServices instances and their allocators in 
> the JVM
> ------------------------------------------------------------------------------------
>
>                 Key: PHOENIX-3584
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-3584
>             Project: Phoenix
>          Issue Type: Improvement
>            Reporter: Andrew Purtell
>            Assignee: Samarth Jain
>             Fix For: 4.9.1, 4.10.0
>
>         Attachments: PHOENIX-3584.patch
>
>
> In the case a client is leaking Phoenix/HBase connections it would be helpful 
> to have metrics available on the number of ConnectionQueryServices 
> (ConnectionQueryServicesImpl) instances and who has allocated them. 
> For the latter, we could get a stacktrace when ConnectionQueryServicesImpls 
> are allocated (should be a relatively rare) and keep a count by hash of the 
> call stack (and save the call stack). Then we need a method to dump the hash 
> to callstack map as a string. This method can be called remotely by JMX when 
> debugging leaks in a live environment. Perhaps after the count of 
> ConnectionQueryServicesImpls goes over a configurable threshold we can also 
> log warnings that dump the counts by hash and callstacks corresponding to 
> those hashes. 
> Or, we should only have multiple ConnectionQueryServicesImpls if an optional 
> parameter is passed in the JDBC connect string. We could keep counts by that 
> parameter string and dump that instead of call stacks. 



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

Reply via email to