Bryan Call created TS-4982:
------------------------------

             Summary: Fix memory leaks in test_Http2DependencyTree
                 Key: TS-4982
                 URL: https://issues.apache.org/jira/browse/TS-4982
             Project: Traffic Server
          Issue Type: Improvement
            Reporter: Bryan Call


{noformat}
[bcall@homer http2]$ ./test_Http2DependencyTree
REGRESSION_TEST initialization begun
REGRESSION TEST Http2DependencyTree_max_depth started
    REGRESSION_RESULT Http2DependencyTree_max_depth:            PASSED
REGRESSION TEST Http2DependencyTree_remove_2 started
    REGRESSION_RESULT Http2DependencyTree_remove_2:             PASSED
REGRESSION TEST Http2DependencyTree_remove_1 started
    REGRESSION_RESULT Http2DependencyTree_remove_1:             PASSED
REGRESSION TEST Http2DependencyTree_Chrome_51 started
    REGRESSION_RESULT Http2DependencyTree_Chrome_51:            PASSED
REGRESSION TEST Http2DependencyTree_Chrome_50 started
    REGRESSION_RESULT Http2DependencyTree_Chrome_50:            PASSED
REGRESSION TEST Http2DependencyTree_6 started
    REGRESSION_RESULT Http2DependencyTree_6:                    PASSED
REGRESSION TEST Http2DependencyTree_5 started
    REGRESSION_RESULT Http2DependencyTree_5:                    PASSED
REGRESSION TEST Http2DependencyTree_4 started
    REGRESSION_RESULT Http2DependencyTree_4:                    PASSED
REGRESSION TEST Http2DependencyTree_3 started
    REGRESSION_RESULT Http2DependencyTree_3:                    PASSED
REGRESSION TEST Http2DependencyTree_2 started
    REGRESSION_RESULT Http2DependencyTree_2:                    PASSED
REGRESSION TEST Http2DependencyTree_1 started
    REGRESSION_RESULT Http2DependencyTree_1:                    PASSED

=================================================================
==16503==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 16 byte(s) in 1 object(s) allocated from:
    #0 0x7f3115cc2ea0 in operator new(unsigned long) 
(/lib64/libasan.so.3+0xc7ea0)
    #1 0x4032cc in 
