Chuck Rolke created PROTON-1483: ----------------------------------- Summary: proactor/epoll.c:181: ptimer_callback: Assertion Key: PROTON-1483 URL: https://issues.apache.org/jira/browse/PROTON-1483 Project: Qpid Proton Issue Type: Bug Components: proton-c Affects Versions: 0.18.0 Environment: Fedora 25 Master source builds of qpid-proton and qpid-dispatch Reporter: Chuck Rolke Attachments: A.conf, B.conf
Start a dispatch router network of two routers. Send client traffic or not. Let it sit for a few minutes. {noformat} qdrouterd: /home/chug/git/qpid-proton/proton-c/src/proactor/epoll.c:181: ptimer_callback: Assertion `exp_count >= pt->skip_count' failed. {noformat} Either router A or B may fail this way. Looking at one core dump the internals show: {noformat} (gdb) list 176 ssize_t l = read(pt->timerfd, &u_exp_count, sizeof(uint64_t)); 177 (void)l; /* Silence compiler complaints in release build */ 178 assert(l == sizeof(uint64_t)); 179 assert(u_exp_count < INT_MAX); // or test and log it? 180 int exp_count = (int) u_exp_count; 181 assert(exp_count >= pt->skip_count); 182 assert(exp_count <= pt->pending_count); 183 exp_count -= pt->skip_count; 184 pt->skip_count = 0; 185 pt->pending_count -= exp_count; (gdb) p exp_count $1 = 1 (gdb) p pt->skip_count $2 = 2 (gdb) bt #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:58 #1 0x00007fc51c49d51a in __GI_abort () at abort.c:89 #2 0x00007fc51c493da7 in __assert_fail_base (fmt=<optimized out>, assertion=assertion@entry=0x7fc51d45fbc2 "exp_count >= pt->skip_count", file=file@entry=0x7fc51d45fb30 "/home/chug/git/qpid-proton/proton-c/src/proactor/epoll.c", line=line@entry=181, function=function@entry=0x7fc51d45fe70 <__PRETTY_FUNCTION__.7041> "ptimer_callback") at assert.c:92 #3 0x00007fc51c493e52 in __GI___assert_fail (assertion=0x7fc51d45fbc2 "exp_count >= pt->skip_count", file=0x7fc51d45fb30 "/home/chug/git/qpid-proton/proton-c/src/proactor/epoll.c", line=181, function=0x7fc51d45fe70 <__PRETTY_FUNCTION__.7041> "ptimer_callback") at assert.c:101 #4 0x00007fc51d45b620 in ptimer_callback (pt=0xfd8db8) at /home/chug/git/qpid-proton/proton-c/src/proactor/epoll.c:181 #5 0x00007fc51d45ebae in proactor_process (p=0xfd8d40, timeout=true) at /home/chug/git/qpid-proton/proton-c/src/proactor/epoll.c:1537 #6 0x00007fc51d45f0ae in proactor_do_epoll (p=0xfd8d40, can_block=true) at /home/chug/git/qpid-proton/proton-c/src/proactor/epoll.c:1657 #7 0x00007fc51d45f196 in pn_proactor_wait (p=0xfd8d40) at /home/chug/git/qpid-proton/proton-c/src/proactor/epoll.c:1680 #8 0x00007fc51d901d6a in thread_run (arg=0xfcfdd0) at /home/chug/git/qpid-dispatch/src/server.c:817 #9 0x00007fc51d2416ca in start_thread (arg=0x7fc50fd93700) at pthread_create.c:333 #10 0x00007fc51c56df7f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 {noformat} The attached conf files are for the test routers. -- This message was sent by Atlassian JIRA (v6.3.15#6346) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org