public void Should_Yield_Child_Hosts_When_No_Preferred_Host_Defined() { var lbp = new DseLoadBalancingPolicy(new TestLoadBalancingPolicy()); var statement = new TargettedSimpleStatement("Q"); var hosts = lbp.NewQueryPlan(null, statement); CollectionAssert.AreEqual( new[] { "101.0.0.0:9042", "102.0.0.0:9042" }, hosts.Select(h => h.Address.ToString())); }
public void Should_Set_Distance_For_Preferred_Host_To_Local() { var lbp = new DseLoadBalancingPolicy(new TestLoadBalancingPolicy(HostDistance.Ignored)); Assert.AreEqual(HostDistance.Ignored, lbp.Distance(new Host(new IPEndPoint(200L, 9042), ReconnectionPolicy))); var statement = new TargettedSimpleStatement("Q"); // Use 201 as preferred statement.PreferredHost = new Host(new IPEndPoint(201L, 9042), ReconnectionPolicy); lbp.NewQueryPlan(null, statement); Assert.AreEqual(HostDistance.Local, lbp.Distance(statement.PreferredHost)); }
public void Should_Yield_Preferred_Host_First() { var lbp = new DseLoadBalancingPolicy(new TestLoadBalancingPolicy()); var statement = new TargettedSimpleStatement("Q"); statement.PreferredHost = new Host(new IPEndPoint(201, 9042), ReconnectionPolicy); var hosts = lbp.NewQueryPlan(null, statement); CollectionAssert.AreEqual( new[] { "201.0.0.0:9042", "101.0.0.0:9042", "102.0.0.0:9042" }, hosts.Select(h => h.Address.ToString())); }
public string FindSparkMaster() { Trace.TraceInformation("GraphMultiNodeTests: FindSparkMaster"); using (var cluster = DseCluster.Builder() .AddContactPoint(TestClusterManager.InitialContactPoint) .WithLoadBalancingPolicy(DseLoadBalancingPolicy.CreateDefault()) .Build()) { var session = cluster.Connect(); var sparksRS = session.Execute(new SimpleStatement("call DseClientTool.getAnalyticsGraphServer();")); var result = sparksRS.ToArray(); var sparkLocation = ((SortedDictionary <string, string>)result.First()[0])["location"]; var sparkHost = sparkLocation.Split(':')[0]; return(sparkHost); } }
public void Should_Contact_Spark_Master_Directly() { PrepareForSparkTest(_testCluster); Trace.TraceInformation("GraphMultiNodeTests: Should_Contact_Spark_Master_Directly"); var sparkHost = FindSparkMaster(); using (var cluster = DseCluster.Builder() .AddContactPoint(TestClusterManager.InitialContactPoint) .WithGraphOptions(new GraphOptions().SetName(GraphName)) .WithLoadBalancingPolicy(DseLoadBalancingPolicy.CreateDefault()) .Build()) { var session = cluster.Connect(); for (var i = 0; i < 10; i++) { var rs = session.ExecuteGraph(new SimpleGraphStatement("g.V().count()").SetGraphSourceAnalytics().SetReadTimeoutMillis(120000)); Assert.AreEqual(sparkHost, rs.Info.QueriedHost.Address.ToString()); } } }
public void Should_Contact_Spark_Master_Directly() { var graphName = "name1"; using (var cluster = DseCluster.Builder().AddContactPoint(CcmHelper.InitialContactPoint).Build()) { var session = cluster.Connect(); session.ExecuteGraph(new SimpleGraphStatement(string.Format("system.graph(\"{0}\")" + ".option(\"graph.schema_mode\").set(com.datastax.bdp.graph.api.model.Schema.Mode.Production)" + ".ifNotExists().create()", graphName))); Thread.Sleep(2000); // sleep 2 seconds to allow graph to propagate to all nodes (DSP-9376). session.ExecuteGraph(new SimpleGraphStatement(ClassicSchemaGremlinQuery).SetGraphName(graphName)); Thread.Sleep(2000); session.ExecuteGraph(new SimpleGraphStatement(ClassicLoadGremlinQuery).SetGraphName(graphName)); } using (var cluster = DseCluster.Builder() .AddContactPoint(CcmHelper.InitialContactPoint) .WithGraphOptions(new GraphOptions().SetName(graphName)) .WithLoadBalancingPolicy(DseLoadBalancingPolicy.CreateDefault()) .Build()) { var session = cluster.Connect(); var sparksRS = session.Execute(new SimpleStatement("call DseClientTool.getAnalyticsGraphServer();")); var result = sparksRS.ToArray(); var sparkLocation = ((SortedDictionary <string, string>)result.First()[0])["location"]; var sparkHost = sparkLocation.Split(':')[0]; for (var i = 0; i < 10; i++) { var rs = session.ExecuteGraph(new SimpleGraphStatement("g.V().count()").SetGraphSourceAnalytics().SetReadTimeoutMillis(120000)); Assert.AreEqual(sparkHost, rs.Info.QueriedHost.Address.ToString()); } } }