/// <exception cref="System.Exception"/> /// <exception cref="System.IO.IOException"/> public virtual void RestartJournalNode(int i) { MiniJournalCluster.JNInfo info = nodes[i]; JournalNode jn = info.node; Configuration conf = new Configuration(jn.GetConf()); if (jn.IsStarted()) { jn.StopAndJoin(0); } conf.Set(DFSConfigKeys.DfsJournalnodeRpcAddressKey, NetUtils.GetHostPortString(info .ipcAddr)); string uri = info.httpServerURI; if (uri.StartsWith("http://")) { conf.Set(DFSConfigKeys.DfsJournalnodeHttpAddressKey, Sharpen.Runtime.Substring(uri , ("http://".Length))); } else { if (info.httpServerURI.StartsWith("https://")) { conf.Set(DFSConfigKeys.DfsJournalnodeHttpsAddressKey, Sharpen.Runtime.Substring(uri , ("https://".Length))); } } JournalNode newJN = new JournalNode(); newJN.SetConf(conf); newJN.Start(); info.node = newJN; }
public virtual void TestStartStop() { Configuration conf = new Configuration(); MiniJournalCluster c = new MiniJournalCluster.Builder(conf).Build(); try { URI uri = c.GetQuorumJournalURI("myjournal"); string[] addrs = uri.GetAuthority().Split(";"); NUnit.Framework.Assert.AreEqual(3, addrs.Length); JournalNode node = c.GetJournalNode(0); string dir = node.GetConf().Get(DFSConfigKeys.DfsJournalnodeEditsDirKey); NUnit.Framework.Assert.AreEqual(new FilePath(MiniDFSCluster.GetBaseDirectory() + "journalnode-0").GetAbsolutePath(), dir); } finally { c.Shutdown(); } }