Finish metrics design, I think

This commit is contained in:
2025-08-29 11:51:40 -04:00
parent e3a2ddbbfb
commit fac0d20ae1
2 changed files with 5 additions and 9 deletions

View File

@@ -76,15 +76,7 @@ struct LabelsKey {
namespace std {
template <> struct hash<metric::LabelsKey> {
std::size_t operator()(const metric::LabelsKey &k) const {
thread_local std::vector<size_t> parts;
parts.clear();
for (const auto &p : k.labels) {
parts.push_back(std::hash<std::string>{}(p.first));
parts.push_back(std::hash<std::string>{}(p.second));
}
return std::hash<std::string>{}(
std::string{reinterpret_cast<const char *>(parts.data()),
parts.size() * sizeof(size_t)});
return std::hash<decltype(k.labels)>{}(k.labels);
}
};
} // namespace std