Repository: incubator-brooklyn
Updated Branches:
  refs/heads/master dcf14dc21 -> 812e3853c


MongoDB fixes

- MongoDB uses subnet_hostname when adding shards to replicaset
- Fix integration tests when running on localhost locations

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

Branch: refs/heads/master
Commit: a58ad1e25da87c5203a868a692c487f802cf5003
Parents: 5d60b2c
Author: Yavor Yanchev <[email protected]>
Authored: Fri Jul 3 11:17:47 2015 +0300
Committer: Yavor Yanchev <[email protected]>
Committed: Mon Jul 6 16:36:38 2015 +0300

----------------------------------------------------------------------
 .../basic/LocalhostMachineProvisioningLocation.java       | 10 +++++++++-
 .../nosql/mongodb/sharding/MongoDBShardClusterImpl.java   |  2 +-
 2 files changed, 10 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/a58ad1e2/core/src/main/java/brooklyn/location/basic/LocalhostMachineProvisioningLocation.java
----------------------------------------------------------------------
diff --git 
a/core/src/main/java/brooklyn/location/basic/LocalhostMachineProvisioningLocation.java
 
b/core/src/main/java/brooklyn/location/basic/LocalhostMachineProvisioningLocation.java
index 093f85c..64f31f9 100644
--- 
a/core/src/main/java/brooklyn/location/basic/LocalhostMachineProvisioningLocation.java
+++ 
b/core/src/main/java/brooklyn/location/basic/LocalhostMachineProvisioningLocation.java
@@ -238,7 +238,7 @@ public class LocalhostMachineProvisioningLocation extends 
FixedListMachineProvis
             releasePort(null, p);
     }
     
-    public static class LocalhostMachine extends SshMachineLocation {
+    public static class LocalhostMachine extends SshMachineLocation implements 
HasSubnetHostname {
         // declaring this here (as well as on 
LocalhostMachineProvisioningLocation) because:
         //  1. machine.getConfig(key) will not inherit default value of 
machine.getParent()'s key
         //  2. things might instantiate a `LocalhostMachine` without going 
through LocalhostMachineProvisioningLocation
@@ -300,6 +300,14 @@ public class LocalhostMachineProvisioningLocation extends 
FixedListMachineProvis
             super.configure(properties);
             return this;
         }
+        @Override
+        public String getSubnetHostname() {
+           return Networking.getLocalHost().getHostName();
+        }
+        @Override
+        public String getSubnetIp() {
+            return Networking.getLocalHost().getHostAddress();
+        }
     }
 
     private static class SudoChecker {

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/a58ad1e2/software/nosql/src/main/java/brooklyn/entity/nosql/mongodb/sharding/MongoDBShardClusterImpl.java
----------------------------------------------------------------------
diff --git 
a/software/nosql/src/main/java/brooklyn/entity/nosql/mongodb/sharding/MongoDBShardClusterImpl.java
 
b/software/nosql/src/main/java/brooklyn/entity/nosql/mongodb/sharding/MongoDBShardClusterImpl.java
index 47c32ae..281f1c1 100644
--- 
a/software/nosql/src/main/java/brooklyn/entity/nosql/mongodb/sharding/MongoDBShardClusterImpl.java
+++ 
b/software/nosql/src/main/java/brooklyn/entity/nosql/mongodb/sharding/MongoDBShardClusterImpl.java
@@ -146,7 +146,7 @@ public class MongoDBShardClusterImpl extends 
DynamicClusterImpl implements Mongo
                     
                     MongoDBServer primary = 
replicaSet.getAttribute(MongoDBReplicaSet.PRIMARY_ENTITY);
                     if (primary != null) {
-                        String addr = 
Strings.removeFromStart(primary.getAttribute(MongoDBServer.MONGO_SERVER_ENDPOINT),
 "http://";);
+                        String addr = String.format("%s:%d", 
primary.getAttribute(MongoDBServer.SUBNET_HOSTNAME), 
primary.getAttribute(MongoDBServer.PORT));
                         String replicaSetURL = ((MongoDBReplicaSet) 
replicaSet).getName() + "/" + addr;
                         boolean added = client.addShardToRouter(replicaSetURL);
                         if (added) {

Reply via email to