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

NULL handler being scheduled

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Duplicate
    • None
    • None
    • HTTP
    • None

    Description

      There is a continuation that is being scheduled with a NULL handler. I added an assert to Event::init() to catch the code trying to do it:

      backtrace of the assert:

      (gdb) bt
      #0  0x0000003818032625 in raise () from /lib64/libc.so.6
      #1  0x0000003818033d8d in abort () from /lib64/libc.so.6
      #2  0x00002b3186ed60c8 in ink_die_die_die (fmt=0x2b3186ee262f "%s:%d: failed assert `%s`", ap=0x2b318b536718) at ../../../trafficserver/lib/ts/ink_error.cc:43
      #3  ink_fatal_va(const char *, typedef __va_list_tag __va_list_tag *) (fmt=0x2b3186ee262f "%s:%d: failed assert `%s`", ap=0x2b318b536718) at ../../../trafficserver/lib/ts/ink_error.cc:65
      #4  0x00002b3186ed615c in ink_fatal (message_format=Unhandled dwarf expression opcode 0xf3
      ) at ../../../trafficserver/lib/ts/ink_error.cc:73
      #5  0x00002b3186ed4445 in _ink_assert (expression=Unhandled dwarf expression opcode 0xf3
      ) at ../../../trafficserver/lib/ts/ink_assert.cc:37
      #6  0x00000000004fcd4c in init (this=0x2b31e800dd48, event=1108, data=0x2b31e80a70b0) at ../../trafficserver/iocore/eventsystem/P_UnixEvent.h:30
      #7  schedule_imm (this=0x2b31e800dd48, event=1108, data=0x2b31e80a70b0) at ../../trafficserver/iocore/eventsystem/P_UnixEThread.h:52
      #8  ProxyClientTransaction::adjust_thread (this=0x2b31e800dd48, event=1108, data=0x2b31e80a70b0) at ../../trafficserver/proxy/ProxyClientTransaction.cc:95
      #9  0x0000000000540af3 in HttpSM::state_cache_open_write (this=0x2b3241116800, event=1108, data=0x2b31e80a70b0) at ../../../trafficserver/proxy/http/HttpSM.cc:2459
      #10 0x000000000054fa38 in HttpSM::main_handler (this=0x2b3241116800, event=1108, data=0x2b31e80a70b0) at ../../../trafficserver/proxy/http/HttpSM.cc:2661
      #11 0x0000000000526bad in handleEvent (this=0x2b3241118110, event=Unhandled dwarf expression opcode 0xf3
      ) at ../../../trafficserver/iocore/eventsystem/I_Continuation.h:153
      #12 HttpCacheSM::state_cache_open_write (this=0x2b3241118110, event=Unhandled dwarf expression opcode 0xf3
      ) at ../../../trafficserver/proxy/http/HttpCacheSM.cc:186
      #13 0x000000000064d71b in handleEvent (this=0x2b31e80a70b0, event=Unhandled dwarf expression opcode 0xf3
      ) at ../../../trafficserver/iocore/eventsystem/I_Continuation.h:153
      #14 CacheVC::callcont (this=0x2b31e80a70b0, event=Unhandled dwarf expression opcode 0xf3
      ) at ../../../trafficserver/iocore/cache/P_CacheInternal.h:637
      #15 0x00000000006d67f0 in Cache::open_write (this=Unhandled dwarf expression opcode 0xf3
      ) at ../../../trafficserver/iocore/cache/CacheWrite.cc:1754
      #16 0x0000000000526f6f in HttpCacheSM::open_write (this=0x2b3241118110, key=Unhandled dwarf expression opcode 0xf3
      ) at ../../../trafficserver/proxy/http/HttpCacheSM.cc:343
      #17 0x000000000053a635 in HttpSM::do_cache_prepare_action (this=0x2b3241116800, c_sm=0x2b3241118110, object_read_info=0x0, retry=Unhandled dwarf expression opcode 0xf3
      ) at ../../../trafficserver/proxy/http/HttpSM.cc:4645
      #18 0x000000000054ddc6 in do_cache_prepare_write (this=0x2b3241116800) at ../../../trafficserver/proxy/http/HttpSM.cc:4567
      #19 HttpSM::set_next_state (this=0x2b3241116800) at ../../../trafficserver/proxy/http/HttpSM.cc:7347
      #20 0x000000000054994b in HttpSM::state_api_callout (this=0x2b3241116800, event=0, data=0x0) at ../../../trafficserver/proxy/http/HttpSM.cc:1537
      #21 0x000000000054de2b in HttpSM::set_next_state (this=0x2b3241116800) at ../../../trafficserver/proxy/http/HttpSM.cc:7116
      #22 0x0000000000542528 in HttpSM::state_hostdb_lookup (this=0x2b3241116800, event=500, data=0x2b31909a4820) at ../../../trafficserver/proxy/http/HttpSM.cc:2219
      #23 0x000000000054fa38 in HttpSM::main_handler (this=0x2b3241116800, event=500, data=0x2b31909a4820) at ../../../trafficserver/proxy/http/HttpSM.cc:2661
      #24 0x000000000063ae5c in handleEvent (cont=0x2b3241116800, r=0x2b31909a4820, is_srv=Unhandled dwarf expression opcode 0xf3
      ) at ../../../trafficserver/iocore/eventsystem/I_Continuation.h:153
      #25 reply_to_cont (cont=0x2b3241116800, r=0x2b31909a4820, is_srv=Unhandled dwarf expression opcode 0xf3
      ) at ../../../trafficserver/iocore/hostdb/HostDB.cc:604
      #26 0x00000000006425db in HostDBContinuation::probeEvent (this=0x2b31934fc3c0, e=Unhandled dwarf expression opcode 0xf3
      ) at ../../../trafficserver/iocore/hostdb/HostDB.cc:1912
      #27 0x0000000000642778 in HostDBContinuation::dnsPendingEvent (this=0x2b31934fc3c0, event=1, e=0x0) at ../../../trafficserver/iocore/hostdb/HostDB.cc:1379
      #28 0x000000000063ab84 in handleEvent (this=0x2b31934fd5e0) at ../../../trafficserver/iocore/eventsystem/I_Continuation.h:153
      #29 HostDBContinuation::remove_trigger_pending_dns (this=0x2b31934fd5e0) at ../../../trafficserver/iocore/hostdb/HostDB.cc:1969
      #30 0x0000000000640d5d in HostDBContinuation::dnsEvent (this=Unhandled dwarf expression opcode 0xf3
      ) at ../../../trafficserver/iocore/hostdb/HostDB.cc:1661
      #31 0x0000000000659af5 in handleEvent (this=0x2b31e003ab00) at ../../../trafficserver/iocore/eventsystem/I_Continuation.h:153
      #32 DNSEntry::postEvent (this=0x2b31e003ab00) at ../../../trafficserver/iocore/dns/DNS.cc:1269
      #33 0x0000000000756f0a in handleEvent (this=0x2b3189d20010, e=0x2b31f00878c0, calling_code=1) at ../../../trafficserver/iocore/eventsystem/I_Continuation.h:153
      #34 EThread::process_event (this=0x2b3189d20010, e=0x2b31f00878c0, calling_code=1) at ../../../trafficserver/iocore/eventsystem/UnixEThread.cc:148
      #35 0x0000000000757d38 in EThread::execute (this=0x2b3189d20010) at ../../../trafficserver/iocore/eventsystem/UnixEThread.cc:202
      #36 0x00000000007569b5 in spawn_thread_internal (a=0x1957730) at ../../../trafficserver/iocore/eventsystem/Thread.cc:86
      #37 0x00002b3187d33aa1 in start_thread () from /lib64/libpthread.so.0
      #38 0x00000038180e893d in clone () from /lib64/libc.so.6
      

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              bcall Bryan Call
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: