diff options
Diffstat (limited to 'staging_vespalib')
12 files changed, 34 insertions, 34 deletions
diff --git a/staging_vespalib/src/vespa/vespalib/metrics/dummy_metrics_manager.h b/staging_vespalib/src/vespa/vespalib/metrics/dummy_metrics_manager.h index 588bc43d83c..e4ca1e0ec49 100644 --- a/staging_vespalib/src/vespa/vespalib/metrics/dummy_metrics_manager.h +++ b/staging_vespalib/src/vespa/vespalib/metrics/dummy_metrics_manager.h @@ -45,7 +45,7 @@ public: PointBuilder pointBuilder(Point) override { return PointBuilder(shared_from_this()); } - Point pointFrom(PointMap::BackingMap) override { + Point pointFrom(PointMap) override { return Point(0); } diff --git a/staging_vespalib/src/vespa/vespalib/metrics/metrics_manager.h b/staging_vespalib/src/vespa/vespalib/metrics/metrics_manager.h index 14f11fa4ab2..4bd919cd1bf 100644 --- a/staging_vespalib/src/vespa/vespalib/metrics/metrics_manager.h +++ b/staging_vespalib/src/vespa/vespalib/metrics/metrics_manager.h @@ -78,7 +78,7 @@ public: virtual Snapshot totalSnapshot() = 0; // for use from PointBuilder only - virtual Point pointFrom(PointMap::BackingMap map) = 0; + virtual Point pointFrom(PointMap map) = 0; // for use from Counter only virtual void add(Counter::Increment inc) = 0; diff --git a/staging_vespalib/src/vespa/vespalib/metrics/name_repo.cpp b/staging_vespalib/src/vespa/vespalib/metrics/name_repo.cpp index bb4fb6deb7c..7db14f3af52 100644 --- a/staging_vespalib/src/vespa/vespalib/metrics/name_repo.cpp +++ b/staging_vespalib/src/vespa/vespalib/metrics/name_repo.cpp @@ -50,17 +50,17 @@ NameRepo::labelValue(Label l) const } -const PointMap::BackingMap& +const PointMap& NameRepo::pointMap(Point from) const { - const PointMap &map = _pointMaps.lookup(from.id()); + const HashedPointMap &map = _pointMaps.lookup(from.id()); return map.backingMap(); } Point -NameRepo::pointFrom(PointMap::BackingMap map) +NameRepo::pointFrom(PointMap map) { - size_t id = _pointMaps.resolve(PointMap(std::move(map))); + size_t id = _pointMaps.resolve(HashedPointMap(std::move(map))); return Point(id); } diff --git a/staging_vespalib/src/vespa/vespalib/metrics/name_repo.h b/staging_vespalib/src/vespa/vespalib/metrics/name_repo.h index ce2884cefbc..217fc2e3219 100644 --- a/staging_vespalib/src/vespa/vespalib/metrics/name_repo.h +++ b/staging_vespalib/src/vespa/vespalib/metrics/name_repo.h @@ -36,8 +36,8 @@ public: const vespalib::string& dimensionName(Dimension dim) const; const vespalib::string& labelValue(Label l) const; - const PointMap::BackingMap& pointMap(Point from) const; - Point pointFrom(PointMap::BackingMap map); + const PointMap& pointMap(Point from) const; + Point pointFrom(PointMap map); static NameRepo instance; }; diff --git a/staging_vespalib/src/vespa/vespalib/metrics/point_builder.cpp b/staging_vespalib/src/vespa/vespalib/metrics/point_builder.cpp index a89336b4399..76c172c9c44 100644 --- a/staging_vespalib/src/vespa/vespalib/metrics/point_builder.cpp +++ b/staging_vespalib/src/vespa/vespalib/metrics/point_builder.cpp @@ -10,7 +10,7 @@ PointBuilder::PointBuilder(std::shared_ptr<MetricsManager> m) {} PointBuilder::PointBuilder(std::shared_ptr<MetricsManager> m, - const PointMap::BackingMap ©From) + const PointMap ©From) : _owner(std::move(m)), _map(copyFrom) {} @@ -60,7 +60,7 @@ PointBuilder::bind(DimensionName dimension, LabelValue label) && Point PointBuilder::build() { - return _owner->pointFrom(PointMap::BackingMap(_map)); + return _owner->pointFrom(PointMap(_map)); } PointBuilder::operator Point() && diff --git a/staging_vespalib/src/vespa/vespalib/metrics/point_builder.h b/staging_vespalib/src/vespa/vespalib/metrics/point_builder.h index 923238ec385..ece05089acd 100644 --- a/staging_vespalib/src/vespa/vespalib/metrics/point_builder.h +++ b/staging_vespalib/src/vespa/vespalib/metrics/point_builder.h @@ -18,12 +18,12 @@ class MetricsManager; class PointBuilder { private: std::shared_ptr<MetricsManager> _owner; - PointMap::BackingMap _map; + PointMap _map; public: // for use from MetricsManager PointBuilder(std::shared_ptr<MetricsManager> m); - PointBuilder(std::shared_ptr<MetricsManager> m, const PointMap::BackingMap &from); + PointBuilder(std::shared_ptr<MetricsManager> m, const PointMap &from); ~PointBuilder() {} /** diff --git a/staging_vespalib/src/vespa/vespalib/metrics/point_map.cpp b/staging_vespalib/src/vespa/vespalib/metrics/point_map.cpp index 51908ae235e..134123b2685 100644 --- a/staging_vespalib/src/vespa/vespalib/metrics/point_map.cpp +++ b/staging_vespalib/src/vespa/vespalib/metrics/point_map.cpp @@ -5,18 +5,18 @@ namespace vespalib { namespace metrics { -PointMap::PointMap(BackingMap &&from) +HashedPointMap::HashedPointMap(PointMap &&from) : _map(std::move(from)), _hash(0) { - for (const BackingMap::value_type &entry : _map) { + for (const PointMap::value_type &entry : _map) { _hash = (_hash << 7) + (_hash >> 31) + entry.first.id(); _hash = (_hash << 7) + (_hash >> 31) + entry.second.id(); } } bool -PointMap::operator< (const PointMap &other) const +HashedPointMap::operator< (const HashedPointMap &other) const { // cheap comparison first if (_hash != other._hash) { diff --git a/staging_vespalib/src/vespa/vespalib/metrics/point_map.h b/staging_vespalib/src/vespa/vespalib/metrics/point_map.h index 2ed50a85842..91c28b292c8 100644 --- a/staging_vespalib/src/vespa/vespalib/metrics/point_map.h +++ b/staging_vespalib/src/vespa/vespalib/metrics/point_map.h @@ -8,19 +8,19 @@ namespace vespalib { namespace metrics { +using PointMap = std::map<Dimension, Label>; + // internal -class PointMap { -public: - using BackingMap = std::map<Dimension, Label>; +class HashedPointMap { private: - const PointMap::BackingMap _map; + const PointMap _map; size_t _hash; public: - PointMap() : _map(), _hash(0) {} - PointMap(BackingMap &&from); - bool operator< (const PointMap &other) const; + HashedPointMap() : _map(), _hash(0) {} + HashedPointMap(PointMap &&from); + bool operator< (const HashedPointMap &other) const; - const BackingMap &backingMap() const { return _map; } + const PointMap &backingMap() const { return _map; } }; } // namespace vespalib::metrics diff --git a/staging_vespalib/src/vespa/vespalib/metrics/point_map_collection.cpp b/staging_vespalib/src/vespa/vespalib/metrics/point_map_collection.cpp index 3769d141516..36cb884290e 100644 --- a/staging_vespalib/src/vespa/vespalib/metrics/point_map_collection.cpp +++ b/staging_vespalib/src/vespa/vespalib/metrics/point_map_collection.cpp @@ -7,7 +7,7 @@ namespace metrics { using Guard = std::lock_guard<std::mutex>; -const PointMap & +const HashedPointMap & PointMapCollection::lookup(size_t id) const { Guard guard(_lock); @@ -17,7 +17,7 @@ PointMapCollection::lookup(size_t id) const } size_t -PointMapCollection::resolve(PointMap map) +PointMapCollection::resolve(HashedPointMap map) { Guard guard(_lock); size_t nextId = _vec.size(); diff --git a/staging_vespalib/src/vespa/vespalib/metrics/point_map_collection.h b/staging_vespalib/src/vespa/vespalib/metrics/point_map_collection.h index ce501c9229a..91eb907ee74 100644 --- a/staging_vespalib/src/vespa/vespalib/metrics/point_map_collection.h +++ b/staging_vespalib/src/vespa/vespalib/metrics/point_map_collection.h @@ -12,14 +12,14 @@ namespace metrics { // internal class PointMapCollection { private: - using PointMapMap = std::map<PointMap, size_t>; + using PointMapMap = std::map<HashedPointMap, size_t>; mutable std::mutex _lock; PointMapMap _map; std::vector<PointMapMap::const_iterator> _vec; public: - const PointMap &lookup(size_t id) const; - size_t resolve(PointMap map); + const HashedPointMap &lookup(size_t id) const; + size_t resolve(HashedPointMap map); size_t size() const; PointMapCollection() = default; diff --git a/staging_vespalib/src/vespa/vespalib/metrics/simple_metrics_manager.cpp b/staging_vespalib/src/vespa/vespalib/metrics/simple_metrics_manager.cpp index 5f1525782de..8f81dae4eb4 100644 --- a/staging_vespalib/src/vespa/vespalib/metrics/simple_metrics_manager.cpp +++ b/staging_vespalib/src/vespa/vespalib/metrics/simple_metrics_manager.cpp @@ -25,7 +25,7 @@ SimpleMetricsManager::SimpleMetricsManager(const SimpleManagerConfig &config, _thread(&SimpleMetricsManager::tickerLoop, this) { if (_maxBuckets < 1) _maxBuckets = 1; - Point empty = pointFrom(PointMap::BackingMap()); + Point empty = pointFrom(PointMap()); assert(empty.id() == 0); } @@ -110,9 +110,9 @@ SimpleMetricsManager::snapshotFrom(const Bucket &bucket) Snapshot snap(s, e); { for (size_t point_id = 0; point_id <= max_point_id; ++point_id) { - const PointMap::BackingMap &map = NameRepo::instance.pointMap(Point(point_id)); + const PointMap &map = NameRepo::instance.pointMap(Point(point_id)); PointSnapshot point; - for (const PointMap::BackingMap::value_type &kv : map) { + for (const PointMap::value_type &kv : map) { point.dimensions.emplace_back(kv.first.as_name(), kv.second.as_value()); } snap.add(point); @@ -187,12 +187,12 @@ SimpleMetricsManager::label(const vespalib::string &value) PointBuilder SimpleMetricsManager::pointBuilder(Point from) { - const PointMap::BackingMap &map = NameRepo::instance.pointMap(from); + const PointMap &map = NameRepo::instance.pointMap(from); return PointBuilder(shared_from_this(), map); } Point -SimpleMetricsManager::pointFrom(PointMap::BackingMap map) +SimpleMetricsManager::pointFrom(PointMap map) { return NameRepo::instance.pointFrom(std::move(map)); } diff --git a/staging_vespalib/src/vespa/vespalib/metrics/simple_metrics_manager.h b/staging_vespalib/src/vespa/vespalib/metrics/simple_metrics_manager.h index 5651a02979a..f41f3355bfa 100644 --- a/staging_vespalib/src/vespa/vespalib/metrics/simple_metrics_manager.h +++ b/staging_vespalib/src/vespa/vespalib/metrics/simple_metrics_manager.h @@ -70,7 +70,7 @@ public: Dimension dimension(const vespalib::string &name) override; Label label(const vespalib::string &value) override; PointBuilder pointBuilder(Point from) override; - Point pointFrom(PointMap::BackingMap map) override; + Point pointFrom(PointMap map) override; Snapshot snapshot() override; Snapshot totalSnapshot() override; |