[
https://issues.apache.org/jira/browse/HBASE-11110?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13988143#comment-13988143
]
Gabriel Reid commented on HBASE-11110:
--------------------------------------
{quote}This exact issue won't be a problem in 0.96+ since the relevant code has
changed, but I wonder if it's possible to try Phoenix 4 + HBase 0.98 with that
tool?{quote}
Yes, will do. I'm working on going through some general tool compat tests,
starting with Phoenix 3/HBase 0.94 but will also go on to do the same with
Phoenix 4/HBase 0.98.
> Ability to load FilterList class is dependent on context classloader
> --------------------------------------------------------------------
>
> Key: HBASE-11110
> URL: https://issues.apache.org/jira/browse/HBASE-11110
> Project: HBase
> Issue Type: Bug
> Affects Versions: 0.94.19
> Reporter: Gabriel Reid
> Assignee: Gabriel Reid
> Fix For: 0.94.20
>
> Attachments: HBASE-11110.patch
>
>
> In the 0.94 branch, the FilterList class contains a static call to
> HBaseConfiguration.create(). This create call in turn adds the needed hbase
> resources to the Configuration object, and sets the classloader of the
> Configuration object to be the context classloader of the current thread (if
> it isn't null).
> This approach causes issues if the FilterList class is loaded from a thread
> that has a custom context classloader that doesn't run back up to the main
> application classloader. In this case,
> HBaseConfiguration.checkDefaultsVersion fails because the
> hbase.defaults.for.version configuration value can't be found (because
> hbase-default.xml can't be found by the custom context classloader).
> This is a concrete issue that was discovered via Apache Phoenix within a
> commercial tool, when a (JDBC) connection is opened via a pool, and then
> passed off to a UI thread that has a custom context classloader. The UI
> thread is then the first thing to load FilterList, leading to this issue.
--
This message was sent by Atlassian JIRA
(v6.2#6252)