ATLAS-2786: updated HBase client to use all zookeeper entries

(cherry picked from commit 2f39428313136b765dbab42a1ee2e6521695d690)


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

Branch: refs/heads/branch-1.0
Commit: 5b5788e9c5ae1c043c4bf52cedbf8b586aa93d90
Parents: 3375e4f
Author: Madhan Neethiraj <mad...@apache.org>
Authored: Fri Sep 28 08:14:54 2018 -0700
Committer: Ashutosh Mestry <ames...@hortonworks.com>
Committed: Thu Nov 1 15:43:00 2018 -0700

----------------------------------------------------------------------
 .../org/apache/atlas/ApplicationProperties.java   |  9 +++++++++
 .../audit/HBaseBasedAuditRepository.java          | 18 +++++++++++-------
 2 files changed, 20 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/atlas/blob/5b5788e9/intg/src/main/java/org/apache/atlas/ApplicationProperties.java
----------------------------------------------------------------------
diff --git a/intg/src/main/java/org/apache/atlas/ApplicationProperties.java 
b/intg/src/main/java/org/apache/atlas/ApplicationProperties.java
index 53be543..1d24ee4 100644
--- a/intg/src/main/java/org/apache/atlas/ApplicationProperties.java
+++ b/intg/src/main/java/org/apache/atlas/ApplicationProperties.java
@@ -19,6 +19,7 @@ package org.apache.atlas;
 
 import org.apache.atlas.security.InMemoryJAASConfiguration;
 import org.apache.commons.configuration.Configuration;
+import org.apache.commons.configuration.ConfigurationConverter;
 import org.apache.commons.configuration.ConfigurationException;
 import org.apache.commons.configuration.PropertiesConfiguration;
 import org.apache.commons.lang.StringUtils;
@@ -32,6 +33,7 @@ import java.io.InputStream;
 import java.net.URL;
 import java.util.AbstractMap.SimpleEntry;
 import java.util.Iterator;
+import java.util.Properties;
 
 /**
  * Application properties used by Atlas.
@@ -135,6 +137,13 @@ public final class ApplicationProperties extends 
PropertiesConfiguration {
         return inConf.subset(prefix);
     }
 
+    public static Properties getSubsetAsProperties(Configuration inConf, 
String prefix) {
+        Configuration subset = inConf.subset(prefix);
+        Properties   ret     = ConfigurationConverter.getProperties(subset);
+
+        return ret;
+    }
+
     public static Class getClass(Configuration configuration, String 
propertyName, String defaultValue,
                                  Class assignableClass) throws AtlasException {
         try {

http://git-wip-us.apache.org/repos/asf/atlas/blob/5b5788e9/repository/src/main/java/org/apache/atlas/repository/audit/HBaseBasedAuditRepository.java
----------------------------------------------------------------------
diff --git 
a/repository/src/main/java/org/apache/atlas/repository/audit/HBaseBasedAuditRepository.java
 
b/repository/src/main/java/org/apache/atlas/repository/audit/HBaseBasedAuditRepository.java
index 65686ea..d0ff229 100644
--- 
a/repository/src/main/java/org/apache/atlas/repository/audit/HBaseBasedAuditRepository.java
+++ 
b/repository/src/main/java/org/apache/atlas/repository/audit/HBaseBasedAuditRepository.java
@@ -66,6 +66,7 @@ import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
+import java.util.Properties;
 
 import static org.apache.atlas.EntityAuditEvent.EntityAuditAction.TAG_ADD;
 import static org.apache.atlas.EntityAuditEvent.EntityAuditAction.TAG_DELETE;
@@ -505,14 +506,17 @@ public class HBaseBasedAuditRepository extends 
AbstractStorageBasedAuditReposito
      * @param atlasConf
      */
     public static org.apache.hadoop.conf.Configuration 
getHBaseConfiguration(Configuration atlasConf) throws AtlasException {
-        Configuration subsetAtlasConf =
-                ApplicationProperties.getSubsetConfiguration(atlasConf, 
CONFIG_PREFIX);
-        org.apache.hadoop.conf.Configuration hbaseConf = 
HBaseConfiguration.create();
-        Iterator<String> keys = subsetAtlasConf.getKeys();
-        while (keys.hasNext()) {
-            String key = keys.next();
-            hbaseConf.set(key, subsetAtlasConf.getString(key));
+        Properties                           properties = 
ApplicationProperties.getSubsetAsProperties(atlasConf, CONFIG_PREFIX);
+        org.apache.hadoop.conf.Configuration hbaseConf  = 
HBaseConfiguration.create();
+
+        for (String key : properties.stringPropertyNames()) {
+            String value = properties.getProperty(key);
+
+            LOG.info("adding HBase configuration: {}={}", key, value);
+
+            hbaseConf.set(key, value);
         }
+
         return hbaseConf;
     }
 

Reply via email to