RegressionTest_Http2DependencyTree_max_depth(RegressionTest*, int, int*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:502
    #2 0x7f31159b39a8 in start_test 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:81
    #3 0x7f31159b39a8 in RegressionTest::run(char const*, int) 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:103
    #4 0x402034 in main 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:517
    #5 0x7f3112f3b730 in __libc_start_main (/lib64/libc.so.6+0x20730)

Direct leak of 16 byte(s) in 1 object(s) allocated from:
    #0 0x7f3115cc2ea0 in operator new(unsigned long) 
(/lib64/libasan.so.3+0xc7ea0)
    #1 0x41884f in RegressionTest_Http2DependencyTree_remove_2(RegressionTest*, 
int, int*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:464
    #2 0x7f31159b39a8 in start_test 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:81
    #3 0x7f31159b39a8 in RegressionTest::run(char const*, int) 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:103
    #4 0x402034 in main 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:517
    #5 0x7f3112f3b730 in __libc_start_main (/lib64/libc.so.6+0x20730)

Direct leak of 16 byte(s) in 1 object(s) allocated from:
    #0 0x7f3115cc2ea0 in operator new(unsigned long) 
(/lib64/libasan.so.3+0xc7ea0)
    #1 0x413aaf in RegressionTest_Http2DependencyTree_remove_1(RegressionTest*, 
int, int*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:410
    #2 0x7f31159b39a8 in start_test 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:81
    #3 0x7f31159b39a8 in RegressionTest::run(char const*, int) 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:103
    #4 0x402034 in main 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:517
    #5 0x7f3112f3b730 in __libc_start_main (/lib64/libc.so.6+0x20730)

Indirect leak of 14400 byte(s) in 200 object(s) allocated from:
    #0 0x7f3115cc2ea0 in operator new(unsigned long) 
(/lib64/libasan.so.3+0xc7ea0)
    #1 0x402d19 in Http2DependencyTree<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*>::add(unsigned int, unsigned 
int, unsigned int, bool, std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/Http2DependencyTree.h:174
    #2 0x403602 in 
RegressionTest_Http2DependencyTree_max_depth(RegressionTest*, int, int*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:506
    #3 0x7f31159b39a8 in start_test 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:81
    #4 0x7f31159b39a8 in RegressionTest::run(char const*, int) 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:103
    #5 0x402034 in main 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:517
    #6 0x7f3112f3b730 in __libc_start_main (/lib64/libc.so.6+0x20730)

Indirect leak of 11200 byte(s) in 200 object(s) allocated from:
    #0 0x7f3115cc2ea0 in operator new(unsigned long) 
(/lib64/libasan.so.3+0xc7ea0)
    #1 0x402eff in Http2DependencyTree<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*>::Node::Node(unsigned int, 
unsigned int, unsigned int, 
Http2DependencyTree<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >*>::Node*, std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/Http2DependencyTree.h:62
    #2 0x402eff in Http2DependencyTree<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*>::add(unsigned int, unsigned 
int, unsigned int, bool, std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/Http2DependencyTree.h:174
    #3 0x403602 in 
RegressionTest_Http2DependencyTree_max_depth(RegressionTest*, int, int*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:506
    #4 0x7f31159b39a8 in start_test 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:81
    #5 0x7f31159b39a8 in RegressionTest::run(char const*, int) 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:103
    #6 0x402034 in main 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:517
    #7 0x7f3112f3b730 in __libc_start_main (/lib64/libc.so.6+0x20730)

Indirect leak of 3200 byte(s) in 200 object(s) allocated from:
    #0 0x7f3115cc2ea0 in operator new(unsigned long) 
(/lib64/libasan.so.3+0xc7ea0)
    #1 0x402e9a in Http2DependencyTree<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*>::Node::Node(unsigned int, 
unsigned int, unsigned int, 
Http2DependencyTree<std::__cxx11::basic_string<char, std::char_traits<char>, 
std::allocator<char> >*>::Node*, std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/Http2DependencyTree.h:61
    #2 0x402e9a in Http2DependencyTree<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*>::add(unsigned int, unsigned 
int, unsigned int, bool, std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/Http2DependencyTree.h:174
    #3 0x403602 in 
RegressionTest_Http2DependencyTree_max_depth(RegressionTest*, int, int*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:506
    #4 0x7f31159b39a8 in start_test 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:81
    #5 0x7f31159b39a8 in RegressionTest::run(char const*, int) 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:103
    #6 0x402034 in main 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:517
    #7 0x7f3112f3b730 in __libc_start_main (/lib64/libc.so.6+0x20730)

Indirect leak of 72 byte(s) in 1 object(s) allocated from:
    #0 0x7f3115cc2ea0 in operator new(unsigned long) 
(/lib64/libasan.so.3+0xc7ea0)
    #1 0x4032d9 in Http2DependencyTree<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*>::Http2DependencyTree(unsigned 
int) /home/bcall/dev/apache/trafficserver/proxy/http2/Http2DependencyTree.h:109
    #2 0x4032d9 in 
RegressionTest_Http2DependencyTree_max_depth(RegressionTest*, int, int*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:502
    #3 0x7f31159b39a8 in start_test 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:81
    #4 0x7f31159b39a8 in RegressionTest::run(char const*, int) 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:103
    #5 0x402034 in main 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:517
    #6 0x7f3112f3b730 in __libc_start_main (/lib64/libc.so.6+0x20730)

Indirect leak of 72 byte(s) in 1 object(s) allocated from:
    #0 0x7f3115cc2ea0 in operator new(unsigned long) 
(/lib64/libasan.so.3+0xc7ea0)
    #1 0x41885c in Http2DependencyTree<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*>::Http2DependencyTree(unsigned 
int) /home/bcall/dev/apache/trafficserver/proxy/http2/Http2DependencyTree.h:109
    #2 0x41885c in RegressionTest_Http2DependencyTree_remove_2(RegressionTest*, 
int, int*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:464
    #3 0x7f31159b39a8 in start_test 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:81
    #4 0x7f31159b39a8 in RegressionTest::run(char const*, int) 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:103
    #5 0x402034 in main 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:517
    #6 0x7f3112f3b730 in __libc_start_main (/lib64/libc.so.6+0x20730)

Indirect leak of 72 byte(s) in 1 object(s) allocated from:
    #0 0x7f3115cc2ea0 in operator new(unsigned long) 
(/lib64/libasan.so.3+0xc7ea0)
    #1 0x413abc in Http2DependencyTree<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*>::Http2DependencyTree(unsigned 
int) /home/bcall/dev/apache/trafficserver/proxy/http2/Http2DependencyTree.h:109
    #2 0x413abc in RegressionTest_Http2DependencyTree_remove_1(RegressionTest*, 
int, int*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:410
    #3 0x7f31159b39a8 in start_test 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:81
    #4 0x7f31159b39a8 in RegressionTest::run(char const*, int) 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:103
    #5 0x402034 in main 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:517
    #6 0x7f3112f3b730 in __libc_start_main (/lib64/libc.so.6+0x20730)

Indirect leak of 56 byte(s) in 1 object(s) allocated from:
    #0 0x7f3115cc2ea0 in operator new(unsigned long) 
(/lib64/libasan.so.3+0xc7ea0)
    #1 0x4034c6 in Http2DependencyTree<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*>::Http2DependencyTree(unsigned 
int) /home/bcall/dev/apache/trafficserver/proxy/http2/Http2DependencyTree.h:56
    #2 0x4034c6 in 
RegressionTest_Http2DependencyTree_max_depth(RegressionTest*, int, int*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:502
    #3 0x7f31159b39a8 in start_test 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:81
    #4 0x7f31159b39a8 in RegressionTest::run(char const*, int) 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:103
    #5 0x402034 in main 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:517
    #6 0x7f3112f3b730 in __libc_start_main (/lib64/libc.so.6+0x20730)

Indirect leak of 56 byte(s) in 1 object(s) allocated from:
    #0 0x7f3115cc2ea0 in operator new(unsigned long) 
(/lib64/libasan.so.3+0xc7ea0)
    #1 0x418a49 in Http2DependencyTree<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*>::Http2DependencyTree(unsigned 
int) /home/bcall/dev/apache/trafficserver/proxy/http2/Http2DependencyTree.h:56
    #2 0x418a49 in RegressionTest_Http2DependencyTree_remove_2(RegressionTest*, 
int, int*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:464
    #3 0x7f31159b39a8 in start_test 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:81
    #4 0x7f31159b39a8 in RegressionTest::run(char const*, int) 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:103
    #5 0x402034 in main 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:517
    #6 0x7f3112f3b730 in __libc_start_main (/lib64/libc.so.6+0x20730)

Indirect leak of 56 byte(s) in 1 object(s) allocated from:
    #0 0x7f3115cc2ea0 in operator new(unsigned long) 
(/lib64/libasan.so.3+0xc7ea0)
    #1 0x413ca9 in Http2DependencyTree<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*>::Http2DependencyTree(unsigned 
int) /home/bcall/dev/apache/trafficserver/proxy/http2/Http2DependencyTree.h:56
    #2 0x413ca9 in RegressionTest_Http2DependencyTree_remove_1(RegressionTest*, 
