[ https://issues.apache.org/jira/browse/TS-4876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Leif Hedstrom updated TS-4876: ------------------------------ Description: All I had to do was navigate docs.trafficserver using Safari on macOS. {code} #0 0x00002b41f07405f7 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56 #1 0x00002b41f0741ce8 in __GI_abort () at abort.c:90 #2 0x00002b41edcc901d in ink_abort (message_format=0x2b41edcf4920 "%s:%d: failed assertion `%s`") at ink_error.cc:79 #3 0x00002b41edcc2bf7 in _ink_assert (expression=0xb82fc0 "node->parent->queue->top() == node->entry", file=0xb82f80 "Http2DependencyTree.h", line=319) at ink_assert.cc:37 #4 0x00000000007b83fa in Http2DependencyTree<Http2Stream*>::deactivate (this=0x602000099eb0, node=0x607000383cf0, sent=4192) at Http2DependencyTree.h:319 #5 0x00000000007b1154 in Http2ConnectionState::send_data_frames_depends_on_priority (this=0x6190005278c8) at Http2ConnectionState.cc:1080 #6 0x00000000007ae45c in Http2ConnectionState::main_event_handler (this=0x6190005278c8, event=2254, edata=0x6090000313a0) at Http2ConnectionState.cc:808 #7 0x000000000053b59f in Continuation::handleEvent (this=0x6190005278c8, event=2254, data=0x6090000313a0) at ../iocore/eventsystem/I_Continuation.h:153 #8 0x0000000000ab74d1 in EThread::process_event (this=0x2b41f4d2d800, e=0x6090000313a0, calling_code=2254) at UnixEThread.cc:146 #9 0x0000000000ab7b33 in EThread::execute (this=0x2b41f4d2d800) at UnixEThread.cc:200 #10 0x0000000000ab5d7b in spawn_thread_internal (a=0x604000017290) at Thread.cc:84 #11 0x00002b41efdd9dc5 in start_thread (arg=0x2b41f5ee0700) at pthread_create.c:308 #12 0x00002b41f0801ced in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113 {code} and {code} (gdb) print this $1 = (Http2DependencyTree<Http2Stream*> * const) 0x602000099eb0 (gdb) print *this $2 = {_root = 0x607000383f20, _max_depth = 100, _node_count = 5} (gdb) print node $3 = (Http2DependencyTree<Http2Stream*>::Node *) 0x607000383cf0 (gdb) print *node $4 = {link = {<SLink<Http2DependencyTree<Http2Stream*>::Node>> = {next = 0x0}, prev = 0x0}, active = false, queued = true, id = 9, weight = 109, point = 9, parent = 0x607000383a50, children = {head = 0x0}, entry = 0x602000099d10, queue = 0x6060000fbba0, t = 0x61a00000ea80} (gdb) print node->parent $5 = (Http2DependencyTree<Http2Stream*>::Node *) 0x607000383a50 (gdb) print *node->parent $6 = {link = {<SLink<Http2DependencyTree<Http2Stream*>::Node>> = {next = 0x0}, prev = 0x0}, active = true, queued = true, id = 17, weight = 182, point = 17, parent = 0x607000383ac0, children = {head = 0x607000383cf0}, entry = 0x602000099c30, queue = 0x6060000fba20, t = 0x61a00000c680} (gdb) print node->entry $7 = (PriorityQueueEntry<Http2DependencyTree<Http2Stream*>::Node*> *) 0x602000099d10 (gdb) print *node->entry $8 = {index = 0, node = 0x607000383cf0} {code} was: No great stack trace here (because running under ASAN I think), but this is what we see: {code} /opt/ats/lib/libtsutil.so.7(signal_crash_handler(int, siginfo_t*, void*)+0x18)[0x2ba29d9333f3] /opt/ats/bin/traffic_server(crash_logger_invoke(int, siginfo_t*, void*)+0x155)[0x53469c] /lib64/libpthread.so.0(+0xf100)[0x2ba29fa2b100] /lib64/libc.so.6(gsignal+0x37)[0x2ba2a038a5f7] /lib64/libc.so.6(abort+0x148)[0x2ba2a038bce8] /opt/ats/lib/libtsutil.so.7(ink_warning(char const*, ...)+0x0)[0x2ba29d91301d] /opt/ats/lib/libtsutil.so.7(+0x6bbf7)[0x2ba29d90cbf7] /opt/ats/bin/traffic_server(Http2DependencyTree<Http2Stream*>::deactivate(Http2DependencyTree<Http2Stream*>::Node*, unsigned int)+0x17e)[0x7b83fa] /opt/ats/bin/traffic_server(Http2ConnectionState::send_data_frames_depends_on_priority()+0x58c)[0x7b1154] /opt/ats/bin/traffic_server(Http2ConnectionState::main_event_handler(int, void*)+0x41c)[0x7ae45c] /opt/ats/bin/traffic_server(Continuation::handleEvent(int, void*)+0x149)[0x53b59f] /opt/ats/bin/traffic_server(EThread::process_event(Event*, int)+0x2cf)[0xab74d1] /opt/ats/bin/traffic_server(EThread::execute()+0x2bf)[0xab7b33] /opt/ats/bin/traffic_server[0xab5d7b] /lib64/libpthread.so.0(+0x7dc5)[0x2ba29fa23dc5] /lib64/libc.so.6(clone+0x6d)[0x2ba2a044bced] {code} > FATAL: Http2DependencyTree.h:319: failed assertion > `node->parent->queue->top() == node->entry` > ---------------------------------------------------------------------------------------------- > > Key: TS-4876 > URL: https://issues.apache.org/jira/browse/TS-4876 > Project: Traffic Server > Issue Type: Bug > Components: HTTP/2 > Reporter: Leif Hedstrom > Labels: crash > Fix For: 7.1.0 > > > All I had to do was navigate docs.trafficserver using Safari on macOS. > {code} > #0 0x00002b41f07405f7 in __GI_raise (sig=sig@entry=6) at > ../nptl/sysdeps/unix/sysv/linux/raise.c:56 > #1 0x00002b41f0741ce8 in __GI_abort () at abort.c:90 > #2 0x00002b41edcc901d in ink_abort (message_format=0x2b41edcf4920 "%s:%d: > failed assertion `%s`") at ink_error.cc:79 > #3 0x00002b41edcc2bf7 in _ink_assert (expression=0xb82fc0 > "node->parent->queue->top() == node->entry", file=0xb82f80 > "Http2DependencyTree.h", line=319) at ink_assert.cc:37 > #4 0x00000000007b83fa in Http2DependencyTree<Http2Stream*>::deactivate > (this=0x602000099eb0, node=0x607000383cf0, sent=4192) at > Http2DependencyTree.h:319 > #5 0x00000000007b1154 in > Http2ConnectionState::send_data_frames_depends_on_priority > (this=0x6190005278c8) at Http2ConnectionState.cc:1080 > #6 0x00000000007ae45c in Http2ConnectionState::main_event_handler > (this=0x6190005278c8, event=2254, edata=0x6090000313a0) at > Http2ConnectionState.cc:808 > #7 0x000000000053b59f in Continuation::handleEvent (this=0x6190005278c8, > event=2254, data=0x6090000313a0) at ../iocore/eventsystem/I_Continuation.h:153 > #8 0x0000000000ab74d1 in EThread::process_event (this=0x2b41f4d2d800, > e=0x6090000313a0, calling_code=2254) at UnixEThread.cc:146 > #9 0x0000000000ab7b33 in EThread::execute (this=0x2b41f4d2d800) at > UnixEThread.cc:200 > #10 0x0000000000ab5d7b in spawn_thread_internal (a=0x604000017290) at > Thread.cc:84 > #11 0x00002b41efdd9dc5 in start_thread (arg=0x2b41f5ee0700) at > pthread_create.c:308 > #12 0x00002b41f0801ced in clone () at > ../sysdeps/unix/sysv/linux/x86_64/clone.S:113 > {code} > and > {code} > (gdb) print this > $1 = (Http2DependencyTree<Http2Stream*> * const) 0x602000099eb0 > (gdb) print *this > $2 = {_root = 0x607000383f20, _max_depth = 100, _node_count = 5} > (gdb) print node > $3 = (Http2DependencyTree<Http2Stream*>::Node *) 0x607000383cf0 > (gdb) print *node > $4 = {link = {<SLink<Http2DependencyTree<Http2Stream*>::Node>> = {next = > 0x0}, prev = 0x0}, active = false, queued = true, id = 9, weight = 109, point > = 9, parent = 0x607000383a50, children = {head = 0x0}, entry = > 0x602000099d10, queue = 0x6060000fbba0, t = 0x61a00000ea80} > (gdb) print node->parent > $5 = (Http2DependencyTree<Http2Stream*>::Node *) 0x607000383a50 > (gdb) print *node->parent > $6 = {link = {<SLink<Http2DependencyTree<Http2Stream*>::Node>> = {next = > 0x0}, prev = 0x0}, active = true, queued = true, id = 17, weight = 182, point > = 17, parent = 0x607000383ac0, children = {head = 0x607000383cf0}, entry = > 0x602000099c30, queue = 0x6060000fba20, t = 0x61a00000c680} > (gdb) print node->entry > $7 = (PriorityQueueEntry<Http2DependencyTree<Http2Stream*>::Node*> *) > 0x602000099d10 > (gdb) print *node->entry > $8 = {index = 0, node = 0x607000383cf0} > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)