Giter Club home page Giter Club logo

Comments (1)

jeremybarnes avatar jeremybarnes commented on June 23, 2024
                 http_client_test FAILED
Boost.Test WARNING: token "build/arm64/tests/http_client_test" does not correspond to the Boost.Test argument 
                    and should be placed after all Boost.Test arguments and the -- separator.
                    For example: http_client_test --random -- build/arm64/tests/http_client_test
Running 9 test cases...
client_get
request with timeout
testing behaviour with connection: close
request with 404
request with 200
client_post
client_put
client_delete
client_put_multi
move_constructor
testing move constructor
testing move assignment op.
requests done: 2475
requests done: 7606
requests done: 11111
*   Trying 127.0.0.1...
* TCP_NODELAY set
* Connected to 127.0.0.1 (127.0.0.1) port 53020 (#0)
> GET /timeout HTTP/1.1
Host: 127.0.0.1:53020
Accept: */*

* Operation timed out after 999 milliseconds with 0 bytes received
* Closing connection 0
* Hostname 127.0.0.1 was found in DNS cache
*   Trying 127.0.0.1...
* TCP_NODELAY set
* Connected to 127.0.0.1 (127.0.0.1) port 53020 (#1)
> GET / HTTP/1.1
Host: 127.0.0.1:53020
Accept: */*

* Operation timed out after 1003 milliseconds with 0 bytes received
* Closing connection 1
* connection-close
=================================================================
==12203==ERROR: AddressSanitizer: heap-use-after-free on address 0x000109d03db0 at pc 0x000100c98828 bp 0x00016f54a6f0 sp 0x00016f54a6e8
READ of size 8 at 0x000109d03db0 thread T38
    #0 0x100c98824 in std::__1::__function::__func<MLDB::TcpSocketHandler::requestClose(std::__1::function<void ()>)::$_0, std::__1::allocator<MLDB::TcpSocketHandler::requestClose(std::__1::function<void ()>)::$_0>, void ()>::operator()() functional:1727
    #1 0x100cb312c in void boost::asio::detail::executor_function::complete<MLDB::TcpSocketHandlerImpl::requestClose(std::__1::function<void ()>)::$_1, std::__1::allocator<void> >(boost::asio::detail::executor_function::impl_base*, bool) executor_function.hpp:116
    #2 0x100c64d14 in boost::asio::detail::executor_op<boost::asio::detail::executor_function, std::__1::allocator<void>, boost::asio::detail::scheduler_operation>::do_complete(void*, boost::asio::detail::scheduler_operation*, boost::system::error_code const&, unsigned long) executor_op.hpp:70
    #3 0x100c2716c in boost::asio::detail::scheduler::do_run_one(boost::asio::detail::conditionally_enabled_mutex::scoped_lock&, boost::asio::detail::scheduler_thread_info&, boost::system::error_code const&) scheduler.ipp:486
    #4 0x100c261cc in boost::asio::detail::scheduler::run(boost::system::error_code&) scheduler.ipp:204
    #5 0x100c25a7c in MLDB::AsioThreadPool::Impl::run(int) asio_thread_pool.cc:84
    #6 0x100c257a8 in void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, MLDB::AsioThreadPool::Impl::Impl(boost::asio::io_context&, double)::'lambda'()> >(void*) thread:291
    #7 0x18e887874 in _pthread_start+0x13c (libsystem_pthread.dylib:arm64e+0x7874)
    #8 0x18e8825dc in thread_start+0x4 (libsystem_pthread.dylib:arm64e+0x25dc)

0x000109d03db0 is located 48 bytes inside of 368-byte region [0x000109d03d80,0x000109d03ef0)
freed by thread T38 here:
    #0 0x1015c4f64 in wrap__ZdlPv+0x74 (libclang_rt.asan_osx_dynamic.dylib:arm64e+0x4cf64)
    #1 0x100c94f54 in std::__1::__function::__func<MLDB::TcpAcceptor::dissociate(MLDB::TcpSocketHandler*)::$_1, std::__1::allocator<MLDB::TcpAcceptor::dissociate(MLDB::TcpSocketHandler*)::$_1>, void ()>::destroy_deallocate() functional:1719
    #2 0x100c913a8 in boost::asio::detail::completion_handler<std::__1::function<void ()>, boost::asio::io_context::basic_executor_type<std::__1::allocator<void>, 0u> >::do_complete(void*, boost::asio::detail::scheduler_operation*, boost::system::error_code const&, unsigned long) completion_handler.hpp:77
    #3 0x100c2716c in boost::asio::detail::scheduler::do_run_one(boost::asio::detail::conditionally_enabled_mutex::scoped_lock&, boost::asio::detail::scheduler_thread_info&, boost::system::error_code const&) scheduler.ipp:486
    #4 0x100c261cc in boost::asio::detail::scheduler::run(boost::system::error_code&) scheduler.ipp:204
    #5 0x100c25a7c in MLDB::AsioThreadPool::Impl::run(int) asio_thread_pool.cc:84
    #6 0x100c257a8 in void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, MLDB::AsioThreadPool::Impl::Impl(boost::asio::io_context&, double)::'lambda'()> >(void*) thread:291
    #7 0x18e887874 in _pthread_start+0x13c (libsystem_pthread.dylib:arm64e+0x7874)
    #8 0x18e8825dc in thread_start+0x4 (libsystem_pthread.dylib:arm64e+0x25dc)

previously allocated by thread T38 here:
    #0 0x1015c4b4c in wrap__Znwm+0x74 (libclang_rt.asan_osx_dynamic.dylib:arm64e+0x4cb4c)
    #1 0x100b9c6cc in std::__1::__function::__func<MLDB::TestHttpService::TestHttpService(MLDB::EventLoop&)::$_0, std::__1::allocator<MLDB::TestHttpService::TestHttpService(MLDB::EventLoop&)::$_0>, std::__1::shared_ptr<MLDB::TcpSocketHandler> (MLDB::TcpSocket&&)>::operator()(MLDB::TcpSocket&&) functional:1727
    #2 0x100ca39c0 in boost::asio::detail::binder1<MLDB::TcpAcceptorImpl::accept(MLDB::TcpAcceptorImpl::Endpoint&)::$_0, boost::system::error_code>::operator()() bind_handler.hpp:65
    #3 0x100ca17d8 in boost::asio::detail::reactive_socket_accept_op<boost::asio::basic_socket<boost::asio::ip::tcp, boost::asio::any_io_executor>, boost::asio::ip::tcp, MLDB::TcpAcceptorImpl::accept(MLDB::TcpAcceptorImpl::Endpoint&)::$_0, boost::asio::any_io_executor>::do_complete(void*, boost::asio::detail::scheduler_operation*, boost::system::error_code const&, unsigned long) reactive_socket_accept_op.hpp:148
    #4 0x100c2716c in boost::asio::detail::scheduler::do_run_one(boost::asio::detail::conditionally_enabled_mutex::scoped_lock&, boost::asio::detail::scheduler_thread_info&, boost::system::error_code const&) scheduler.ipp:486
    #5 0x100c261cc in boost::asio::detail::scheduler::run(boost::system::error_code&) scheduler.ipp:204
    #6 0x100c25a7c in MLDB::AsioThreadPool::Impl::run(int) asio_thread_pool.cc:84
    #7 0x100c257a8 in void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, MLDB::AsioThreadPool::Impl::Impl(boost::asio::io_context&, double)::'lambda'()> >(void*) thread:291
    #8 0x18e887874 in _pthread_start+0x13c (libsystem_pthread.dylib:arm64e+0x7874)
    #9 0x18e8825dc in thread_start+0x4 (libsystem_pthread.dylib:arm64e+0x25dc)

Thread T38 created by T0 here:
    #0 0x1015b15b0 in wrap_pthread_create+0x54 (libclang_rt.asan_osx_dynamic.dylib:arm64e+0x395b0)
    #1 0x100c25668 in std::__1::thread::thread<MLDB::AsioThreadPool::Impl::Impl(boost::asio::io_context&, double)::'lambda'(), void>(MLDB::AsioThreadPool::Impl::Impl(boost::asio::io_context&, double)::'lambda'()&&) thread:307
    #2 0x100c23a8c in MLDB::AsioThreadPool::Impl::Impl(boost::asio::io_context&, double) asio_thread_pool.cc:36
    #3 0x100c1cf7c in MLDB::AsioThreadPool::AsioThreadPool(MLDB::EventLoop&, double) asio_thread_pool.cc:204
    #4 0x1009f6a94 in test_http_client_connection_closed::test_method() http_client_test.cc:429
    #5 0x1009f5068 in test_http_client_connection_closed_invoker() http_client_test.cc:425
    #6 0x101489158 in boost::detail::function::function_obj_invoker0<boost::detail::forward, int>::invoke(boost::detail::function::function_buffer&)+0x28 (libboost_unit_test_framework.dylib:arm64+0xd158)
    #7 0x101486328 in boost::execution_monitor::catch_signals(boost::function<int ()> const&)+0xec (libboost_unit_test_framework.dylib:arm64+0xa328)
    #8 0x10148645c in boost::execution_monitor::execute(boost::function<int ()> const&)+0x30 (libboost_unit_test_framework.dylib:arm64+0xa45c)
    #9 0x101487088 in boost::execution_monitor::vexecute(boost::function<void ()> const&)+0x2c (libboost_unit_test_framework.dylib:arm64+0xb088)
    #10 0x1014ae5d8 in boost::unit_test::unit_test_monitor_t::execute_and_translate(boost::function<void ()> const&, unsigned long)+0x140 (libboost_unit_test_framework.dylib:arm64+0x325d8)
    #11 0x1014919cc in boost::unit_test::framework::state::execute_test_tree(unsigned long, unsigned long, boost::unit_test::framework::state::random_generator_helper const*)+0xb4c (libboost_unit_test_framework.dylib:arm64+0x159cc)
    #12 0x101491aac in boost::unit_test::framework::state::execute_test_tree(unsigned long, unsigned long, boost::unit_test::framework::state::random_generator_helper const*)+0xc2c (libboost_unit_test_framework.dylib:arm64+0x15aac)
    #13 0x10148fd28 in boost::unit_test::framework::run(unsigned long, bool)+0x8e0 (libboost_unit_test_framework.dylib:arm64+0x13d28)
    #14 0x1014ad30c in boost::unit_test::unit_test_main(bool (*)(), int, char**)+0x370 (libboost_unit_test_framework.dylib:arm64+0x3130c)
    #15 0x18e8a544c in start+0x0 (libdyld.dylib:arm64e+0x1844c)

SUMMARY: AddressSanitizer: heap-use-after-free functional:1727 in std::__1::__function::__func<MLDB::TcpSocketHandler::requestClose(std::__1::function<void ()>)::$_0, std::__1::allocator<MLDB::TcpSocketHandler::requestClose(std::__1::function<void ()>)::$_0>, void ()>::operator()()
Shadow bytes around the buggy address:
  0x0070213c0760: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 fa fa
  0x0070213c0770: fa fa fa fa fa fa fa fa fd fd fd fd fd fd fd fd
  0x0070213c0780: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x0070213c0790: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x0070213c07a0: fd fd fd fd fd fd fa fa fa fa fa fa fa fa fa fa
=>0x0070213c07b0: fd fd fd fd fd fd[fd]fd fd fd fd fd fd fd fd fd
  0x0070213c07c0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x0070213c07d0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fa fa
  0x0070213c07e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
  0x0070213c07f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
  0x0070213c0800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
Shadow byte legend (one shadow byte represents 8 application bytes):
  Addressable:           00
  Partially addressable: 01 02 03 04 05 06 07 
  Heap left redzone:       fa
  Freed heap region:       fd
  Stack left redzone:      f1
  Stack mid redzone:       f2
  Stack right redzone:     f3
  Stack after return:      f5
  Stack use after scope:   f8
  Global redzone:          f9
  Global init order:       f6
  Poisoned by user:        f7
  Container overflow:      fc
  Array cookie:            ac
  Intra object redzone:    bb
  ASan internal:           fe
  Left alloca redzone:     ca
  Right alloca redzone:    cb
  Shadow gap:              cc
==12203==ABORTING
==12203==AddressSanitizer CHECK failed: /AppleInternal/BuildRoot/Library/Caches/com.apple.xbs/Sources/clang_compiler_rt/clang-1205.0.22.9/compiler-rt/lib/asan/asan_poisoning.cpp:38 "((AddrIsInMem(addr + size - (1ULL << kDefaultShadowScale)))) != (0)" (0x0, 0x0)
    #0 0x1015c09f8 in __asan::AsanCheckFailed(char const*, int, char const*, unsigned long long, unsigned long long)+0x50 (libclang_rt.asan_osx_dynamic.dylib:arm64e+0x489f8)

**** WATCHDOG TIMEOUT; KILLING HUNG TEST ****
                       http_client_test FAILED
make: *** [build/arm64/tests/http_client_test.passed] Error 1

from mldb.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.