[ https://issues.apache.org/jira/browse/HBASE-10089?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13841579#comment-13841579 ]
Mikhail Bautin commented on HBASE-10089: ---------------------------------------- Getting rid of intern() is fine with me. The original motivation was to reduce memory usage. The fact that interned strings strings are not garbage-collected (at least according to http://stackoverflow.com/questions/2431540/garbage-collection-behaviour-for-string-intern ) and the use case of creating temporary tables for integration testing sound like good reasons to remove intern(). > Metrics intern table names cause eventual permgen OOM in 0.94 > ------------------------------------------------------------- > > Key: HBASE-10089 > URL: https://issues.apache.org/jira/browse/HBASE-10089 > Project: HBase > Issue Type: Bug > Affects Versions: 0.94.0, 0.94.14 > Reporter: Dave Latham > Priority: Minor > > As part of the metrics system introduced in HBASE-4768 there are two places > that hbase uses String interning ( SchemaConfigured and SchemaMetrics ). > This includes interning table names. We have long running environment where > we run regular integration tests on our application using hbase. Those tests > create and drop tables with new names regularly. These leads to filling up > the permgen with interned table names. Workaround is to periodically restart > the region servers. -- This message was sent by Atlassian JIRA (v6.1#6144)