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

Router crashes when on-demand host is no longer reachable

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 0.7.0
    • Backlog
    • Router Node
    • None

    Description

      Router will crash if the host for an on-demand connector is unreachable.

      To reproduce:
      start the 6 router configs in qpid-dispatch/tests/config-6
      start a broker on a different box (I used a qpidd on port 11000 on mrg30)
      create an on-demand connector to the broker on one of the routers (I use Y)
      verify a connection to the broker has been automatically created and is open
      kill/block the communications to the broker (I stop my vpn, but there may be better ways)
      after a few minutes, the router that the broker was connected to will crash

      here is the bt:

      #0  0x00007ffff6b9ea28 in raise () from /lib64/libc.so.6
      #1  0x00007ffff6ba062a in abort () from /lib64/libc.so.6
      #2  0x00007ffff6b97227 in __assert_fail_base () from /lib64/libc.so.6
      #3  0x00007ffff6b972d2 in __assert_fail () from /lib64/libc.so.6
      #4  0x00007ffff7b9face in sys_mutex_lock (mutex=0x7fffd4003e00)
          at /home/eallen/workspace/qpid-dispatch/src/posix/threading.c:71
      #5  0x00007ffff7bac174 in qdr_forward_deliver_CT (core=0x9264d0, 
          link=0x7fffe403a4c0, dlv=0x7fffe4072ec0)
          at /home/eallen/workspace/qpid-dispatch/src/router_core/forwarder.c:132
      #6  0x00007ffff7bacfeb in qdr_forward_closest_CT (core=0x9264d0, 
          addr=0x7fffe4024fc0, msg=0x7fffe4060e50, in_delivery=0x0, 
          exclude_inprocess=true, control=false)
          at /home/eallen/workspace/qpid-dispatch/src/router_core/forwarder.c:405
      #7  0x00007ffff7badd3a in qdr_forward_message_CT (core=0x9264d0, 
          addr=0x7fffe4024fc0, msg=0x7fffe4060e50, in_delivery=0x0, 
          exclude_inprocess=true, control=false)
          at /home/eallen/workspace/qpid-dispatch/src/router_core/forwarder.c:707
      #8  0x00007ffff7bb73f6 in qdr_send_to_CT (core=0x9264d0, action=0x9749d0, 
          discard=false)
          at /home/eallen/workspace/qpid-dispatch/src/router_core/transfer.c:581
      #9  0x00007ffff7bb18ea in router_core_thread (arg=0x9264d0)
          at /home/eallen/workspace/qpid-dispatch/src/router_core/router_core_thread.c:71
      #10 0x00007ffff770d60a in start_thread () from /lib64/libpthread.so.0
      #11 0x00007ffff6c6c59d in clone () from /lib64/libc.so.6
      

      I'm using master qpid-proton 0.14.0-SNAPSHOT
      master qpid-dispatch 0.7.0

      Here is the routers debug output after the vpn was killed and just before the crash

      Mon Jun 13 11:34:14 2016 DRIVER (error) getaddrinfo(mrg30.lab.bos.redhat.com, 11000): No address associated with hostname
      Mon Jun 13 11:34:23 2016 DRIVER (error) getaddrinfo(mrg30.lab.bos.redhat.com, 11000): No address associated with hostname
      Mon Jun 13 11:34:34 2016 DRIVER (error) getaddrinfo(mrg30.lab.bos.redhat.com, 11000): No address associated with hostname
      Mon Jun 13 11:34:44 2016 DRIVER (error) getaddrinfo(mrg30.lab.bos.redhat.com, 11000): No address associated with hostname
      Mon Jun 13 11:35:10 2016 DRIVER (error) getaddrinfo(mrg30.lab.bos.redhat.com, 11000): No address associated with hostname
      Mon Jun 13 11:35:10 2016 ROUTER (trace) Node QDR.D link removed
      Mon Jun 13 11:35:10 2016 ROUTER (trace) Node QDR.C link removed
      Mon Jun 13 11:35:10 2016 ROUTER (trace) Entered Router Flux Mode
      Mon Jun 13 11:35:10 2016 DRIVER (error) getaddrinfo(mrg30.lab.bos.redhat.com, 11000): No address associated with hostname
      Mon Jun 13 11:35:10 2016 ROUTER (trace) Node QDR.D link set: link_id=0
      Mon Jun 13 11:35:10 2016 ROUTER (trace) Node QDR.C link set: link_id=1
      qdrouterd: /home/eallen/workspace/qpid-dispatch/src/posix/threading.c:71: sys_mutex_lock: Assertion `result == 0' failed.
      
      Program received signal SIGABRT, Aborted.
      

      Attachments

        1. A.conf
          1 kB
          Ernest Allen
        2. B.conf
          1 kB
          Ernest Allen
        3. C.conf
          1 kB
          Ernest Allen
        4. D.conf
          1 kB
          Ernest Allen
        5. X.conf
          1 kB
          Ernest Allen
        6. Y.conf
          1 kB
          Ernest Allen

        Activity

          People

            gmurthy Ganesh Murthy
            eallen Ernest Allen
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated: