Uploaded image for project: 'Qpid Dispatch'
  1. Qpid Dispatch
  2. DISPATCH-2155

Race reported from Proton between listener_final_free and pn_listener_close during qd_connection_manager_delete_listener

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Duplicate
    • 1.17.0
    • None
    • None

    Description

      TSan error from Proton

      https://github.com/jiridanek/qpid-dispatch/runs/2675411039?check_suite_focus=true#step:25:800

      20: E           ==================
      20: E           WARNING: ThreadSanitizer: data race (pid=2545)
      20: E             Write of size 8 at 0x7b680000fc28 by thread T4:
      20: E               #0 free <null> (libtsan.so.0+0x37a28)
      20: E               #1 listener_final_free /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-proton/c/src/proactor/epoll.c:1584 (libqpid-proton-proactor.so.1+0x8650)
      20: E               #2 pn_listener_free /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-proton/c/src/proactor/epoll.c:1602 (libqpid-proton-proactor.so.1+0x8650)
      20: E               #3 listener_done /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-proton/c/src/proactor/epoll.c:1804 (libqpid-proton-proactor.so.1+0xc31f)
      20: E               #4 pn_proactor_done /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-proton/c/src/proactor/epoll.c:2684 (libqpid-proton-proactor.so.1+0xc31f)
      20: E               #5 thread_run /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/src/server.c:1139 (libqpid-dispatch.so+0xf56c4)
      20: E               #6 _thread_init /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/src/posix/threading.c:172 (libqpid-dispatch.so+0x95fa2)
      20: E           
      20: E             Previous read of size 8 at 0x7b680000fc28 by main thread (mutexes: write M13):
      20: E               #0 pn_listener_close /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-proton/c/src/proactor/epoll.c:1651 (libqpid-proton-proactor.so.1+0x9404)
      20: E               #1 qd_connection_manager_delete_listener /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/src/connection_manager.c:1041 (libqpid-dispatch.so+0x702fb)
      20: E               #2 ffi_call_unix64 <null> (libffi.so.6+0x6c03)
      20: E               #3 qdr_forward_on_message /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/src/router_core/forwarder.c:336 (libqpid-dispatch.so+0xbcc9c)
      20: E               #4 qdr_general_handler /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/src/router_core/router_core.c:934 (libqpid-dispatch.so+0xc62db)
      20: E               #5 qd_timer_visit /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/src/timer.c:317 (libqpid-dispatch.so+0xf71cd)
      20: E               #6 handle /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/src/server.c:1006 (libqpid-dispatch.so+0xf11de)
      20: E               #7 thread_run /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/src/server.c:1121 (libqpid-dispatch.so+0xf56f5)
      20: E               #8 qd_server_run /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/src/server.c:1501 (libqpid-dispatch.so+0xf5958)
      20: E               #9 main_process /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/router/src/main.c:115 (qdrouterd+0x40287c)
      20: E               #10 main /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/router/src/main.c:369 (qdrouterd+0x4024fc)
      20: E           
      20: E             Mutex M13 (0x7b1000000300) created at:
      20: E               #0 pthread_mutex_init <null> (libtsan.so.0+0x49603)
      20: E               #1 sys_mutex /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/src/posix/threading.c:43 (libqpid-dispatch.so+0x95ffc)
      20: E               #2 qd_python_initialize /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/src/python_embedded.c:54 (libqpid-dispatch.so+0x9858c)
      20: E               #3 qd_dispatch /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/src/dispatch.c:111 (libqpid-dispatch.so+0x763c5)
      20: E               #4 main_process /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/router/src/main.c:92 (qdrouterd+0x4027b9)
      20: E               #5 main /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/router/src/main.c:369 (qdrouterd+0x4024fc)
      20: E           
      20: E             Thread T4 (tid=2568, running) created by main thread at:
      20: E               #0 pthread_create <null> (libtsan.so.0+0x5bf45)
      20: E               #1 sys_thread /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/src/posix/threading.c:181 (libqpid-dispatch.so+0x9643e)
      20: E               #2 qd_server_run /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/src/server.c:1499 (libqpid-dispatch.so+0xf5932)
      20: E               #3 main_process /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/router/src/main.c:115 (qdrouterd+0x40287c)
      20: E               #4 main /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/router/src/main.c:369 (qdrouterd+0x4024fc)
      20: E           
      20: E           SUMMARY: ThreadSanitizer: data race (/lib64/libtsan.so.0+0x37a28) in free
      20: E           ==================
      20: E           ThreadSanitizer: reported 1 warnings
      20: E           <<<<
      20: 
      20: /home/runner/work/qpid-dispatch/qpid-dispatch/qpid-dispatch/tests/system_test.py:808: RuntimeError
      20: - generated xml file: /__w/qpid-dispatch/qpid-dispatch/qpid-dispatch/build/tests/junitxmls/system_tests_management.xml -
      20: =========================== short test summary info ============================
      20: ERROR ::ManagementTest::test_standalone_no_inter_router - RuntimeError: Error...
      20: ========================= 21 passed, 1 error in 11.37s =========================
       9/36 Test #20: system_tests_management ...........................***Failed   11.60 sec
      

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              jdanek Jiri Daněk
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: