diff --git a/Ntp.Analyzer.Process/Main.cs b/Ntp.Analyzer.Process/Main.cs index fa187401..a7066535 100644 --- a/Ntp.Analyzer.Process/Main.cs +++ b/Ntp.Analyzer.Process/Main.cs @@ -51,34 +51,39 @@ namespace Ntp.Analyzer.Process public void Run() { - bool reload = true; - while (reload) + try { - var i = new Initializer(configFile, pid, pidFile, name, initlog); - i.Run(); - - if (!i.Ready) - break; - - var c = new Cluster(i.Scheduler, i.Controller, i.Nodes, i.Log); - c.Activate(); - - reload = i.Controller.Reload; - - foreach (Listener l in i.Listeners) - l.Close(); - - LogFactory.Cleanup(); - } - - if (pidFile != null) - { - try + bool reload = true; + while (reload) { - File.Delete(pidFile); + var i = new Initializer(configFile, pid, pidFile, name, initlog); + i.Run(); + + if (!i.Ready) + break; + + var c = new Cluster(i.Scheduler, i.Controller, i.Nodes, i.Log); + c.Activate(); + + reload = i.Controller.Reload; + + foreach (Listener l in i.Listeners) + l.Close(); + + LogFactory.Cleanup(); } - catch (Exception) + } + finally + { + if (pidFile != null) { + try + { + File.Delete(pidFile); + } + catch (Exception) + { + } } } } diff --git a/Ntp.Data.Provider/SqlDatabaseFactory.cs b/Ntp.Data.Provider/SqlDatabaseFactory.cs index a58570d2..82f70ce8 100644 --- a/Ntp.Data.Provider/SqlDatabaseFactory.cs +++ b/Ntp.Data.Provider/SqlDatabaseFactory.cs @@ -43,7 +43,6 @@ namespace Ntp.Data.Provider #if MYSQL return new MySqlFactory(); #else - // TODO: Ensure pid file are deleted throw new ApplicationException("NTP Analyzer was not build wit MySQL support."); #endif case SqlDatabaseProvider.PostgreSql: