hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Samarth Jain (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HBASE-18734) Possible memory leak when running mini cluster
Date Fri, 01 Sep 2017 08:18:02 GMT
Samarth Jain created HBASE-18734:
------------------------------------

             Summary: Possible memory leak when running mini cluster
                 Key: HBASE-18734
                 URL: https://issues.apache.org/jira/browse/HBASE-18734
             Project: HBase
          Issue Type: Bug
            Reporter: Samarth Jain


As part of improving the stability of Phoenix tests, I recently did some analysis and found
that when the mini cluster is not able to close all the regions properly, or if there is some
other cruft left behind by a mini cluster after it has been shut down, it can result in a
memory leak. The region server adds it's thread to the JVM shut down hook in HRegionServer.
{code}
ShutdownHook.install(conf, fs, this, Thread.currentThread());
{code}
So, even if the region server thread terminates when a mini cluster is shut down, the terminated
thread's object stays around. If there is any remaining cruft (regions, configuration, etc)
enclosed within a region server, GC isn't able to garbage them away since they are still referred
to by this terminated thread object in the shutdown hook.

A possible/likely fix for this would be to call ShutdownHookManager.removeShutdownHook(regionServerThread)
when the mini cluster is shut down.





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

Mime
View raw message