We are seeing a rare crash in prometheus cpp lib, unable to reproduce this to run valgrind ect,
0 libc.so.6!__memcpy_evex_unaligned_erms + 0xb0
1 libstdc++.so.6!std::__cxx11::basic_string<char, std::char_traits, std::allocator >::_M_assign(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) + 0x56
2 libstdc++.so.6!std::__cxx11::basic_string<char, std::char_traits, std::allocator >::operator=(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) + 0xe
3 libprometheus-cpp-core.so.0.12!prometheus::Familyprometheus::Counter::CollectMetric(unsigned long, prometheus::Counter*) const::{lambda(std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::__cxx11::basic_string<char, std::char_traits, std::allocator > > const&)#1}::operator()(std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::__cxx11::basic_string<char, std::char_traits, std::allocator > > const&) const + 0x5b
4 libprometheus-cpp-core.so.0.12!prometheus::Familyprometheus::Counter::CollectMetric(unsigned long, prometheus::Counter*) const::{lambda(std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::__cxx11::basic_string<char, std::char_traits, std::allocator > > const&)#1} std::for_each<std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, std::__cxx11::basic_string<char, std::char_traits, std::allocator > > >, prometheus::Familyprometheus::Counter::CollectMetric(unsigned long, prometheus::Counter*) const::{lambda(std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::__cxx11::basic_string<char, std::char_traits, std::allocator > > const&)#1}>(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, std::__cxx11::basic_string<char, std::char_traits, std::allocator > > >, std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, std::__cxx11::basic_string<char, std::char_traits, std::allocator > > >, prometheus::Familyprometheus::Counter::CollectMetric(unsigned long, prometheus::Counter*) const::{lambda(std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::__cxx11::basic_string<char, std::char_traits, std::allocator > > const&)#1}) + 0x5d
5 libprometheus-cpp-core.so.0.12!prometheus::Familyprometheus::Counter::CollectMetric(unsigned long, prometheus::Counter*) const + 0xbb
6 libprometheus-cpp-core.so.0.12!prometheus::Familyprometheus::Counter::Collect() const + 0x14b
7 libprometheus-cpp-core.so.0.12!void prometheus::(anonymous namespace)::CollectAll<std::vector<std::unique_ptr<prometheus::Familyprometheus::Counter, std::default_delete<prometheus::Familyprometheus::Counter > >, std::allocator<std::unique_ptr<prometheus::Familyprometheus::Counter, std::default_delete<prometheus::Familyprometheus::Counter > > > > >(std::vector<prometheus::MetricFamily, std::allocatorprometheus::MetricFamily >&, std::vector<std::unique_ptr<prometheus::Familyprometheus::Counter, std::default_delete<prometheus::Familyprometheus::Counter > >, std::allocator<std::unique_ptr<prometheus::Familyprometheus::Counter, std::default_delete<prometheus::Familyprometheus::Counter > > > > const&) + 0x88
8 libprometheus-cpp-core.so.0.12!prometheus::Registry::Collect() const + 0x6e
9 libBaseFramework.so!base::PromStatsReporter::metricsUriCb(std::shared_ptrbase::MsgBuffer&, std::unique_ptr<base::IpcMsgHeader, std::default_deletebase::IpcMsgHeader >, std::unique_ptr<base::IpcCookie, std::default_deletebase::IpcCookie >) [promStatsReporter.h : 238 + 0x10]
Looks to be memory access error? We are using v0.12.1
Hello, please try version 1.0.0 and report back in case the error persists. We fixed some concurrency bugs with the 1.0.0 version.