public void MyTestInitialize() { // check whether it is in the cluster environment or not if (!Constants.isClusterEnv(sdb)) { return; } // init create_node2_flag = false; // argument groupName2 = config.conf.Groups[3].GroupName; hostName2 = config.conf.Groups[3].Nodes[1].HostName; port2 = config.conf.Groups[3].Nodes[1].Port; dbpath2 = config.conf.Groups[3].Nodes[1].DBPath; // drop the exist group group = sdb.GetReplicaGroup(groupName); if (null == group) { return; } // create a node BsonDocument options = new BsonDocument(); options.Add("logfilenum", 1); node2 = group.CreateNode(hostName2, port2, dbpath2, options); Assert.IsNotNull(node2); node2.Start(); }
public void createRG() { // 1. prepare a empty coord by manually // 2. get connection Sequoiadb db = new Sequoiadb("192.168.20.165", 11810); db.Connect(); //db.ListCollections(); // 3. create catalog group Dictionary <string, string> map = new Dictionary <String, String>(); map.Add("businessname", "abc"); map.Add("diaglevel", "5"); map.Add("omaddr", "susetzb:11830"); // db.createReplicaCataGroup("192.168.20.165", 11820, "/opt/sequoiadb/database/cata/11820", map); BsonDocument obj = new BsonDocument(); obj.Add("businessname", "abc"); obj.Add("diaglevel", 5); obj.Add("omaddr", "susetzb:12345"); db.CreateReplicaCataGroup("192.168.20.165", 11820, "/opt/sequoiadb/database/cata/11820", obj); ReplicaGroup rg = db.GetReplicaGroup("SYSCatalogGroup"); SequoiaDB.Node node = rg.CreateNode("192.168.20.165", 11830, "/opt/sequoiadb/database/cata/11830", map); node.Start(); }
public void MyTestInitialize() { // check whether it is in the cluster environment or not if (!Constants.isClusterEnv(sdb)) { Console.WriteLine("removeRG is for cluster environment only."); return; } // argument groupName = config.conf.Groups[0].GroupName; hostName = config.conf.Groups[0].Nodes[0].HostName; port = config.conf.Groups[0].Nodes[0].Port; dbpath = config.conf.Groups[0].Nodes[0].DBPath; // drop the exist group group = sdb.GetReplicaGroup(groupName); if (group != null) { // drop all the cs in current group, and then remove this group int nodeNum = group.GetNodeNum(SDBConst.NodeStatus.SDB_NODE_ALL); if (nodeNum > 0) { SequoiaDB.Node nd = group.GetMaster(); Sequoiadb db = new Sequoiadb(nd.HostName, nd.Port); Assert.IsTrue(nd.Start()); db.Connect(config.conf.UserName, config.conf.Password); DBCursor cursor = db.ListCollectionSpaces(); while (cursor.Next() != null) { BsonDocument obj = cursor.Current(); string temp = null; if (obj.Contains("Name")) { temp = obj["Name"].AsString; } sdb.DropCollectionSpace(temp); } db.Disconnect(); } try { sdb.RemoveReplicaGroup(group.GroupName); } catch (BaseException e) { string errInfo = e.Message; Console.WriteLine("Error code is: " + errInfo); } } // create a new group group = sdb.CreateReplicaGroup(groupName); Assert.IsTrue(groupName.Equals(group.GroupName)); // create a node Dictionary <string, string> map = new Dictionary <string, string>(); map.Add("diaglevel", config.conf.Groups[0].Nodes[0].DiagLevel); node = group.CreateNode(hostName, port, dbpath, map); Assert.IsNotNull(node); group.Start(); }
public void RGTest() { String hostName = "192.168.20.166"; int port = 45000; // check whether it is in the cluster environment or not if (!Constants.isClusterEnv(sdb)) { Console.WriteLine("It's not a cluster environment."); return; } group = sdb.GetReplicaGroup(groupName); if (group == null) { group = sdb.CreateReplicaGroup(groupName); } ReplicaGroup group1 = sdb.GetReplicaGroup(group.GroupID); Assert.AreEqual(group.GroupName, group1.GroupName); ReplicaGroup group2 = sdb.GetReplicaGroup(1); Assert.IsNotNull(group2); node = group.GetNode(hostName, port); if (node == null) { string dbpath = config.conf.Groups[0].Nodes[0].DBPath; Dictionary <string, string> map = new Dictionary <string, string>(); map.Add("diaglevel", config.conf.Groups[0].Nodes[0].DiagLevel); node = group.CreateNode(hostName, port, dbpath, map); } group.Start(); int num = group.GetNodeNum(SDBConst.NodeStatus.SDB_NODE_ALL); Assert.IsTrue(num > 0); BsonDocument detail = group.GetDetail(); string gn = detail["GroupName"].AsString; Assert.IsTrue(groupName.Equals(gn)); SequoiaDB.Node master = group.GetMaster(); Assert.IsNotNull(master); SequoiaDB.Node slave = group.GetSlave(); Assert.IsNotNull(slave); Assert.IsTrue(node.Stop()); Assert.IsTrue(node.Start()); SDBConst.NodeStatus status = node.GetStatus(); Assert.IsTrue(status == SDBConst.NodeStatus.SDB_NODE_ACTIVE); Sequoiadb db = node.Connect(config.conf.UserName, config.conf.Password); db.Disconnect(); node.Stop(); group.Stop(); }
public void KeepAlive_Test() { Sequoiadb db = null; ReplicaGroup rg = null; SequoiaDB.Node node = null; db = new Sequoiadb("192.168.30.121", 11810); db.Connect(); rg = db.GetReplicaGroup("group2"); node = rg.GetNode("ubuntu-hs03", 11840); node.Start(); }
public static void SequoiadbCleamUp() { // check whether it is in the cluster environment or not if (!Constants.isClusterEnv(sdb)) { return; } group = sdb.GetReplicaGroup(groupName); if (null != group) { // drop all the cs in current group, and then remove this group int nodeNum = group.GetNodeNum(SDBConst.NodeStatus.SDB_NODE_ALL); if (nodeNum > 0) { SequoiaDB.Node nd = group.GetMaster(); Sequoiadb db = new Sequoiadb(nd.HostName, nd.Port); Assert.IsTrue(nd.Start()); db.Connect(config.conf.UserName, config.conf.Password); DBCursor cursor = db.ListCollectionSpaces(); while (cursor.Next() != null) { BsonDocument obj = cursor.Current(); string temp = null; if (obj.Contains("Name")) { temp = obj["Name"].AsString; } sdb.DropCollectionSpace(temp); } db.Disconnect(); } Assert.IsTrue(group.Stop()); // remove group try { sdb.RemoveReplicaGroup(group.GroupName); } catch (BaseException e) { string errInfo = e.Message; Console.WriteLine("Error code is: " + errInfo); } } create_node_flag = false; create_node2_flag = false; // disconnect sdb.Disconnect(); }
public void removeRG() { // check whether it is in the cluster environment or not if (!Constants.isClusterEnv(sdb)) { Console.WriteLine("It's not a cluster environment."); return; } // get rg group = sdb.GetReplicaGroup(groupName); if (group == null) { group = sdb.CreateReplicaGroup(groupName); } Assert.IsNotNull(group); // create node1 string hostName1 = config.conf.Groups[1].Nodes[1].HostName; int port1 = config.conf.Groups[1].Nodes[1].Port; string dbPath1 = config.conf.Groups[1].Nodes[1].DBPath; Dictionary <string, string> map1 = new Dictionary <string, string>(); map1.Add("diaglevel", config.conf.Groups[1].Nodes[1].DiagLevel); SequoiaDB.Node node1 = group.CreateNode(hostName1, port1, dbPath1, map1); Assert.IsNotNull(node1); // start node1 Assert.IsTrue(node1.Start()); // remove the newly build node try { group.RemoveNode(hostName1, port1, null); } catch (BsonException e) { string errInfo = e.Message; Console.WriteLine("Error code is: " + errInfo); } group.Stop(); }
public static void SequoiadbInitialize(TestContext testContext) { if (config == null) { config = new Config(); } sdb = new Sequoiadb(config.conf.Coord.Address); sdb.Connect(config.conf.UserName, config.conf.Password); // check whether it is in the cluster environment or not if (!Constants.isClusterEnv(sdb)) { return; } // argument groupName = config.conf.Groups[3].GroupName; hostName = config.conf.Groups[3].Nodes[0].HostName; port = config.conf.Groups[3].Nodes[0].Port; dbpath = config.conf.Groups[3].Nodes[0].DBPath; // drop the exist group group = sdb.GetReplicaGroup(groupName); if (group != null) { // drop all the cs in current group, and then remove this group int nodeNum = group.GetNodeNum(SDBConst.NodeStatus.SDB_NODE_ALL); if (nodeNum > 0) { SequoiaDB.Node nd = group.GetMaster(); Sequoiadb db = new Sequoiadb(nd.HostName, nd.Port); Assert.IsTrue(nd.Start()); db.Connect(config.conf.UserName, config.conf.Password); DBCursor cursor = db.ListCollectionSpaces(); while (cursor.Next() != null) { BsonDocument obj = cursor.Current(); string temp = null; if (obj.Contains("Name")) { temp = obj["Name"].AsString; } sdb.DropCollectionSpace(temp); } db.Disconnect(); } try { sdb.RemoveReplicaGroup(group.GroupName); } catch (BaseException e) { string errInfo = e.Message; Console.WriteLine("Error code is: " + errInfo); } } // create a new group group = sdb.CreateReplicaGroup(groupName); Assert.IsTrue(groupName.Equals(group.GroupName)); create_rg_flag = true; // create a node BsonDocument options = new BsonDocument(); options.Add("logfilenum", 1); node = group.CreateNode(hostName, port, dbpath, options); Assert.IsNotNull(node); node.Start(); create_node_flag = true; }