[
https://issues.apache.org/jira/browse/PHOENIX-3119?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Loknath Priyatham Teja Singamsetty updated PHOENIX-3119:
---------------------------------------------------------
Comment: was deleted
(was: [~jamestaylor]
The config values of
{code} protected static final Configuration config =
HBaseConfiguration.create(); {code}
are getting changed as part of setupTestCluster(..,overrideProps) in the
BaseTest.java.
Will discuss and share my observations in next discussion.)
> Setup of mini cluster after tear down still applies older cluster configs in
> BaseTest.java
> ------------------------------------------------------------------------------------------
>
> Key: PHOENIX-3119
> URL: https://issues.apache.org/jira/browse/PHOENIX-3119
> Project: Phoenix
> Issue Type: Bug
> Reporter: Loknath Priyatham Teja Singamsetty
> Assignee: Loknath Priyatham Teja Singamsetty
>
> Problem:
> ------------
> Setup of mini cluster after tear down still applies older cluster configs in
> BaseTest.java
> Root Cause:
> ---------------
> In BaseTest.java, we have static final instance of Configuration object
> initialised:
> protected static final Configuration config = HBaseConfiguration.create();
> The contents of this final instance of Configuration object is being modified
> dynamically inside setUpConfigForMiniCluster() -> setDefaultTestConfig(conf,
> overrideProps),
> private static void setDefaultTestConfig(Configuration conf,
> ReadOnlyProps overrideProps) {
> ConfigUtil.setReplicationConfigIfAbsent(conf);
> QueryServices services = new PhoenixTestDriver().getQueryServices();
> for (Entry<String,String> entry : services.getProps()) {
> conf.set(entry.getKey(), entry.getValue());
> }
> //no point doing sanity checks when running tests.
> conf.setBoolean("hbase.table.sanity.checks", false);
> // set the server rpc controller and rpc scheduler factory, used to
> configure the cluster
> conf.set(RpcControllerFactory.CUSTOM_CONTROLLER_CONF_KEY,
> DEFAULT_SERVER_RPC_CONTROLLER_FACTORY);
> conf.set(RSRpcServices.REGION_SERVER_RPC_SCHEDULER_FACTORY_CLASS,
> DEFAULT_RPC_SCHEDULER_FACTORY);
>
> // override any defaults based on overrideProps
> for (Entry<String,String> entry : overrideProps) {
> conf.set(entry.getKey(), entry.getValue());
> }
> }
> Solution:
> ------------
> When the static final instance needs to be modified, its better to work on
> clone instance of Configuration object.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)