[ https://issues.apache.org/jira/browse/PHOENIX-2025?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14610938#comment-14610938 ]
Geoffrey Jacoby commented on PHOENIX-2025: ------------------------------------------ Renaming src/it/resources/hbase-site.xml to hbase-default.xml, which effectively backs out this change, does allow IndexToolIT to pass. The larger effect of doing that is the same as in the original problem description: downstream projects which need to import phoenix-core-tests wouldn't be able to use the HBaseTestingUtility because phoenix's stub hbase-default.xml will cover the real one in hbase-common (at least not without setting a bunch of config options manually). If this change needs to be temporarily reverted because we're running up against a deadline, I've no objection, but the test failing means that there's something about one or more of HBase's default settings that breaks the test, which seems like the sort of thing that would be good to know about so it can be fixed. :-) Is the test doing something differently from the many other integration tests which I assume are passing? For example, I see that it doesn't inherit from BaseTest or any similar base integration test class, but is manually calling one of BaseTest's config setup methods as a static import. > 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 > Assignee: Geoffrey Jacoby > Fix For: 5.0.0, 4.5.0, 4.4.1 > > Attachments: PHOENIX-2025.patch, PHOENIX-2025_v2.patch > > > 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)