Uploaded image for project: 'Traffic Server'
  1. Traffic Server
  2. TS-4982

Fix memory leaks in test_Http2DependencyTree

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 7.1.0
    • Component/s: HTTP/2, Tests
    • Labels:
      None

      Description

      [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).
      

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                bcall Bryan Call
                Reporter:
                bcall Bryan Call
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 40m
                  40m