[
https://issues.apache.org/jira/browse/HBASE-6505?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13428569#comment-13428569
]
Lars Hofhansl commented on HBASE-6505:
--------------------------------------
Thanks Andy.
I do have a new patch that uses a ReferenceMap (from the common collections
library) with hard keys and weak values (where the key would be the class name
and the value be the class's map).
As long as at least one RegionEnvironment exists to hold on to its reference of
its map the reference will not be removed from the ReferenceMap (and thus can
be shared by other RegionEnvironment for the same class), which is exactly what
we want here (and much better than reference counting). When it happens that
all Envs for a specific class are blacklisted they will eventually be garbage
collected, which then allows the map entry to be collected.
Patch with test coming momentarily.
If you think that part is overkill and just makes it harder to understand -
which might very well be the case, I can easily revert back to the model I had
before.
> Investigate shared RegionObserver state
> ---------------------------------------
>
> Key: HBASE-6505
> URL: https://issues.apache.org/jira/browse/HBASE-6505
> Project: HBase
> Issue Type: Sub-task
> Reporter: Lars Hofhansl
> Assignee: Lars Hofhansl
> Fix For: 0.96.0, 0.94.2
>
> Attachments: 6505-v2.txt, 6505.txt
>
>
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira