atlas-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From yhema...@apache.org
Subject incubator-atlas git commit: ATLAS-885 optimize HBaseStoreManager to avoid expensive HTable instantiation every 5 seconds (madhan.neethiraj via yhemanth)
Date Thu, 09 Jun 2016 11:09:53 GMT
Repository: incubator-atlas
Updated Branches:
  refs/heads/master 94a8db33a -> 5ab199511


ATLAS-885 optimize HBaseStoreManager to avoid expensive HTable instantiation every 5 seconds
(madhan.neethiraj via yhemanth)


Project: http://git-wip-us.apache.org/repos/asf/incubator-atlas/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-atlas/commit/5ab19951
Tree: http://git-wip-us.apache.org/repos/asf/incubator-atlas/tree/5ab19951
Diff: http://git-wip-us.apache.org/repos/asf/incubator-atlas/diff/5ab19951

Branch: refs/heads/master
Commit: 5ab199511898ab195892152e00679ebe560dae17
Parents: 94a8db3
Author: Hemanth Yamijala <hyamijala@hortonworks.com>
Authored: Thu Jun 9 16:39:44 2016 +0530
Committer: Hemanth Yamijala <hyamijala@hortonworks.com>
Committed: Thu Jun 9 16:39:44 2016 +0530

----------------------------------------------------------------------
 release-log.txt                                      |  1 +
 .../titan/diskstorage/hbase/HBaseStoreManager.java   | 15 ++++++++++++---
 .../titan/diskstorage/hbase/HTable0_98.java          |  5 +++++
 .../titan/diskstorage/hbase/HTable1_0.java           |  5 +++++
 .../titan/diskstorage/hbase/TableMask.java           |  1 +
 5 files changed, 24 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-atlas/blob/5ab19951/release-log.txt
----------------------------------------------------------------------
diff --git a/release-log.txt b/release-log.txt
index e3554ee..a43ac40 100644
--- a/release-log.txt
+++ b/release-log.txt
@@ -22,6 +22,7 @@ ATLAS-409 Atlas will not import avro tables with schema read from a file
(dosset
 ATLAS-379 Create sqoop and falcon metadata addons (venkatnrangan,bvellanki,sowmyaramesh via
shwethags)
 
 ALL CHANGES:
+ATLAS-885 optimize HBaseStoreManager to avoid expensive HTable instantiation every 5 seconds
(madhan.neethiraj via yhemanth)
 ATLAS-878 UI: Not showing details of SD, DB and COLUMNS (saqeeb.s via shwethags)
 ATLAS-853 User's name to be mentioned in the top user drop down (saqeeb.s via shwethags)
 ATLAS-867 Excessive logs: default log level should be set to 'info'; currently it is 'debug'
(svimal2106 via sumasai )

http://git-wip-us.apache.org/repos/asf/incubator-atlas/blob/5ab19951/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java
----------------------------------------------------------------------
diff --git a/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java
b/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java
index 52f28af..a94a7e4 100644
--- a/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java
+++ b/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java
@@ -347,6 +347,11 @@ public class HBaseStoreManager extends DistributedStoreManager implements
KeyCol
 
     @Override
     public Deployment getDeployment() {
+        return Deployment.REMOTE;
+
+        /* If just one of the regions for titan table is in the localhost,
+         * this method returns Deployment.LOCAL - which does not sound right.
+         *
         List<KeyRange> local;
         try {
             local = getLocalKeyPartition();
@@ -355,6 +360,8 @@ public class HBaseStoreManager extends DistributedStoreManager implements
KeyCol
             // propagating StorageException might be a better approach
             throw new RuntimeException(e);
         }
+        *
+        */
     }
 
     @Override
@@ -506,14 +513,16 @@ public class HBaseStoreManager extends DistributedStoreManager implements
KeyCol
 
         List<KeyRange> result = new LinkedList<KeyRange>();
 
-        HTable table = null;
+        TableMask table = null;
         try {
             ensureTableExists(tableName, getCfNameForStoreName(GraphDatabaseConfiguration.SYSTEM_PROPERTIES_STORE_NAME),
0);
 
-            table = new HTable(hconf, tableName);
+            table = cnx.getTable(tableName);
+
+            HTable hTable = (HTable)table.getTableObject();
 
             Map<KeyRange, ServerName> normed =
-                    normalizeKeyBounds(table.getRegionLocations());
+                    normalizeKeyBounds(hTable.getRegionLocations());
 
             for (Map.Entry<KeyRange, ServerName> e : normed.entrySet()) {
                 if (NetworkUtil.isLocalConnection(e.getValue().getHostname())) {

http://git-wip-us.apache.org/repos/asf/incubator-atlas/blob/5ab19951/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java
----------------------------------------------------------------------
diff --git a/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java
b/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java
index 4ddb2f0..b11532a 100644
--- a/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java
+++ b/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java
@@ -57,4 +57,9 @@ public class HTable0_98 implements TableMask
     {
         table.close();
     }
+
+    @Override
+    public Object getTableObject() {
+        return table;
+    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-atlas/blob/5ab19951/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java
----------------------------------------------------------------------
diff --git a/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java
b/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java
index 5085abb..5c90617 100644
--- a/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java
+++ b/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java
@@ -57,4 +57,9 @@ public class HTable1_0 implements TableMask
     {
         table.close();
     }
+
+    @Override
+    public Object getTableObject() {
+        return table;
+    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-atlas/blob/5ab19951/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java
----------------------------------------------------------------------
diff --git a/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java
b/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java
index dd3d61e..54f8743 100644
--- a/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java
+++ b/titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java
@@ -37,4 +37,5 @@ public interface TableMask extends Closeable
 
     void batch(List<Row> writes, Object[] results) throws IOException, InterruptedException;
 
+    Object getTableObject();
 }


Mime
View raw message