Ankit Singhal created PHOENIX-3113:
--------------------------------------

             Summary: 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
            Priority: Critical
             Fix For: 4.8.0


As per below code, we are starting automatic build of async index even if 
mapreduce.framework.name is not 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)

Reply via email to