int, int*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:410
    #3 0x7f31159b39a8 in start_test 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:81
    #4 0x7f31159b39a8 in RegressionTest::run(char const*, int) 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:103
    #5 0x402034 in main 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:517
    #6 0x7f3112f3b730 in __libc_start_main (/lib64/libc.so.6+0x20730)

Indirect leak of 16 byte(s) in 1 object(s) allocated from:
    #0 0x7f3115cc2ea0 in operator new(unsigned long) 
(/lib64/libasan.so.3+0xc7ea0)
    #1 0x403461 in Http2DependencyTree<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*>::Http2DependencyTree(unsigned 
int) /home/bcall/dev/apache/trafficserver/proxy/http2/Http2DependencyTree.h:55
    #2 0x403461 in 
RegressionTest_Http2DependencyTree_max_depth(RegressionTest*, int, int*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:502
    #3 0x7f31159b39a8 in start_test 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:81
    #4 0x7f31159b39a8 in RegressionTest::run(char const*, int) 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:103
    #5 0x402034 in main 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:517
    #6 0x7f3112f3b730 in __libc_start_main (/lib64/libc.so.6+0x20730)

Indirect leak of 16 byte(s) in 1 object(s) allocated from:
    #0 0x7f3115cc2ea0 in operator new(unsigned long) 
(/lib64/libasan.so.3+0xc7ea0)
    #1 0x4189e4 in Http2DependencyTree<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*>::Http2DependencyTree(unsigned 
int) /home/bcall/dev/apache/trafficserver/proxy/http2/Http2DependencyTree.h:55
    #2 0x4189e4 in RegressionTest_Http2DependencyTree_remove_2(RegressionTest*, 
int, int*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:464
    #3 0x7f31159b39a8 in start_test 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:81
    #4 0x7f31159b39a8 in RegressionTest::run(char const*, int) 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:103
    #5 0x402034 in main 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:517
    #6 0x7f3112f3b730 in __libc_start_main (/lib64/libc.so.6+0x20730)

Indirect leak of 16 byte(s) in 1 object(s) allocated from:
    #0 0x7f3115cc2ea0 in operator new(unsigned long) 
(/lib64/libasan.so.3+0xc7ea0)
    #1 0x413c44 in Http2DependencyTree<std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> >*>::Http2DependencyTree(unsigned 
int) /home/bcall/dev/apache/trafficserver/proxy/http2/Http2DependencyTree.h:55
    #2 0x413c44 in RegressionTest_Http2DependencyTree_remove_1(RegressionTest*, 
int, int*) 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:410
    #3 0x7f31159b39a8 in start_test 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:81
    #4 0x7f31159b39a8 in RegressionTest::run(char const*, int) 
/home/bcall/dev/apache/trafficserver/lib/ts/Regression.cc:103
    #5 0x402034 in main 
/home/bcall/dev/apache/trafficserver/proxy/http2/test_Http2DependencyTree.cc:517
    #6 0x7f3112f3b730 in __libc_start_main (/lib64/libc.so.6+0x20730)

SUMMARY: AddressSanitizer: 29280 byte(s) leaked in 612 allocation(s).
{noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to