Skip to content

Commit 341e392

Browse files
authored
Merge pull request ceph#62977 from tchaikov/mgr-std-variant
mgr: migrate from boost::variant to std::variant Reviewed-by: Matan Breizman <[email protected]>
2 parents 7abb586 + d8141f4 commit 341e392

File tree

8 files changed

+23
-23
lines changed

8 files changed

+23
-23
lines changed

src/crimson/osd/osd.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ seastar::future<> OSD::open_meta_coll()
192192
seastar::future<> OSD::set_perf_queries(const ConfigPayload &config_payload) {
193193
LOG_PREFIX(OSD::set_perf_queries);
194194
const OSDConfigPayload &osd_config_payload =
195-
boost::get<OSDConfigPayload>(config_payload);
195+
std::get<OSDConfigPayload>(config_payload);
196196
const std::map<OSDPerfMetricQuery, OSDPerfMetricLimits> &queries =
197197
osd_config_payload.config;
198198
DEBUG("setting {} queries", queries.size());

src/mds/MetricAggregator.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -551,7 +551,7 @@ void MetricAggregator::notify_mdsmap(const MDSMap &mdsmap) {
551551
}
552552

553553
void MetricAggregator::set_perf_queries(const ConfigPayload &config_payload) {
554-
const MDSConfigPayload &mds_config_payload = boost::get<MDSConfigPayload>(config_payload);
554+
const MDSConfigPayload &mds_config_payload = std::get<MDSConfigPayload>(config_payload);
555555
const std::map<MDSPerfMetricQuery, MDSPerfMetricLimits> &queries = mds_config_payload.config;
556556

557557
dout(10) << ": setting " << queries.size() << " queries" << dendl;

src/mgr/DaemonServer.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -812,7 +812,7 @@ bool DaemonServer::handle_report(const ref_t<MMgrReport>& m)
812812

813813
if (m->metric_report_message) {
814814
const MetricReportMessage &message = *m->metric_report_message;
815-
boost::apply_visitor(HandlePayloadVisitor(this), message.payload);
815+
std::visit(HandlePayloadVisitor(this), message.payload);
816816
}
817817

818818
return true;

src/mgr/MDSPerfMetricCollector.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ MDSPerfMetricCollector::MDSPerfMetricCollector(MetricListener &listener)
2121
}
2222

2323
void MDSPerfMetricCollector::process_reports(const MetricPayload &payload) {
24-
const MDSPerfMetricReport &metric_report = boost::get<MDSMetricPayload>(payload).metric_report;
24+
const MDSPerfMetricReport &metric_report = std::get<MDSMetricPayload>(payload).metric_report;
2525

2626
std::lock_guard locker(lock);
2727
process_reports_generic(

src/mgr/MetricTypes.h

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
#ifndef CEPH_MGR_METRIC_TYPES_H
55
#define CEPH_MGR_METRIC_TYPES_H
66

7-
#include <boost/variant.hpp>
7+
#include <variant>
88
#include "include/denc.h"
99
#include "include/ceph_features.h"
1010
#include "mgr/OSDPerfMetricTypes.h"
@@ -89,9 +89,9 @@ WRITE_CLASS_DENC(OSDMetricPayload)
8989
WRITE_CLASS_DENC(MDSMetricPayload)
9090
WRITE_CLASS_DENC(UnknownMetricPayload)
9191

92-
typedef boost::variant<OSDMetricPayload,
93-
MDSMetricPayload,
94-
UnknownMetricPayload> MetricPayload;
92+
typedef std::variant<OSDMetricPayload,
93+
MDSMetricPayload,
94+
UnknownMetricPayload> MetricPayload;
9595

9696
class EncodeMetricPayloadVisitor : public boost::static_visitor<void> {
9797
public:
@@ -133,14 +133,14 @@ struct MetricReportMessage {
133133

134134
bool should_encode(uint64_t features) const {
135135
if (!HAVE_FEATURE(features, SERVER_PACIFIC) &&
136-
boost::get<MDSMetricPayload>(&payload)) {
136+
std::get_if<MDSMetricPayload>(&payload)) {
137137
return false;
138138
}
139139
return true;
140140
}
141141

142142
void encode(ceph::buffer::list &bl) const {
143-
boost::apply_visitor(EncodeMetricPayloadVisitor(bl), payload);
143+
std::visit(EncodeMetricPayloadVisitor(bl), payload);
144144
}
145145

146146
void decode(ceph::buffer::list::const_iterator &iter) {
@@ -161,15 +161,15 @@ struct MetricReportMessage {
161161
break;
162162
}
163163

164-
boost::apply_visitor(DecodeMetricPayloadVisitor(iter), payload);
164+
std::visit(DecodeMetricPayloadVisitor(iter), payload);
165165
}
166166
void dump(ceph::Formatter *f) const {
167167
f->open_object_section("payload");
168-
if (const OSDMetricPayload* osdPayload = boost::get<OSDMetricPayload>(&payload)) {
168+
if (const OSDMetricPayload* osdPayload = std::get_if<OSDMetricPayload>(&payload)) {
169169
osdPayload->dump(f);
170-
} else if (const MDSMetricPayload* mdsPayload = boost::get<MDSMetricPayload>(&payload)) {
170+
} else if (const MDSMetricPayload* mdsPayload = std::get_if<MDSMetricPayload>(&payload)) {
171171
mdsPayload->dump(f);
172-
} else if (const UnknownMetricPayload* unknownPayload = boost::get<UnknownMetricPayload>(&payload)) {
172+
} else if (const UnknownMetricPayload* unknownPayload = std::get_if<UnknownMetricPayload>(&payload)) {
173173
unknownPayload->dump(f);
174174
} else {
175175
ceph_abort();
@@ -255,9 +255,9 @@ WRITE_CLASS_DENC(OSDConfigPayload)
255255
WRITE_CLASS_DENC(MDSConfigPayload)
256256
WRITE_CLASS_DENC(UnknownConfigPayload)
257257

258-
typedef boost::variant<OSDConfigPayload,
259-
MDSConfigPayload,
260-
UnknownConfigPayload> ConfigPayload;
258+
typedef std::variant<OSDConfigPayload,
259+
MDSConfigPayload,
260+
UnknownConfigPayload> ConfigPayload;
261261

262262
class EncodeConfigPayloadVisitor : public boost::static_visitor<void> {
263263
public:
@@ -299,14 +299,14 @@ struct MetricConfigMessage {
299299

300300
bool should_encode(uint64_t features) const {
301301
if (!HAVE_FEATURE(features, SERVER_PACIFIC) &&
302-
boost::get<MDSConfigPayload>(&payload)) {
302+
std::get_if<MDSConfigPayload>(&payload)) {
303303
return false;
304304
}
305305
return true;
306306
}
307307

308308
void encode(ceph::buffer::list &bl) const {
309-
boost::apply_visitor(EncodeConfigPayloadVisitor(bl), payload);
309+
std::visit(EncodeConfigPayloadVisitor(bl), payload);
310310
}
311311

312312
void decode(ceph::buffer::list::const_iterator &iter) {
@@ -327,7 +327,7 @@ struct MetricConfigMessage {
327327
break;
328328
}
329329

330-
boost::apply_visitor(DecodeConfigPayloadVisitor(iter), payload);
330+
std::visit(DecodeConfigPayloadVisitor(iter), payload);
331331
}
332332
};
333333

src/mgr/MgrClient.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -465,7 +465,7 @@ bool MgrClient::handle_mgr_configure(ref_t<MMgrConfigure> m)
465465
handle_config_payload(m->osd_perf_metric_queries);
466466
} else if (m->metric_config_message) {
467467
const MetricConfigMessage &message = *m->metric_config_message;
468-
boost::apply_visitor(HandlePayloadVisitor(this), message.payload);
468+
std::visit(HandlePayloadVisitor(this), message.payload);
469469
}
470470

471471
bool starting = (stats_period == 0) && (m->stats_period != 0);

src/mgr/OSDPerfMetricCollector.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ OSDPerfMetricCollector::OSDPerfMetricCollector(MetricListener &listener)
2121

2222
void OSDPerfMetricCollector::process_reports(const MetricPayload &payload) {
2323
const std::map<OSDPerfMetricQuery, OSDPerfMetricReport> &reports =
24-
boost::get<OSDMetricPayload>(payload).report;
24+
std::get<OSDMetricPayload>(payload).report;
2525

2626
std::lock_guard locker(lock);
2727
process_reports_generic(

src/osd/OSD.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10586,7 +10586,7 @@ void OSD::get_latest_osdmap()
1058610586
// --------------------------------
1058710587

1058810588
void OSD::set_perf_queries(const ConfigPayload &config_payload) {
10589-
const OSDConfigPayload &osd_config_payload = boost::get<OSDConfigPayload>(config_payload);
10589+
const OSDConfigPayload &osd_config_payload = std::get<OSDConfigPayload>(config_payload);
1059010590
const std::map<OSDPerfMetricQuery, OSDPerfMetricLimits> &queries = osd_config_payload.config;
1059110591
dout(10) << "setting " << queries.size() << " queries" << dendl;
1059210592

0 commit comments

Comments
 (0)