Revert "Passed on registrar when constructing resource provider manager."
This reverts commit e1e9a041be55182fc4d683d973f0a2cd25919cf1. Project: http://git-wip-us.apache.org/repos/asf/mesos/repo Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/b1e49463 Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/b1e49463 Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/b1e49463 Branch: refs/heads/master Commit: b1e4946372a06ebffe309056a3a64bbda1bf875b Parents: f670e2b Author: Alexander Rukletsov <[email protected]> Authored: Wed Apr 25 17:09:11 2018 +0200 Committer: Alexander Rukletsov <[email protected]> Committed: Wed Apr 25 17:09:11 2018 +0200 ---------------------------------------------------------------------- src/resource_provider/manager.cpp | 15 ++++-------- src/resource_provider/manager.hpp | 5 +--- src/resource_provider/registrar.cpp | 5 +--- src/slave/slave.cpp | 27 +-------------------- src/tests/resource_provider_manager_tests.cpp | 28 +++++++--------------- 5 files changed, 17 insertions(+), 63 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/mesos/blob/b1e49463/src/resource_provider/manager.cpp ---------------------------------------------------------------------- diff --git a/src/resource_provider/manager.cpp b/src/resource_provider/manager.cpp index 259a810..68e1866 100644 --- a/src/resource_provider/manager.cpp +++ b/src/resource_provider/manager.cpp @@ -58,7 +58,6 @@ using mesos::internal::resource_provider::validation::call::validate; using mesos::resource_provider::Call; using mesos::resource_provider::Event; -using mesos::resource_provider::Registrar; using process::Failure; using process::Future; @@ -158,7 +157,7 @@ class ResourceProviderManagerProcess : public Process<ResourceProviderManagerProcess> { public: - ResourceProviderManagerProcess(Owned<Registrar> _registrar); + ResourceProviderManagerProcess(); Future<http::Response> api( const http::Request& request, @@ -213,13 +212,9 @@ private: }; -ResourceProviderManagerProcess::ResourceProviderManagerProcess( - Owned<Registrar> _registrar) +ResourceProviderManagerProcess::ResourceProviderManagerProcess() : ProcessBase(process::ID::generate("resource-provider-manager")), - metrics(*this) -{ - CHECK_NOTNULL(_registrar.get()); -} + metrics(*this) {} Future<http::Response> ResourceProviderManagerProcess::api( @@ -768,8 +763,8 @@ ResourceProviderManagerProcess::Metrics::~Metrics() } -ResourceProviderManager::ResourceProviderManager(Owned<Registrar> registrar) - : process(new ResourceProviderManagerProcess(std::move(registrar))) +ResourceProviderManager::ResourceProviderManager() + : process(new ResourceProviderManagerProcess()) { spawn(CHECK_NOTNULL(process.get())); } http://git-wip-us.apache.org/repos/asf/mesos/blob/b1e49463/src/resource_provider/manager.hpp ---------------------------------------------------------------------- diff --git a/src/resource_provider/manager.hpp b/src/resource_provider/manager.hpp index 6c57956..bc017fa 100644 --- a/src/resource_provider/manager.hpp +++ b/src/resource_provider/manager.hpp @@ -26,7 +26,6 @@ #include "messages/messages.hpp" #include "resource_provider/message.hpp" -#include "resource_provider/registrar.hpp" namespace mesos { namespace internal { @@ -38,9 +37,7 @@ class ResourceProviderManagerProcess; class ResourceProviderManager { public: - ResourceProviderManager( - process::Owned<resource_provider::Registrar> registrar); - + ResourceProviderManager(); ~ResourceProviderManager(); ResourceProviderManager( http://git-wip-us.apache.org/repos/asf/mesos/blob/b1e49463/src/resource_provider/registrar.cpp ---------------------------------------------------------------------- diff --git a/src/resource_provider/registrar.cpp b/src/resource_provider/registrar.cpp index b151e2b..53b403e 100644 --- a/src/resource_provider/registrar.cpp +++ b/src/resource_provider/registrar.cpp @@ -185,10 +185,7 @@ private: GenericRegistrarProcess::GenericRegistrarProcess(Owned<Storage> _storage) : ProcessBase(process::ID::generate("resource-provider-generic-registrar")), storage(std::move(_storage)), - state(storage.get()) -{ - CHECK_NOTNULL(storage.get()); -} + state(storage.get()) {} Future<Nothing> GenericRegistrarProcess::recover() http://git-wip-us.apache.org/repos/asf/mesos/blob/b1e49463/src/slave/slave.cpp ---------------------------------------------------------------------- diff --git a/src/slave/slave.cpp b/src/slave/slave.cpp index 2632772..d313777 100644 --- a/src/slave/slave.cpp +++ b/src/slave/slave.cpp @@ -38,9 +38,6 @@ #include <mesos/module/authenticatee.hpp> -#include <mesos/state/leveldb.hpp> -#include <mesos/state/in_memory.hpp> - #include <mesos/resource_provider/storage/disk_profile_adaptor.hpp> #include <process/after.hpp> @@ -8805,29 +8802,7 @@ void Slave::initializeResourceProviderManager( return; } - // The registrar uses LevelDB as underlying storage. Since LevelDB - // is currently not supported on Windows (see MESOS-5932), we fall - // back to in-memory storage there. - // - // TODO(bbannier): Remove this Windows workaround once MESOS-5932 is fixed. -#ifndef __WINDOWS__ - Owned<mesos::state::Storage> storage(new mesos::state::LevelDBStorage( - paths::getResourceProviderRegistryPath(flags.work_dir, slaveId))); -#else - LOG(WARNING) - << "Persisting resource provider manager state is not supported on Windows"; - Owned<mesos::state::Storage> storage(new mesos::state::InMemoryStorage()); -#endif // __WINDOWS__ - - Try<Owned<resource_provider::Registrar>> resourceProviderRegistrar = - resource_provider::Registrar::create(std::move(storage)); - - CHECK_SOME(resourceProviderRegistrar) - << "Could not construct resource provider registrar: " - << resourceProviderRegistrar.error(); - - resourceProviderManager.reset( - new ResourceProviderManager(std::move(resourceProviderRegistrar.get()))); + resourceProviderManager.reset(new ResourceProviderManager()); if (capabilities.resourceProvider) { // Start listening for messages from the resource provider manager. http://git-wip-us.apache.org/repos/asf/mesos/blob/b1e49463/src/tests/resource_provider_manager_tests.cpp ---------------------------------------------------------------------- diff --git a/src/tests/resource_provider_manager_tests.cpp b/src/tests/resource_provider_manager_tests.cpp index 1664073..ceb7854 100644 --- a/src/tests/resource_provider_manager_tests.cpp +++ b/src/tests/resource_provider_manager_tests.cpp @@ -67,7 +67,6 @@ using mesos::master::detector::MasterDetector; using mesos::state::InMemoryStorage; using mesos::state::State; -using mesos::state::Storage; using mesos::resource_provider::AdmitResourceProvider; using mesos::resource_provider::Registrar; @@ -130,8 +129,7 @@ TEST_F(ResourceProviderManagerHttpApiTest, NoContentType) request.method = "POST"; request.headers = createBasicAuthHeaders(DEFAULT_CREDENTIAL); - ResourceProviderManager manager( - Registrar::create(Owned<Storage>(new InMemoryStorage)).get()); + ResourceProviderManager manager; Future<http::Response> response = manager.api(request, None()); @@ -156,8 +154,7 @@ TEST_F(ResourceProviderManagerHttpApiTest, ValidJsonButInvalidProtobuf) request.headers["Content-Type"] = APPLICATION_JSON; request.body = stringify(object); - ResourceProviderManager manager( - Registrar::create(Owned<Storage>(new InMemoryStorage)).get()); + ResourceProviderManager manager; Future<http::Response> response = manager.api(request, None()); @@ -180,8 +177,7 @@ TEST_P(ResourceProviderManagerHttpApiTest, MalformedContent) request.headers["Content-Type"] = stringify(contentType); request.body = "MALFORMED_CONTENT"; - ResourceProviderManager manager( - Registrar::create(Owned<Storage>(new InMemoryStorage)).get()); + ResourceProviderManager manager; Future<http::Response> response = manager.api(request, None()); @@ -227,8 +223,7 @@ TEST_P(ResourceProviderManagerHttpApiTest, UnsupportedContentMediaType) request.headers["Content-Type"] = unknownMediaType; request.body = serialize(contentType, call); - ResourceProviderManager manager( - Registrar::create(Owned<Storage>(new InMemoryStorage)).get()); + ResourceProviderManager manager; Future<http::Response> response = manager.api(request, None()); @@ -240,8 +235,7 @@ TEST_P(ResourceProviderManagerHttpApiTest, UpdateState) { const ContentType contentType = GetParam(); - ResourceProviderManager manager( - Registrar::create(Owned<Storage>(new InMemoryStorage)).get()); + ResourceProviderManager manager; Option<id::UUID> streamId; Option<mesos::v1::ResourceProviderID> resourceProviderId; @@ -348,8 +342,7 @@ TEST_P(ResourceProviderManagerHttpApiTest, UpdateOperationStatus) { const ContentType contentType = GetParam(); - ResourceProviderManager manager( - Registrar::create(Owned<Storage>(new InMemoryStorage)).get()); + ResourceProviderManager manager; Option<id::UUID> streamId; Option<mesos::v1::ResourceProviderID> resourceProviderId; @@ -467,8 +460,7 @@ TEST_P(ResourceProviderManagerHttpApiTest, PublishResourcesSuccess) { const ContentType contentType = GetParam(); - ResourceProviderManager manager( - Registrar::create(Owned<Storage>(new InMemoryStorage)).get()); + ResourceProviderManager manager; Option<id::UUID> streamId; Option<mesos::v1::ResourceProviderID> resourceProviderId; @@ -575,8 +567,7 @@ TEST_P(ResourceProviderManagerHttpApiTest, PublishResourcesFailure) { const ContentType contentType = GetParam(); - ResourceProviderManager manager( - Registrar::create(Owned<Storage>(new InMemoryStorage)).get()); + ResourceProviderManager manager; Option<id::UUID> streamId; Option<mesos::v1::ResourceProviderID> resourceProviderId; @@ -683,8 +674,7 @@ TEST_P(ResourceProviderManagerHttpApiTest, PublishResourcesDisconnected) { const ContentType contentType = GetParam(); - ResourceProviderManager manager( - Registrar::create(Owned<Storage>(new InMemoryStorage)).get()); + ResourceProviderManager manager; Option<mesos::v1::ResourceProviderID> resourceProviderId; Option<http::Pipe::Reader> reader;
