[
https://issues.apache.org/jira/browse/PHOENIX-3113?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15392174#comment-15392174
]
Loknath Priyatham Teja Singamsetty commented on PHOENIX-3113:
--------------------------------------------------------------
Interesting and awesome catch [[email protected]]. Thanks for pointing the
scenario. This can cause issues when cluster is setup where the region servers
and map-reduce hosts are different. When the mapred-client jar is included, the
"mapred.framework.name" value will be returned as local which is the default
value coming from mapred-default.xml.
> Automatic build of async index will happen even if mapreduce.framework.name
> is not set in any configuration
> -----------------------------------------------------------------------------------------------------------
>
> Key: PHOENIX-3113
> URL: https://issues.apache.org/jira/browse/PHOENIX-3113
> Project: Phoenix
> Issue Type: Bug
> Reporter: Ankit Singhal
> Assignee: Loknath Priyatham Teja Singamsetty
> Priority: Blocker
> Fix For: 4.8.0
>
>
> As per below code, we are starting automatic build of async index even if
> mapreduce.framework.name is not set in any of the configuration(because
> conf.get(QueryServices.MAPRED_FRAMEWORK_NAME) will always return LOCAL as a
> default value).
> This may cause problem in the hbase cluster where mapreduce is not deployed
> or this configuration is not set or included in the classpath.
> {code}
> String hbaseClusterDistributedMode =
> conf.get(QueryServices.HBASE_CLUSTER_DISTRIBUTED_ATTRIB);
> String mapredFrameworkName =
> conf.get(QueryServices.MAPRED_FRAMEWORK_NAME);
> if ((hbaseClusterDistributedMode != null &&
> !hbaseClusterDistributedMode.equals(HBASE_CLUSTER_DISTRIBUTED_CONFIG)) ||
> (mapredFrameworkName != null &&
> !mapredFrameworkName.equals(MAPRED_FRAMEWORK_YARN_CONFIG)))
> {
> LOG.info("Enabling Async Index rebuilder");
> AsyncIndexRebuilderTask asyncIndexRebuilderTask = new
> AsyncIndexRebuilderTask(e.getEnvironment());
> // run async index rebuilder task every 10 secs to rebuild any
> newly created async indexes
> executor.scheduleAtFixedRate(asyncIndexRebuilderTask, 10000,
> rebuildIndexTimeInterval, TimeUnit.MILLISECONDS);
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)