Skip to content

Commit 59a358f

Browse files
authored
Merge pull request #254 from ecmwf/hotfix/1.33.1
ECKIT-658 reverted metrics_ inside MetricsCollector to create compati…
2 parents d2bf585 + d701c1a commit 59a358f

File tree

2 files changed

+7
-30
lines changed

2 files changed

+7
-30
lines changed

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.33.0
1+
1.33.1

src/eckit/runtime/Metrics.cc

Lines changed: 6 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ class MetricsCollector : private eckit::NonCopyable {
139139
size_t stackIndex_{0};
140140

141141
time_t created_;
142-
ValueMap metrics_;
142+
Value metrics_;
143143

144144
private: // methods
145145

@@ -151,8 +151,6 @@ class MetricsCollector : private eckit::NonCopyable {
151151
m.print(s);
152152
return s;
153153
}
154-
155-
void dump() const;
156154
};
157155

158156
static MetricsCollector* current_ = nullptr;
@@ -216,25 +214,6 @@ void MetricsCollector::push(const std::string& name) {
216214
stack_.emplace_back(name);
217215
}
218216

219-
void MetricsCollector::dump() const {
220-
std::cout << "Stack - " << stack_.size() << ":" << std::endl;
221-
for (const auto& s : stack_) {
222-
std::cout << " " << (s.group() ? "G " : " ") << strLen(8, s.name) << strLen(12, s.groupFullName)
223-
<< " keys=" << s.groupKeys.size() << " values=";
224-
ValueList ll = s.groupValues;
225-
for (const auto& v : ll) {
226-
std::cout << v << " ";
227-
}
228-
std::cout << " last" << s.groupNextValue;
229-
std::cout << std::endl;
230-
}
231-
232-
std::cout << "Metrics - " << metrics_.size() << ":" << std::endl;
233-
for (const auto& [k, v] : metrics_) {
234-
std::cout << " key=" << k << " value=" << v << std::endl;
235-
}
236-
}
237-
238217
void MetricsCollector::item() {
239218
if (!stack_.empty() && stackIndex_ > 0) {
240219
auto& ss = stack_[stackIndex_ - 1];
@@ -267,13 +246,12 @@ void MetricsCollector::pop() {
267246
newss.groupNextValue = cleanPaths(top);
268247
}
269248
else { // top level group - update metrics
270-
auto it = metrics_.find(ss.groupFullName);
271-
if (it == metrics_.end()) {
272-
it = metrics_.emplace(ss.groupFullName, Value::makeList()).first;
249+
if (!metrics_.contains(ss.groupFullName)) {
250+
metrics_[ss.groupFullName] = Value::makeList();
273251
}
274252
ValueList ll = ss.groupValues;
275253
for (const auto& v : ll) {
276-
it->second.append(v);
254+
metrics_[ss.groupFullName].append(v);
277255
}
278256
}
279257
}
@@ -284,9 +262,8 @@ void MetricsCollector::pushGroup(const std::string& name) {
284262
std::string groupFullName = full(name);
285263
if (stackIndex_ == 0) {
286264
// First group - if missing, create a placeholder in metrics
287-
auto it = metrics_.find(groupFullName);
288-
if (it == metrics_.end()) {
289-
metrics_.emplace(groupFullName, Value::makeList());
265+
if (!metrics_.contains(groupFullName)) {
266+
metrics_[groupFullName] = Value::makeList();
290267
}
291268
keys_.insert(groupFullName);
292269
}

0 commit comments

Comments
 (0)