Description
When we exit manager, ASAN trips on a few things, it'd be nice if we had a clean shutdown on traffic_manager.
================================================================= ==14870==ERROR: AddressSanitizer: attempting double-free on 0x619000002d80 in thread T0 ([ET_NET 0]): ==14870==WARNING: readlink("/proc/self/exe") failed with errno 13, some stack frames may not be symbolized #0 0x2ac4a4efddca (/opt/gcc5/lib/../lib64/libasan.so.2+0x93dca) #1 0x2ac4a8bf3e8f (/lib64/libc.so.6+0x38e8f) #2 0x2ac4a8bf3eb4 (/lib64/libc.so.6+0x38eb4) #3 0x58cc0b (/proc/self/exe+0x58cc0b) #4 0x2ac4a7f280ff (/lib64/libpthread.so.0+0xf0ff) #5 0x2ac4a8cb22c2 (/lib64/libc.so.6+0xf72c2) #6 0xc8fde6 (/proc/self/exe+0xc8fde6) #7 0xd80203 (/proc/self/exe+0xd80203) #8 0xd831aa (/proc/self/exe+0xd831aa) #9 0x49b36e (/proc/self/exe+0x49b36e) #10 0x2ac4a8bdcb14 (/lib64/libc.so.6+0x21b14) #11 0x4aacc4 (/proc/self/exe+0x4aacc4) 0x619000002d80 is located 0 bytes inside of 1040-byte region [0x619000002d80,0x619000003190) freed by thread T1 here: #0 0x2ac4a4efddca (/opt/gcc5/lib/../lib64/libasan.so.2+0x93dca) #1 0x2ac4a8bf3e8f (/lib64/libc.so.6+0x38e8f) previously allocated by thread T0 ([ET_NET 0]) here: #0 0x2ac4a4efe1d1 (/opt/gcc5/lib/../lib64/libasan.so.2+0x941d1) #1 0x2ac4a8bf4043 (/lib64/libc.so.6+0x39043) Thread T1 created by T0 ([ET_NET 0]) here: #0 0x2ac4a4ea00c4 (/opt/gcc5/lib/../lib64/libasan.so.2+0x360c4) #1 0x498ee5 (/proc/self/exe+0x498ee5) #2 0x2ac4a8bdcb14 (/lib64/libc.so.6+0x21b14) SUMMARY: AddressSanitizer: double-free ??:0 ?? ==14870==ABORTING [TrafficManager] ==> signal #2 ================================================================= ==14864==ERROR: LeakSanitizer: detected memory leaks Direct leak of 8964 byte(s) in 249 object(s) allocated from: #0 0x7faab3c7006a in __interceptor_malloc ../../../../libsanitizer/asan/asan_malloc_linux.cc:38 #1 0x7faab1f3281f in cap_init (/lib64/libcap.so.2+0x181f) #2 0x7faab39a1d2e in ElevateAccess::ElevateAccess(unsigned int) /usr/local/src/trafficserver/lib/ts/ink_cap.cc:413 #3 0x48aa7f in Rollback::statFile(int, stat*) /usr/local/src/trafficserver/mgmt/Rollback.cc:267 #4 0x48ea10 in Rollback::checkForUserUpdate(RollBackCheckType) /usr/local/src/trafficserver/mgmt/Rollback.cc:911 #5 0x481adf in FileManager::isConfigStale() /usr/local/src/trafficserver/mgmt/FileManager.cc:690 #6 0x50c697 in sync_thr /usr/local/src/trafficserver/lib/records/RecLocal.cc:106 #7 0x7faab1449dc4 in start_thread (/lib64/libpthread.so.0+0x7dc4) Direct leak of 6361 byte(s) in 208 object(s) allocated from: #0 0x7faab3c7006a in __interceptor_malloc ../../../../libsanitizer/asan/asan_malloc_linux.cc:38 #1 0x7faab39aaaf5 in ats_malloc /usr/local/src/trafficserver/lib/ts/ink_memory.cc:59 #2 0x7faab39ab036 in _xstrdup /usr/local/src/trafficserver/lib/ts/ink_memory.cc:268 #3 0x55cf74 in lua_metrics_new(char const*, lua_State*) /usr/local/src/trafficserver/lib/bindings/metrics.cc:186 #4 0x55d3c6 in lua_metrics_install(lua_State*) /usr/local/src/trafficserver/lib/bindings/metrics.cc:230 #5 0x447576 in update_metrics_namespace /usr/local/src/trafficserver/cmd/traffic_manager/metrics.cc:162 #6 0x447576 in metrics_binding_evaluate(BindingInstance&) /usr/local/src/trafficserver/cmd/traffic_manager/metrics.cc:372 #7 0x431b48 in main /usr/local/src/trafficserver/cmd/traffic_manager/traffic_manager.cc:807 #8 0x7faab061bb14 in __libc_start_main (/lib64/libc.so.6+0x21b14) Direct leak of 842 byte(s) in 30 object(s) allocated from: #0 0x7faab3c7006a in __interceptor_malloc ../../../../libsanitizer/asan/asan_malloc_linux.cc:38 #1 0x7faab39aaaf5 in ats_malloc /usr/local/src/trafficserver/lib/ts/ink_memory.cc:59 #2 0x7faab39ab036 in _xstrdup /usr/local/src/trafficserver/lib/ts/ink_memory.cc:268 #3 0x55cf74 in lua_metrics_new(char const*, lua_State*) /usr/local/src/trafficserver/lib/bindings/metrics.cc:186 #4 0x55d3c6 in lua_metrics_install(lua_State*) /usr/local/src/trafficserver/lib/bindings/metrics.cc:230 #5 0x446b12 in update_metrics_namespace /usr/local/src/trafficserver/cmd/traffic_manager/metrics.cc:162 #6 0x446b12 in metrics_binding_initialize(BindingInstance&) /usr/local/src/trafficserver/cmd/traffic_manager/metrics.cc:330 #7 0x431a00 in main /usr/local/src/trafficserver/cmd/traffic_manager/traffic_manager.cc:757 #8 0x7faab061bb14 in __libc_start_main (/lib64/libc.so.6+0x21b14) Direct leak of 432 byte(s) in 6 object(s) allocated from: #0 0x7faab3c70dda in operator new(unsigned long) ../../../../libsanitizer/asan/asan_new_delete.cc:60 #1 0x55ef24 in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::allocate(unsigned long, void const*) /opt/gcc5/include/c++/5.2.0/ext/new_allocator.h:104 #2 0x55ef24 in std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > >::allocate(std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >&, unsigned long) /opt/gcc5/include/c++/5.2.0/bits/alloc_traits.h:360 #3 0x55ef24 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::_M_get_node() /opt/gcc5/include/c++/5.2.0/bits/stl_tree.h:491 #4 0x55ef24 in std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >* std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::_M_create_node<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&>, std::tuple<> >(std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&>&&, std::tuple<>&&) /opt/gcc5/include/c++/5.2.0/bits/stl_tree.h:545 #5 0x55ef24 in std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&>&&, std::tuple<>&&) /opt/gcc5/include/c++/5.2.0/bits/stl_tree.h:2170 #6 0x55d860 in std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::operator[](std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&) /opt/gcc5/include/c++/5.2.0/bits/stl_map.h:502 #7 0x55d860 in metrics_newindex /usr/local/src/trafficserver/lib/bindings/metrics.cc:161 #8 0x586825 in lj_BC_FUNCC (/opt/ats/bin/traffic_manager+0x586825) Direct leak of 128 byte(s) in 4 object(s) allocated from: #0 0x7faab3c7006a in __interceptor_malloc ../../../../libsanitizer/asan/asan_malloc_linux.cc:38 #1 0x7faab1d13f6e in pcre_jit_stack_alloc (/lib64/libpcre.so.1+0x43f6e) Direct leak of 108 byte(s) in 3 object(s) allocated from: #0 0x7faab3c7006a in __interceptor_malloc ../../../../libsanitizer/asan/asan_malloc_linux.cc:38 #1 0x7faab1f3281f in cap_init (/lib64/libcap.so.2+0x181f) #2 0x7faab39a1d2e in ElevateAccess::ElevateAccess(unsigned int) /usr/local/src/trafficserver/lib/ts/ink_cap.cc:413 #3 0x48aa7f in Rollback::statFile(int, stat*) /usr/local/src/trafficserver/mgmt/Rollback.cc:267 #4 0x48c6a7 in Rollback::setLastModifiedTime() /usr/local/src/trafficserver/mgmt/Rollback.cc:872 #5 0x48dac0 in Rollback::Rollback(char const*, bool, Rollback*, unsigned int) /usr/local/src/trafficserver/mgmt/Rollback.cc:105 #6 0x47f3b3 in FileManager::addFileHelper(char const*, bool, Rollback*, unsigned int) /usr/local/src/trafficserver/mgmt/FileManager.cc:147 #7 0x48226e in FileManager::configFileChild(char const*, char const*, unsigned int) /usr/local/src/trafficserver/mgmt/FileManager.cc:766 #8 0x4849be in LocalManager::handleMgmtMsgFromProcesses(_mgmt_message_hdr_type*) /usr/local/src/trafficserver/mgmt/LocalManager.cc:605 #9 0x485292 in LocalManager::pollMgmtProcessServer() /usr/local/src/trafficserver/mgmt/LocalManager.cc:448 #10 0x431230 in main /usr/local/src/trafficserver/cmd/traffic_manager/traffic_manager.cc:764 #11 0x7faab061bb14 in __libc_start_main (/lib64/libc.so.6+0x21b14) Direct leak of 41 byte(s) in 1 object(s) allocated from: #0 0x7faab3c7006a in __interceptor_malloc ../../../../libsanitizer/asan/asan_malloc_linux.cc:38 #1 0x7faab39aaaf5 in ats_malloc /usr/local/src/trafficserver/lib/ts/ink_memory.cc:59 #2 0x7faab39ab036 in _xstrdup /usr/local/src/trafficserver/lib/ts/ink_memory.cc:268 #3 0x7faab398aebe in layout_relative /usr/local/src/trafficserver/lib/ts/Layout.cc:69 #4 0x431056 in main /usr/local/src/trafficserver/cmd/traffic_manager/traffic_manager.cc:705 #5 0x7faab061bb14 in __libc_start_main (/lib64/libc.so.6+0x21b14) Direct leak of 40 byte(s) in 1 object(s) allocated from: #0 0x7faab3c7006a in __interceptor_malloc ../../../../libsanitizer/asan/asan_malloc_linux.cc:38 #1 0x7faab39aaaf5 in ats_malloc /usr/local/src/trafficserver/lib/ts/ink_memory.cc:59 #2 0x7faab39ab036 in _xstrdup /usr/local/src/trafficserver/lib/ts/ink_memory.cc:268 #3 0x7faab398aebe in layout_relative /usr/local/src/trafficserver/lib/ts/Layout.cc:69 #4 0x43103e in main /usr/local/src/trafficserver/cmd/traffic_manager/traffic_manager.cc:704 #5 0x7faab061bb14 in __libc_start_main (/lib64/libc.so.6+0x21b14) Direct leak of 32 byte(s) in 1 object(s) allocated from: #0 0x7faab3c70dda in operator new(unsigned long) ../../../../libsanitizer/asan/asan_new_delete.cc:60 #1 0x50c64d in sync_thr /usr/local/src/trafficserver/lib/records/RecLocal.cc:65 #2 0x7faab1449dc4 in start_thread (/lib64/libpthread.so.0+0x7dc4) Direct leak of 27 byte(s) in 1 object(s) allocated from: #0 0x7faab3c7006a in __interceptor_malloc ../../../../libsanitizer/asan/asan_malloc_linux.cc:38 #1 0x7faab39aaaf5 in ats_malloc /usr/local/src/trafficserver/lib/ts/ink_memory.cc:59 #2 0x7faab39ab036 in _xstrdup /usr/local/src/trafficserver/lib/ts/ink_memory.cc:268 #3 0x7faab398aebe in layout_relative /usr/local/src/trafficserver/lib/ts/Layout.cc:69 #4 0x502573 in RecConfigReadRuntimeDir() /usr/local/src/trafficserver/lib/records/RecCore.cc:1113 #5 0x43102a in main /usr/local/src/trafficserver/cmd/traffic_manager/traffic_manager.cc:703 #6 0x7faab061bb14 in __libc_start_main (/lib64/libc.so.6+0x21b14) Direct leak of 11 byte(s) in 1 object(s) allocated from: #0 0x7faab3c7006a in __interceptor_malloc ../../../../libsanitizer/asan/asan_malloc_linux.cc:38 #1 0x7faab39aaaf5 in ats_malloc /usr/local/src/trafficserver/lib/ts/ink_memory.cc:59 #2 0x7faab39ab036 in _xstrdup /usr/local/src/trafficserver/lib/ts/ink_memory.cc:268 #3 0x50afc7 in RecDataSet(RecDataT, RecData*, RecData*) /usr/local/src/trafficserver/lib/records/RecUtils.cc:146 #4 0x501ff9 in RecGetRecord_Xmalloc(char const*, RecDataT, RecData*, bool) /usr/local/src/trafficserver/lib/records/RecCore.cc:882 #5 0x501ff9 in RecGetRecordString_Xmalloc(char const*, char**, bool) /usr/local/src/trafficserver/lib/records/RecCore.cc:418 #6 0x501ff9 in REC_readString(char const*, bool*, bool) /usr/local/src/trafficserver/lib/records/RecCore.cc:1079 #7 0x432021 in main /usr/local/src/trafficserver/cmd/traffic_manager/traffic_manager.cc:670 #8 0x7faab061bb14 in __libc_start_main (/lib64/libc.so.6+0x21b14) Indirect leak of 65536 byte(s) in 1 object(s) allocated from: #0 0x7faab3c7006a in __interceptor_malloc ../../../../libsanitizer/asan/asan_malloc_linux.cc:38 #1 0x7faab39aaaf5 in ats_malloc /usr/local/src/trafficserver/lib/ts/ink_memory.cc:59 #2 0x7faab3995257 in textBuffer::textBuffer(int) /usr/local/src/trafficserver/lib/ts/TextBuffer.cc:48 #3 0x50c65d in sync_thr /usr/local/src/trafficserver/lib/records/RecLocal.cc:65 #4 0x7faab1449dc4 in start_thread (/lib64/libpthread.so.0+0x7dc4) Indirect leak of 9401 byte(s) in 210 object(s) allocated from: #0 0x7faab3c7006a in __interceptor_malloc ../../../../libsanitizer/asan/asan_malloc_linux.cc:38 #1 0x7faab39aaaf5 in ats_malloc /usr/local/src/trafficserver/lib/ts/ink_memory.cc:59 #2 0x7faab39ab036 in _xstrdup /usr/local/src/trafficserver/lib/ts/ink_memory.cc:268 #3 0x4461ee in Evaluator::bind(lua_State*, char const*, char const*) /usr/local/src/trafficserver/cmd/traffic_manager/metrics.cc:52 #4 0x4461ee in metrics_register_evaluator /usr/local/src/trafficserver/cmd/traffic_manager/metrics.cc:196 #5 0x586825 in lj_BC_FUNCC (/opt/ats/bin/traffic_manager+0x586825) Indirect leak of 4032 byte(s) in 56 object(s) allocated from: #0 0x7faab3c70dda in operator new(unsigned long) ../../../../libsanitizer/asan/asan_new_delete.cc:60 #1 0x55ef24 in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::allocate(unsigned long, void const*) /opt/gcc5/include/c++/5.2.0/ext/new_allocator.h:104 #2 0x55ef24 in std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > >::allocate(std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >&, unsigned long) /opt/gcc5/include/c++/5.2.0/bits/alloc_traits.h:360 #3 0x55ef24 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::_M_get_node() /opt/gcc5/include/c++/5.2.0/bits/stl_tree.h:491 #4 0x55ef24 in std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >* std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::_M_create_node<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&>, std::tuple<> >(std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&>&&, std::tuple<>&&) /opt/gcc5/include/c++/5.2.0/bits/stl_tree.h:545 #5 0x55ef24 in std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&>&&, std::tuple<>&&) /opt/gcc5/include/c++/5.2.0/bits/stl_tree.h:2170 #6 0x55d860 in std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::operator[](std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&) /opt/gcc5/include/c++/5.2.0/bits/stl_map.h:502 #7 0x55d860 in metrics_newindex /usr/local/src/trafficserver/lib/bindings/metrics.cc:161 #8 0x586825 in lj_BC_FUNCC (/opt/ats/bin/traffic_manager+0x586825) Indirect leak of 3360 byte(s) in 210 object(s) allocated from: #0 0x7faab3c70dda in operator new(unsigned long) ../../../../libsanitizer/asan/asan_new_delete.cc:60 #1 0x446040 in metrics_register_evaluator /usr/local/src/trafficserver/cmd/traffic_manager/metrics.cc:195 #2 0x586825 in lj_BC_FUNCC (/opt/ats/bin/traffic_manager+0x586825) Indirect leak of 2048 byte(s) in 1 object(s) allocated from: #0 0x7faab3c7006a in __interceptor_malloc ../../../../libsanitizer/asan/asan_malloc_linux.cc:38 #1 0x7faab39aaaf5 in ats_malloc /usr/local/src/trafficserver/lib/ts/ink_memory.cc:59 #2 0x4462b6 in DefaultAlloc::alloc(int) ../../lib/ts/defalloc.h:34 #3 0x4462b6 in Vec<Evaluator*, DefaultAlloc, 2>::addx() ../../lib/ts/Vec.h:826 #4 0x4462b6 in Vec<Evaluator*, DefaultAlloc, 2>::add_internal(Evaluator*) ../../lib/ts/Vec.h:496 #5 0x4462b6 in Vec<Evaluator*, DefaultAlloc, 2>::add(Evaluator*) ../../lib/ts/Vec.h:272 #6 0x4462b6 in Vec<Evaluator*, DefaultAlloc, 2>::push_back(Evaluator*) ../../lib/ts/Vec.h:65 #7 0x4462b6 in EvaluatorList::push_back(Evaluator*) /usr/local/src/trafficserver/cmd/traffic_manager/metrics.cc:138 #8 0x4462b6 in metrics_register_evaluator /usr/local/src/trafficserver/cmd/traffic_manager/metrics.cc:198 #9 0x586825 in lj_BC_FUNCC (/opt/ats/bin/traffic_manager+0x586825) Indirect leak of 135 byte(s) in 6 object(s) allocated from: #0 0x7faab3c70dda in operator new(unsigned long) ../../../../libsanitizer/asan/asan_new_delete.cc:60 #1 0x55df9d in void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*, std::forward_iterator_tag) /opt/gcc5/include/c++/5.2.0/bits/basic_string.tcc:223 #2 0x55df9d in void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct_aux<char const*>(char const*, char const*, std::__false_type) /opt/gcc5/include/c++/5.2.0/bits/basic_string.h:195 #3 0x55df9d in void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*) /opt/gcc5/include/c++/5.2.0/bits/basic_string.h:214 #4 0x55df9d in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, unsigned long, std::allocator<char> const&) /opt/gcc5/include/c++/5.2.0/bits/basic_string.h:448 #5 0x55df9d in metrics_newindex /usr/local/src/trafficserver/lib/bindings/metrics.cc:161 #6 0x586825 in lj_BC_FUNCC (/opt/ats/bin/traffic_manager+0x586825) Indirect leak of 72 byte(s) in 1 object(s) allocated from: #0 0x7faab3c70dda in operator new(unsigned long) ../../../../libsanitizer/asan/asan_new_delete.cc:60 #1 0x446bd3 in metrics_binding_initialize(BindingInstance&) /usr/local/src/trafficserver/cmd/traffic_manager/metrics.cc:342 #2 0x431a00 in main /usr/local/src/trafficserver/cmd/traffic_manager/traffic_manager.cc:757 #3 0x7faab061bb14 in __libc_start_main (/lib64/libc.so.6+0x21b14) Indirect leak of 72 byte(s) in 1 object(s) allocated from: #0 0x7faab3c70dda in operator new(unsigned long) ../../../../libsanitizer/asan/asan_new_delete.cc:60 #1 0x55b4b4 in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void*> > >::allocate(unsigned long, void const*) /opt/gcc5/include/c++/5.2.0/ext/new_allocator.h:104 #2 0x55b4b4 in std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void*> > > >::allocate(std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void*> > >&, unsigned long) /opt/gcc5/include/c++/5.2.0/bits/alloc_traits.h:360 #3 0x55b4b4 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void*>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void*> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void*> > >::_M_get_node() /opt/gcc5/include/c++/5.2.0/bits/stl_tree.h:491 #4 0x55b4b4 in std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void*> >* std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void*>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void*> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void*> > >::_M_create_node<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&>, std::tuple<> >(std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&>&&, std::tuple<>&&) /opt/gcc5/include/c++/5.2.0/bits/stl_tree.h:545 #5 0x55b4b4 in std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void*> > std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void*>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void*> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void*> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void*> >, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&>&&, std::tuple<>&&) /opt/gcc5/include/c++/5.2.0/bits/stl_tree.h:2170 #6 0x55aa74 in std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, void*, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void*> > >::operator[](std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&) /opt/gcc5/include/c++/5.2.0/bits/stl_map.h:502 #7 0x55aa74 in BindingInstance::attach_ptr(char const*, void*) /usr/local/src/trafficserver/lib/bindings/bindings.cc:49 #8 0x446c91 in metrics_binding_initialize(BindingInstance&) /usr/local/src/trafficserver/cmd/traffic_manager/metrics.cc:342 #9 0x431a00 in main /usr/local/src/trafficserver/cmd/traffic_manager/traffic_manager.cc:757 #10 0x7faab061bb14 in __libc_start_main (/lib64/libc.so.6+0x21b14) Indirect leak of 56 byte(s) in 1 object(s) allocated from: #0 0x7faab3c70dda in operator new(unsigned long) ../../../../libsanitizer/asan/asan_new_delete.cc:60 #1 0x4319ed in main /usr/local/src/trafficserver/cmd/traffic_manager/traffic_manager.cc:756 #2 0x7faab061bb14 in __libc_start_main (/lib64/libc.so.6+0x21b14) SUMMARY: AddressSanitizer: 101698 byte(s) leaked in 992 allocation(s).