phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thomas D'Silva (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (PHOENIX-3113) Automatic build of async index will happen even if mapreduce.framework.name is not set in any configuration
Date Wed, 27 Jul 2016 00:51:20 GMT

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

Thomas D'Silva updated PHOENIX-3113:
------------------------------------
    Attachment: PHOENIX-3113-v4.patch

[~jamestaylor]  Can you please review?

I modified AsyncImmutableIndexIT to extend BaseOwnClusterHBaseManagedTimeIT. I also modified
MetadataClient.buildIndex to handle txn tables

{code}
-                if (ScanUtil.isDefaultTimeRange(scan.getTimeRange())) {
+                if (index.isTransactional()) {
+                    scan.setAttribute(BaseScannerRegionObserver.TX_SCN, Bytes.toBytes(TransactionUtil.convertToNanoseconds(index.getTimeStamp()+1)));
+                }
+                else if (ScanUtil.isDefaultTimeRange(scan.getTimeRange())) {
{code}

> 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
>
>         Attachments: PHOENIX-3113-v4.patch, PHOENIX-3113_test_wip.patch, phoenix-3113-v2.patch,
phoenix-3113-v3.patch, phoenix-3113.patch
>
>
> 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)

Mime
View raw message