You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@asterixdb.apache.org by "abdullah alamoudi (Code Review)" <do...@asterixdb.incubator.apache.org> on 2017/02/08 23:01:37 UTC

Change in asterixdb[master]: Change name resolution order to Node name -> DNS

abdullah alamoudi has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/1491

Change subject: Change name resolution order to Node name -> DNS
......................................................................

Change name resolution order to Node name -> DNS

Change-Id: I2bbfc8d9d8469c444f6c70bd3a77654892aeb42f
---
M asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/NodeResolver.java
1 file changed, 12 insertions(+), 24 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb refs/changes/91/1491/1

diff --git a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/NodeResolver.java b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/NodeResolver.java
index 9970f27..84346c4 100644
--- a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/NodeResolver.java
+++ b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/NodeResolver.java
@@ -38,46 +38,34 @@
 public class NodeResolver implements INodeResolver {
     //TODO: change this call and replace by calling AsterixClusterProperties
     private static final Random random = new Random();
-    private static final Map<InetAddress, Set<String>> ncMap = new HashMap<InetAddress, Set<String>>();
-    private static final Set<String> ncs = new HashSet<String>();
+    private static final Map<InetAddress, Set<String>> ncMap = new HashMap<>();
+    private static final Set<String> ncs = new HashSet<>();
 
     @Override
     public String resolveNode(String value) throws AsterixException {
-        UnknownHostException uhe = null;
         try {
             if (ncMap.isEmpty()) {
                 NodeResolver.updateNCs();
+            }
+            if (ncs.contains(value)) {
+                return value;
+            } else {
+                NodeResolver.updateNCs();
+                if (ncs.contains(value)) {
+                    return value;
+                }
             }
             InetAddress ipAddress = null;
             try {
                 ipAddress = InetAddress.getByName(value);
             } catch (UnknownHostException e) {
-                uhe = e;
-            }
-            if (ipAddress == null) {
-                if (ncs.contains(value)) {
-                    return value;
-                } else {
-                    NodeResolver.updateNCs();
-                    if (ncs.contains(value)) {
-                        return value;
-                    } else {
-                        throw new AsterixException(ErrorCode.NODE_RESOLVER_COULDNT_RESOLVE_ADDRESS, uhe, value,
-                                ncs.toString());
-                    }
-                }
-
+                throw new AsterixException(ErrorCode.NODE_RESOLVER_UNABLE_RESOLVE_HOST, e, value);
             }
             Set<String> nodeControllers = ncMap.get(ipAddress);
             if (nodeControllers == null || nodeControllers.isEmpty()) {
                 throw new AsterixException(ErrorCode.NODE_RESOLVER_NO_NODE_CONTROLLERS, value);
             }
-            String chosenNCId = nodeControllers.toArray(new String[] {})[random.nextInt(nodeControllers.size())];
-            return chosenNCId;
-        } catch (UnknownHostException e) {
-            throw new AsterixException(ErrorCode.NODE_RESOLVER_UNABLE_RESOLVE_HOST, value);
-        } catch (AsterixException ae) {
-            throw ae;
+            return nodeControllers.toArray(new String[] {})[random.nextInt(nodeControllers.size())];
         } catch (Exception e) {
             throw new AsterixException(e);
         }

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1491
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I2bbfc8d9d8469c444f6c70bd3a77654892aeb42f
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: abdullah alamoudi <ba...@gmail.com>

Change in asterixdb[master]: Change name resolution order to Node name -> DNS

Posted by "Yingyi Bu (Code Review)" <do...@asterixdb.incubator.apache.org>.
Yingyi Bu has posted comments on this change.

Change subject: Change name resolution order to Node name -> DNS
......................................................................


Patch Set 2: Code-Review+2

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1491
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I2bbfc8d9d8469c444f6c70bd3a77654892aeb42f
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: abdullah alamoudi <ba...@gmail.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Yingyi Bu <bu...@gmail.com>
Gerrit-HasComments: No

Change in asterixdb[master]: Change name resolution order to Node name -> DNS

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: Change name resolution order to Node name -> DNS
......................................................................


Patch Set 2: BAD+1

BAD Compatibility Tests Successful

https://asterix-jenkins.ics.uci.edu/job/asterixbad-compat/496/ : SUCCESS

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1491
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I2bbfc8d9d8469c444f6c70bd3a77654892aeb42f
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: abdullah alamoudi <ba...@gmail.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Yingyi Bu <bu...@gmail.com>
Gerrit-HasComments: No

Change in asterixdb[master]: Change name resolution order to Node name -> DNS

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: Change name resolution order to Node name -> DNS
......................................................................


Patch Set 2: Integration-Tests+1

Integration Tests Successful

https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/1832/ : SUCCESS

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1491
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I2bbfc8d9d8469c444f6c70bd3a77654892aeb42f
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: abdullah alamoudi <ba...@gmail.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Yingyi Bu <bu...@gmail.com>
Gerrit-HasComments: No

Change in asterixdb[master]: Change name resolution order to Node name -> DNS

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: Change name resolution order to Node name -> DNS
......................................................................


Patch Set 2: Integration-Tests-1

Integration Tests Failed

https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/1830/ : UNSTABLE

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1491
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I2bbfc8d9d8469c444f6c70bd3a77654892aeb42f
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: abdullah alamoudi <ba...@gmail.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Yingyi Bu <bu...@gmail.com>
Gerrit-HasComments: No

Change in asterixdb[master]: Change name resolution order to Node name -> DNS

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: Change name resolution order to Node name -> DNS
......................................................................


Patch Set 2:

Integration Tests Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/1832/

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1491
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I2bbfc8d9d8469c444f6c70bd3a77654892aeb42f
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: abdullah alamoudi <ba...@gmail.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Yingyi Bu <bu...@gmail.com>
Gerrit-HasComments: No

Change in asterixdb[master]: Change name resolution order to Node name -> DNS

Posted by "Yingyi Bu (Code Review)" <do...@asterixdb.incubator.apache.org>.
Yingyi Bu has submitted this change and it was merged.

Change subject: Change name resolution order to Node name -> DNS
......................................................................


Change name resolution order to Node name -> DNS

Change-Id: I2bbfc8d9d8469c444f6c70bd3a77654892aeb42f
Reviewed-on: https://asterix-gerrit.ics.uci.edu/1491
Sonar-Qube: Jenkins <je...@fulliautomatix.ics.uci.edu>
Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
BAD: Jenkins <je...@fulliautomatix.ics.uci.edu>
Reviewed-by: Yingyi Bu <bu...@gmail.com>
Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>
---
M asterixdb/asterix-common/src/main/java/org/apache/asterix/common/exceptions/ErrorCode.java
M asterixdb/asterix-common/src/main/resources/asx_errormsg/en.properties
M asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/NodeResolver.java
3 files changed, 12 insertions(+), 26 deletions(-)

Approvals:
  Yingyi Bu: Looks good to me, approved
  Jenkins: Verified; No violations found; No violations found; Verified



diff --git a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/exceptions/ErrorCode.java b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/exceptions/ErrorCode.java
index 22c080a..5ae313d 100644
--- a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/exceptions/ErrorCode.java
+++ b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/exceptions/ErrorCode.java
@@ -108,7 +108,6 @@
     public static final int UNKNOWN_RECORD_FORMAT_FOR_META_PARSER = 3027;
     public static final int LIBRARY_JAVA_JOBJECTS_FIELD_ALREADY_DEFINED = 3028;
     public static final int LIBRARY_JAVA_JOBJECTS_UNKNOWN_FIELD = 3029;
-    public static final int NODE_RESOLVER_COULDNT_RESOLVE_ADDRESS = 3030;
     public static final int NODE_RESOLVER_NO_NODE_CONTROLLERS = 3031;
     public static final int NODE_RESOLVER_UNABLE_RESOLVE_HOST = 3032;
     public static final int INPUT_RECORD_CONVERTER_DCP_MSG_TO_RECORD_CONVERTER_UNKNOWN_DCP_REQUEST = 3033;
diff --git a/asterixdb/asterix-common/src/main/resources/asx_errormsg/en.properties b/asterixdb/asterix-common/src/main/resources/asx_errormsg/en.properties
index f1e9836..440e2d3 100644
--- a/asterixdb/asterix-common/src/main/resources/asx_errormsg/en.properties
+++ b/asterixdb/asterix-common/src/main/resources/asx_errormsg/en.properties
@@ -93,7 +93,6 @@
 3027 = Unknown record format for a record with meta parser. Did you specify the parameter %1$s
 3028 = Field already defined in %1$s part
 3029 = Unknown field: %1$s
-3030 = Address passed: '%1$s' couldn't be resolved to an ip address and is not an NC id. Existing NCs are %2$s
 3031 = No node controllers found at the address: %1$s
 3032 = Unable to resolve hostname '%1$s' to an IP address
 3033 = Unknown DCP request: %1$s
diff --git a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/NodeResolver.java b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/NodeResolver.java
index 9970f27..84346c4 100644
--- a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/NodeResolver.java
+++ b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/NodeResolver.java
@@ -38,46 +38,34 @@
 public class NodeResolver implements INodeResolver {
     //TODO: change this call and replace by calling AsterixClusterProperties
     private static final Random random = new Random();
-    private static final Map<InetAddress, Set<String>> ncMap = new HashMap<InetAddress, Set<String>>();
-    private static final Set<String> ncs = new HashSet<String>();
+    private static final Map<InetAddress, Set<String>> ncMap = new HashMap<>();
+    private static final Set<String> ncs = new HashSet<>();
 
     @Override
     public String resolveNode(String value) throws AsterixException {
-        UnknownHostException uhe = null;
         try {
             if (ncMap.isEmpty()) {
                 NodeResolver.updateNCs();
+            }
+            if (ncs.contains(value)) {
+                return value;
+            } else {
+                NodeResolver.updateNCs();
+                if (ncs.contains(value)) {
+                    return value;
+                }
             }
             InetAddress ipAddress = null;
             try {
                 ipAddress = InetAddress.getByName(value);
             } catch (UnknownHostException e) {
-                uhe = e;
-            }
-            if (ipAddress == null) {
-                if (ncs.contains(value)) {
-                    return value;
-                } else {
-                    NodeResolver.updateNCs();
-                    if (ncs.contains(value)) {
-                        return value;
-                    } else {
-                        throw new AsterixException(ErrorCode.NODE_RESOLVER_COULDNT_RESOLVE_ADDRESS, uhe, value,
-                                ncs.toString());
-                    }
-                }
-
+                throw new AsterixException(ErrorCode.NODE_RESOLVER_UNABLE_RESOLVE_HOST, e, value);
             }
             Set<String> nodeControllers = ncMap.get(ipAddress);
             if (nodeControllers == null || nodeControllers.isEmpty()) {
                 throw new AsterixException(ErrorCode.NODE_RESOLVER_NO_NODE_CONTROLLERS, value);
             }
-            String chosenNCId = nodeControllers.toArray(new String[] {})[random.nextInt(nodeControllers.size())];
-            return chosenNCId;
-        } catch (UnknownHostException e) {
-            throw new AsterixException(ErrorCode.NODE_RESOLVER_UNABLE_RESOLVE_HOST, value);
-        } catch (AsterixException ae) {
-            throw ae;
+            return nodeControllers.toArray(new String[] {})[random.nextInt(nodeControllers.size())];
         } catch (Exception e) {
             throw new AsterixException(e);
         }

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1491
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I2bbfc8d9d8469c444f6c70bd3a77654892aeb42f
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: abdullah alamoudi <ba...@gmail.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Yingyi Bu <bu...@gmail.com>

Change in asterixdb[master]: Change name resolution order to Node name -> DNS

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: Change name resolution order to Node name -> DNS
......................................................................


Patch Set 2:

Integration Tests Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integration-tests/1830/

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1491
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I2bbfc8d9d8469c444f6c70bd3a77654892aeb42f
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: abdullah alamoudi <ba...@gmail.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Yingyi Bu <bu...@gmail.com>
Gerrit-HasComments: No

Change in asterixdb[master]: Change name resolution order to Node name -> DNS

Posted by "abdullah alamoudi (Code Review)" <do...@asterixdb.incubator.apache.org>.
abdullah alamoudi has uploaded a new patch set (#2).

Change subject: Change name resolution order to Node name -> DNS
......................................................................

Change name resolution order to Node name -> DNS

Change-Id: I2bbfc8d9d8469c444f6c70bd3a77654892aeb42f
---
M asterixdb/asterix-common/src/main/java/org/apache/asterix/common/exceptions/ErrorCode.java
M asterixdb/asterix-common/src/main/resources/asx_errormsg/en.properties
M asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/NodeResolver.java
3 files changed, 12 insertions(+), 26 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb refs/changes/91/1491/2
-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1491
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I2bbfc8d9d8469c444f6c70bd3a77654892aeb42f
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: abdullah alamoudi <ba...@gmail.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Yingyi Bu <bu...@gmail.com>

Change in asterixdb[master]: Change name resolution order to Node name -> DNS

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: Change name resolution order to Node name -> DNS
......................................................................


Patch Set 1:

Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/4216/

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1491
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I2bbfc8d9d8469c444f6c70bd3a77654892aeb42f
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: abdullah alamoudi <ba...@gmail.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Yingyi Bu <bu...@gmail.com>
Gerrit-HasComments: No

Change in asterixdb[master]: Change name resolution order to Node name -> DNS

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: Change name resolution order to Node name -> DNS
......................................................................


Patch Set 2:

Build Started https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-notopic/4217/

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1491
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I2bbfc8d9d8469c444f6c70bd3a77654892aeb42f
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: abdullah alamoudi <ba...@gmail.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Yingyi Bu <bu...@gmail.com>
Gerrit-HasComments: No

Change in asterixdb[master]: Change name resolution order to Node name -> DNS

Posted by "Jenkins (Code Review)" <do...@asterixdb.incubator.apache.org>.
Jenkins has posted comments on this change.

Change subject: Change name resolution order to Node name -> DNS
......................................................................


Patch Set 2:

BAD Compatibility Tests Started https://asterix-jenkins.ics.uci.edu/job/asterixbad-compat/496/

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1491
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I2bbfc8d9d8469c444f6c70bd3a77654892aeb42f
Gerrit-PatchSet: 2
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: abdullah alamoudi <ba...@gmail.com>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Yingyi Bu <bu...@gmail.com>
Gerrit-HasComments: No