You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@carbondata.apache.org by ra...@apache.org on 2019/06/06 03:03:38 UTC

[carbondata] branch master updated: [CARBONDATA-3409] Fix Concurrent dataloading Issue with mv

This is an automated email from the ASF dual-hosted git repository.

ravipesala pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/carbondata.git


The following commit(s) were added to refs/heads/master by this push:
     new 9d02092  [CARBONDATA-3409] Fix Concurrent dataloading Issue with mv
9d02092 is described below

commit 9d0209226eb3be7735da7cd66d88cece0141e7e5
Author: Indhumathi27 <in...@gmail.com>
AuthorDate: Fri May 31 15:53:01 2019 +0530

    [CARBONDATA-3409] Fix Concurrent dataloading Issue with mv
    
    Problem:
    While performing concurrent dataloading to MV datamap, if any of the loads was not able to get TableStatusLock, then because newLoadName and segmentMap was empty, it was doing full rebuild.
    
    Solution:
    If load was not able to take tablestatuslock, then disable the datamap and return
    
    This closes #3252
---
 .../main/java/org/apache/carbondata/core/datamap/DataMapProvider.java  | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/core/src/main/java/org/apache/carbondata/core/datamap/DataMapProvider.java b/core/src/main/java/org/apache/carbondata/core/datamap/DataMapProvider.java
index c4ee49b..6a9d2c5 100644
--- a/core/src/main/java/org/apache/carbondata/core/datamap/DataMapProvider.java
+++ b/core/src/main/java/org/apache/carbondata/core/datamap/DataMapProvider.java
@@ -27,6 +27,7 @@ import org.apache.carbondata.common.logging.LogServiceFactory;
 import org.apache.carbondata.core.constants.CarbonCommonConstants;
 import org.apache.carbondata.core.datamap.dev.DataMapFactory;
 import org.apache.carbondata.core.datamap.status.DataMapSegmentStatusUtil;
+import org.apache.carbondata.core.datamap.status.DataMapStatusManager;
 import org.apache.carbondata.core.locks.ICarbonLock;
 import org.apache.carbondata.core.metadata.AbsoluteTableIdentifier;
 import org.apache.carbondata.core.metadata.schema.table.CarbonTable;
@@ -208,6 +209,8 @@ public abstract class DataMapProvider {
             "Not able to acquire the lock for Table status updation for table " + dataMapSchema
                 .getRelationIdentifier().getDatabaseName() + "." + dataMapSchema
                 .getRelationIdentifier().getTableName());
+        DataMapStatusManager.disableDataMap(dataMapSchema.getDataMapName());
+        return false;
       }
     } finally {
       if (carbonLock.unlock()) {