public void TestSiteRepConfig() { testName = "TestSiteRepConfig"; SetUpTest(true); Configuration.ClearDir(testHome); DatabaseEnvironmentConfig envConfig = new DatabaseEnvironmentConfig(); envConfig.Create = true; envConfig.UseLocking = true; envConfig.UseLogging = true; envConfig.UseMPool = true; envConfig.UseReplication = true; envConfig.UseTxns = true; ReplicationHostAddress addr = new ReplicationHostAddress("localhost:6060"); ReplicationConfig repCfg = new ReplicationConfig(); DbSiteConfig dbSiteConfig = new DbSiteConfig(); dbSiteConfig.Host = addr.Host; dbSiteConfig.Port = addr.Port; dbSiteConfig.LocalSite = true; repCfg.RepmgrSitesConfig.Add(dbSiteConfig); // DatabaseEnvironment.RepInMemory defaults to false. envConfig.RepSystemCfg = repCfg; DatabaseEnvironment env = DatabaseEnvironment.Open(testHome, envConfig); Assert.AreEqual(false, env.RepInMemory); env.Close(); Assert.Less(0, Directory.GetFiles(testHome, "__db.rep.*").Length); // Set RepInMemory as true. Configuration.ClearDir(testHome); repCfg.InMemory = true; envConfig.RepSystemCfg = repCfg; env = DatabaseEnvironment.Open(testHome, envConfig); Assert.AreEqual(true, env.RepInMemory); env.Close(); Assert.AreEqual(0, Directory.GetFiles(testHome, "__db.rep.*").Length); // Set RepInMemory as false. Configuration.ClearDir(testHome); repCfg.InMemory = false; envConfig.RepSystemCfg = repCfg; env = DatabaseEnvironment.Open(testHome, envConfig); Assert.AreEqual(false, env.RepInMemory); env.Close(); Assert.Less(0, Directory.GetFiles(testHome, "__db.rep.*").Length); }
public RepConfig() { ackPolicy = AckPolicy.QUORUM; bulk = false; home = ""; host = new ReplicationHostAddress(); priority = 100; remote = new List <RemoteSite>(); startPolicy = StartPolicy.ELECTION; totalSites = 0; verbose = false; }
public static void ConfirmReplicationHostAddress( XmlElement xmlElem, string name, ReplicationHostAddress address, bool compulsory) { XmlNode xmlNode = XMLReader.GetNode(xmlElem, name); if (xmlNode == null && compulsory == true) { throw new ConfigNotFoundException(name); } else if (xmlNode != null) { string host = XMLReader.GetNode( (XmlElement)xmlNode, "Host").InnerText; uint port = uint.Parse(XMLReader.GetNode( (XmlElement)xmlNode, "Port").InnerText); Assert.AreEqual(host, address.Host); Assert.AreEqual(port, address.Port); } }
public static bool ConfigReplicationHostAddress( XmlElement xmlElem, string name, ref ReplicationHostAddress address, bool compulsory) { XmlNode xmlNode = XMLReader.GetNode( xmlElem, name); if (xmlNode == null && compulsory == false) { return(false); } else if (xmlNode == null && compulsory == true) { throw new ConfigNotFoundException(name); } address.Host = XMLReader.GetNode( (XmlElement)xmlNode, "Host").InnerText; address.Port = uint.Parse(XMLReader.GetNode( (XmlElement)xmlNode, "Port").InnerText); return(true); }
public RemoteSite(string host, uint port, bool isPeer) { this.host = new ReplicationHostAddress(host, port); this.isPeer = isPeer; }