You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by la...@apache.org on 2020/08/15 14:59:45 UTC
[kudu] 17/23: [collector] modify some APIs
This is an automated email from the ASF dual-hosted git repository.
laiyingchun pushed a commit to tag kudu-1.12.0-mdh1.0.0-4c2c075-centos-release
in repository https://gitbox.apache.org/repos/asf/kudu.git
commit 7caa5a7dbebdd3d9386063365f2814ba4f276ed7
Author: zhangyifan8 <zh...@xiaomi.com>
AuthorDate: Thu May 21 11:52:57 2020 +0800
[collector] modify some APIs
Modify some APIs for collector according to the following patches:
1. thread: simplify Thread::Create API https://gerrit.cloudera.org/c/15448/
2. threadpool: simplify Submit API threadpool: simplify Submit API
https://gerrit.cloudera.org/c/15401/
3. [master/tserver] non-zero code from main() instead of crashing
https://gerrit.cloudera.org/c/14908/
4. [tools] Support running the master and tablet server via the kudu binary
https://gerrit.cloudera.org/c/12517/
---
src/kudu/collector/cluster_rebalancer.cc | 5 +++--
src/kudu/collector/collector.cc | 5 +++--
src/kudu/collector/collector_main.cc | 10 ++++------
src/kudu/collector/falcon_reporter.cc | 2 +-
src/kudu/collector/metrics_collector.cc | 15 ++++++++++-----
src/kudu/collector/nodes_checker.cc | 5 +++--
src/kudu/collector/service_monitor.cc | 5 +++--
src/kudu/master/master.cc | 4 ++--
8 files changed, 29 insertions(+), 22 deletions(-)
diff --git a/src/kudu/collector/cluster_rebalancer.cc b/src/kudu/collector/cluster_rebalancer.cc
index b46baa4..c33d1a7 100644
--- a/src/kudu/collector/cluster_rebalancer.cc
+++ b/src/kudu/collector/cluster_rebalancer.cc
@@ -101,8 +101,9 @@ string ClusterRebalancer::ToString() const {
}
Status ClusterRebalancer::StartClusterRebalancerThread() {
- return Thread::Create("server", "cluster-rebalancer", &ClusterRebalancer::ClusterRebalancerThread,
- this, &cluster_rebalancer_thread_);
+ return Thread::Create("server", "cluster-rebalancer",
+ [this]() { this->ClusterRebalancerThread(); },
+ &cluster_rebalancer_thread_);
}
void ClusterRebalancer::ClusterRebalancerThread() {
diff --git a/src/kudu/collector/collector.cc b/src/kudu/collector/collector.cc
index 3501300..9eb5f3d 100644
--- a/src/kudu/collector/collector.cc
+++ b/src/kudu/collector/collector.cc
@@ -148,8 +148,9 @@ Status Collector::StartExcessLogFileDeleterThread() {
RETURN_NOT_OK_PREPEND(DeleteExcessLogFiles(Env::Default()),
"Unable to delete excess log files");
}
- return Thread::Create("server", "excess-log-deleter", &Collector::ExcessLogFileDeleterThread,
- this, &excess_log_deleter_thread_);
+ return Thread::Create("server", "excess-log-deleter",
+ [this]() { this->ExcessLogFileDeleterThread(); },
+ &excess_log_deleter_thread_);
}
void Collector::ExcessLogFileDeleterThread() {
diff --git a/src/kudu/collector/collector_main.cc b/src/kudu/collector/collector_main.cc
index afc0768..614c288 100644
--- a/src/kudu/collector/collector_main.cc
+++ b/src/kudu/collector/collector_main.cc
@@ -33,16 +33,14 @@ namespace kudu {
namespace collector {
static int CollectorMain(int argc, char** argv) {
- InitKuduOrDie();
-
- GFlagsMap default_flags = GetFlagsMap();
+ RETURN_MAIN_NOT_OK(InitKudu(), "InitKudu() failed", 1);
ParseCommandLineFlags(&argc, &argv, true);
if (argc != 1) {
std::cerr << "usage: " << argv[0] << std::endl;
return 1;
}
- std::string nondefault_flags = GetNonDefaultFlags(default_flags);
+ std::string nondefault_flags = GetNonDefaultFlags();
InitGoogleLoggingSafe(argv[0]);
LOG(INFO) << "Collector non-default flags:\n"
@@ -52,10 +50,10 @@ static int CollectorMain(int argc, char** argv) {
Collector collector;
LOG(INFO) << "Initializing collector...";
- CHECK_OK(collector.Init());
+ RETURN_MAIN_NOT_OK(collector.Init(), "Init() failed", 3);
LOG(INFO) << "Starting collector...";
- CHECK_OK(collector.Start());
+ RETURN_MAIN_NOT_OK(collector.Start(), "Start() failed", 4);
LOG(INFO) << "Collector successfully started.";
while (!RunOnceMode()) {
diff --git a/src/kudu/collector/falcon_reporter.cc b/src/kudu/collector/falcon_reporter.cc
index efe387b..35d8af4 100644
--- a/src/kudu/collector/falcon_reporter.cc
+++ b/src/kudu/collector/falcon_reporter.cc
@@ -152,7 +152,7 @@ Status FalconReporter::StartFalconPusherThreadPool() {
.set_idle_timeout(MonoDelta::FromMilliseconds(1))
.Build(&pusher_thread_pool_));
for (int i = 0; i < FLAGS_collector_falcon_pusher_count; ++i) {
- RETURN_NOT_OK(pusher_thread_pool_->SubmitFunc(std::bind(&FalconReporter::FalconPusher,
+ RETURN_NOT_OK(pusher_thread_pool_->Submit(std::bind(&FalconReporter::FalconPusher,
this)));
}
diff --git a/src/kudu/collector/metrics_collector.cc b/src/kudu/collector/metrics_collector.cc
index 6d09a0d..a79a609 100644
--- a/src/kudu/collector/metrics_collector.cc
+++ b/src/kudu/collector/metrics_collector.cc
@@ -142,8 +142,9 @@ string MetricsCollector::ToString() const {
}
Status MetricsCollector::StartMetricCollectorThread() {
- return Thread::Create("server", "metric-collector", &MetricsCollector::MetricCollectorThread,
- this, &metric_collector_thread_);
+ return Thread::Create("server", "metric-collector",
+ [this]() { this->MetricCollectorThread(); },
+ &metric_collector_thread_);
}
void MetricsCollector::MetricCollectorThread() {
@@ -334,7 +335,7 @@ Status MetricsCollector::CollectAndReportMasterMetrics() {
RETURN_NOT_OK(UpdateThreadPool(std::max(host_metric_collector_thread_pool_->num_threads(),
static_cast<int32_t>(master_http_addrs.size()))));
for (int i = 0; i < master_http_addrs.size(); ++i) {
- RETURN_NOT_OK(host_metric_collector_thread_pool_->SubmitFunc(
+ RETURN_NOT_OK(host_metric_collector_thread_pool_->Submit(
std::bind(&MetricsCollector::CollectAndReportHostLevelMetrics,
this,
NodeType::kMaster,
@@ -373,7 +374,7 @@ Status MetricsCollector::CollectAndReportTServerMetrics() {
vector<TablesMetrics> hosts_metrics_by_table_name(tserver_http_addrs.size());
vector<TablesHistMetrics> hosts_hist_metrics_by_table_name(tserver_http_addrs.size());
for (int i = 0; i < tserver_http_addrs.size(); ++i) {
- RETURN_NOT_OK(host_metric_collector_thread_pool_->SubmitFunc(
+ RETURN_NOT_OK(host_metric_collector_thread_pool_->Submit(
std::bind(&MetricsCollector::CollectAndReportHostLevelMetrics,
this,
NodeType::kTServer,
@@ -654,8 +655,12 @@ Status MetricsCollector::ParseEntityMetrics(const JsonReader& r,
case rapidjson::Type::kNumberType:
CHECK_OK(GetNumberMetricValue(val, name, &value));
break;
+ case rapidjson::Type::kFalseType:
+ case rapidjson::Type::kTrueType:
+ // Do not process true/false type.
+ break;
default:
- LOG(FATAL) << "Unknown type, metrics name: " << name;
+ LOG(WARNING) << "Unknown type, metrics name: " << name;
}
EmplaceOrDie(kv_metrics, std::make_pair(name, value));
diff --git a/src/kudu/collector/nodes_checker.cc b/src/kudu/collector/nodes_checker.cc
index 036d72a..15a6d22 100644
--- a/src/kudu/collector/nodes_checker.cc
+++ b/src/kudu/collector/nodes_checker.cc
@@ -131,8 +131,9 @@ string NodesChecker::GetFirstTServer() {
}
Status NodesChecker::StartNodesCheckerThread() {
- return Thread::Create("collector", "nodes-checker", &NodesChecker::NodesCheckerThread,
- this, &nodes_checker_thread_);
+ return Thread::Create("collector", "nodes-checker",
+ [this]() { this->NodesCheckerThread(); },
+ &nodes_checker_thread_);
}
void NodesChecker::NodesCheckerThread() {
diff --git a/src/kudu/collector/service_monitor.cc b/src/kudu/collector/service_monitor.cc
index e97fb79..70ea57a 100644
--- a/src/kudu/collector/service_monitor.cc
+++ b/src/kudu/collector/service_monitor.cc
@@ -342,8 +342,9 @@ Status ServiceMonitor::CallLeaderStepDown(const string& tablet_id, const string&
}
Status ServiceMonitor::StartServiceMonitorThread() {
- return Thread::Create("collector", "nodes-checker", &ServiceMonitor::ServiceMonitorThread,
- this, &service_monitor_thread_);
+ return Thread::Create("collector", "nodes-checker",
+ [this]() { this->ServiceMonitorThread(); },
+ &service_monitor_thread_);
}
void ServiceMonitor::ServiceMonitorThread() {
diff --git a/src/kudu/master/master.cc b/src/kudu/master/master.cc
index 32d6e8d..0fc7718 100644
--- a/src/kudu/master/master.cc
+++ b/src/kudu/master/master.cc
@@ -312,8 +312,8 @@ void Master::CrashMasterOnCFileCorruption(const string& tablet_id) {
Status Master::StartOutdatedReservedTablesDeleterThread() {
return Thread::Create("master", "outdated-reserved-tables-deleter",
- &Master::OutdatedReservedTablesDeleterThread,
- this, &outdated_reserved_tables_deleter_thread_);
+ [this]() { this->OutdatedReservedTablesDeleterThread(); },
+ &outdated_reserved_tables_deleter_thread_);
}
void Master::OutdatedReservedTablesDeleterThread() {