phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Geoffrey Jacoby (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (PHOENIX-2025) Phoenix-core's hbase-default.xml prevents HBaseTestingUtility from starting up in client apps
Date Thu, 04 Jun 2015 23:15:39 GMT

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

Geoffrey Jacoby updated PHOENIX-2025:
-------------------------------------
    Description: 
Phoenix seems to have long had its own version of hbase-default.xml as a test resource in
phoenix-core with a single setting to override hbase.defaults.for.version.skip to true. Sometime
around Phoenix 4.3, phoenix-core seems to have been split into a main jar and a test jar,
and the hbase-default.xml went into the test jar.

The odd result of this is that in client apps that include the test jar, the classloader in
HBaseConfiguration.create() now sees Phoenix's hbase-default.xml, rather than HBase's, and
creates a Configuration object without HBase's defaults. One major consequence of this is
that the HBaseTestingUtility can't start up, because it relies on those HBase defaults being
set. This is a huge problem in a client app that includes the phoenix-core test jar in order
to make use of the PhoenixTestDriver and BaseTest classes; the upgrade to 4.3 breaks all tests
using the HBaseTestingUtility. 

  was:
Phoenix seems to have long had its own version of hbase-default.xml as a test resource in
phoenix-core with a single setting to override hbase.defaults.for.version.skip to true. Sometime
around Phoenix 4.3, phoenix-core seems to have been split into a main jar and a test jar,
and the hbase-default.xml went into the test jar.

The odd result of this is that in client apps that include the test jar, the classloader in
HBaseConfiguration.create() now sees Phoenix's hbase-default.xml, rather than HBase's, and
creates a Configuration object without HBase's defaults. One major consequence of this is
that the HBaseTestingUtility can't start up, because it relies on those HBase defaults being
set. This is a huge problem in a client app that includes the phoenix-core test jar in order
to make use of the PhoenixTestDriver and BaseTest classes; the upgrade to 4.3 breaks all tests
using the HBaseTestingUtility. 

I've verified that phoenix-core's own tests don't pass if its internal hbase-default.xml is
missing (ZK has problems starting up), and that renaming it to hbase-site.xml doesn't seem
to fix the problem either. I looked around for a central point in code to manually set the
hbase.defaults.for.version.skip flag, but couldn't find one; BaseTest didn't seem to cover
all the needed test cases. 


> Phoenix-core's hbase-default.xml prevents HBaseTestingUtility from starting up in client
apps
> ---------------------------------------------------------------------------------------------
>
>                 Key: PHOENIX-2025
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-2025
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.3.0
>            Reporter: Geoffrey Jacoby
>
> Phoenix seems to have long had its own version of hbase-default.xml as a test resource
in phoenix-core with a single setting to override hbase.defaults.for.version.skip to true.
Sometime around Phoenix 4.3, phoenix-core seems to have been split into a main jar and a test
jar, and the hbase-default.xml went into the test jar.
> The odd result of this is that in client apps that include the test jar, the classloader
in HBaseConfiguration.create() now sees Phoenix's hbase-default.xml, rather than HBase's,
and creates a Configuration object without HBase's defaults. One major consequence of this
is that the HBaseTestingUtility can't start up, because it relies on those HBase defaults
being set. This is a huge problem in a client app that includes the phoenix-core test jar
in order to make use of the PhoenixTestDriver and BaseTest classes; the upgrade to 4.3 breaks
all tests using the HBaseTestingUtility. 



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

Mime
View raw message