Resolver Work:

* Don't stall during shutdown
* Properly handle unit test execution
* Handle whitespace when parsing names to resolve
This commit is contained in:
Nik Bougalis
2014-01-14 11:42:37 -08:00
committed by Vinnie Falco
parent e60b28980a
commit 1a6bf88900
4 changed files with 91 additions and 55 deletions

View File

@@ -850,6 +850,8 @@ public:
m_probe.sample (sample_io_service_latency (
m_collectorManager->collector()->make_event (
"ios_latency"), LogPartition::getJournal <ApplicationLog> ()));
m_resolver->start ();
}
// Called to indicate shutdown.
@@ -867,9 +869,14 @@ public:
// forcing a call to io_service::stop()
m_probe.cancel ();
m_resolver->stop();
m_resolver->stop_async ();
m_sweepTimer.cancel();
// NIKB This is a hack - we need to wait for the resolver to
// stop. before we stop the io_server_queue or weird
// things will happen.
m_resolver->stop ();
m_sweepTimer.cancel ();
// VFALCO TODO get rid of this flag
mShutdown = true;