diff --git a/CMakeLists_Headers.txt b/CMakeLists_Headers.txt index 83dd7457..08e1126b 100644 --- a/CMakeLists_Headers.txt +++ b/CMakeLists_Headers.txt @@ -66,6 +66,7 @@ set(INCLUDE_HEADERS src/manager/WFFuture.h src/manager/WFFacilities.h src/manager/WFFacilities.inl + src/manager/UpstreamPolicies.h src/util/EncodeStream.h src/util/LRUCache.h src/util/StringUtil.h @@ -84,7 +85,6 @@ set(INCLUDE_HEADERS src/factory/WFOperator.h src/factory/WFNameService.h src/factory/WFDNSResolver.h - src/manager/UpstreamPolicies.h ) if(KAFKA STREQUAL "y") diff --git a/src/manager/UpstreamManager.cc b/src/manager/UpstreamManager.cc index e9f55d17..e0027b92 100644 --- a/src/manager/UpstreamManager.cc +++ b/src/manager/UpstreamManager.cc @@ -16,6 +16,7 @@ Authors: Wu Jiaxu (wujiaxu@sogou-inc.com) */ +#include #include "UpstreamManager.h" #include "WFNameService.h" #include "UpstreamPolicies.h" @@ -31,15 +32,15 @@ public: void add_policy_name(const std::string& name) { - pthread_mutex_lock(&this->lock); + pthread_mutex_lock(&this->mutex); this->upstream_names.push_back(name); - pthread_mutex_unlock(&this->lock); + pthread_mutex_unlock(&this->mutex); } private: - __UpstreamManager() + __UpstreamManager() : + mutex(PTHREAD_MUTEX_INITIALIZER) { - pthread_mutex_init(&this->lock, NULL); } ~__UpstreamManager() @@ -52,11 +53,9 @@ private: policy = ns->del_policy(name.c_str()); delete policy; } - - pthread_mutex_destroy(&this->lock); } - pthread_mutex_t lock; + pthread_mutex_t mutex; std::vector upstream_names; }; diff --git a/src/manager/UpstreamPolicies.cc b/src/manager/UpstreamPolicies.cc index a1556cd0..3e01b6e2 100644 --- a/src/manager/UpstreamPolicies.cc +++ b/src/manager/UpstreamPolicies.cc @@ -16,7 +16,9 @@ Authors: Wu Jiaxu (wujiaxu@sogou-inc.com) */ +#include #include +#include "URIParser.h" #include "StringUtil.h" #include "UpstreamPolicies.h" #include "WFDNSResolver.h" diff --git a/src/manager/UpstreamPolicies.h b/src/manager/UpstreamPolicies.h index 9ce5cb95..ab276875 100644 --- a/src/manager/UpstreamPolicies.h +++ b/src/manager/UpstreamPolicies.h @@ -19,6 +19,11 @@ #ifndef _UPSTREAM_POLICIES_H_ #define _UPSTREAM_POLICIES_H_ +#include +#include +#include +#include +#include "URIParser.h" #include "EndpointParams.h" #include "WFNameService.h" #include "WFDNSResolver.h" @@ -26,9 +31,6 @@ #include "WFTaskError.h" #include "UpstreamManager.h" -#include -#include - #define MTTR_SECOND 30 #define VIRTUAL_GROUP_SIZE 16 @@ -49,7 +51,7 @@ public: short port_value; struct list_head list; std::atomic fail_count; - int64_t broken_timeout; + long long broken_timeout; unsigned int consistent_hash[VIRTUAL_GROUP_SIZE]; public: