assert (ev_que->evque[ev_que->putix] == EVENTQEMPTY) failed in dbEvent.c
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
EPICS Base |
Triaged
|
Low
|
Unassigned |
Bug Description
2009-06-04 10:00 iocsrvid2>
CAS-client: A call to "assert (ev_que-
EPICS Release EPICS R3.14.10-asd1 $R3-14-10$ $2008/10/27 19:39:04$.
Please E-mail this message and the output from "tt (0x13144d0)"
to the author or to <email address hidden> Thread CAS-client (0x13144d0) suspended
causing all the network buffers to get used up and all network-related activities to die, e.g:
callbackRequest: cbHigh ring buffer full
NTPTimeSync: NTP requests failing - S_sntpcLib_TIMEOUT DB CA Link Exception: "Virtual circuit unresponsive", context "164.54.2.121:5064"
save_restore:do_seq - '/iocinfo/
../online_notify.c: CA beacon (send to "164.54.
iocsrvid2> tt 0x13144d0
133288 vxTaskEntry +68 : 19290c0 ()
1929118 epicsThreadOnce
1864ab4 camsgtask +260: camessage ()
1868ba8 camessage +2f0: 1867bb8 ()
1867e3c rsrvFreePutNoti
1928234 epicsAssert +f8 : epicsThreadSusp
1929274 epicsThreadSusp
This is a PowerPC running vxWorks 5.5.2 and Base R3.14.10. The IOC had to be rebooted. This is the second or third time we've seen ENOBUFS recently, although the engineers didn't see (look for) assertion failure before this.
Original Mantis Bug: mantis-342
http://
Changed in epics-base: | |
status: | New → Incomplete |
Changed in epics-base: | |
importance: | High → Low |
tags: | added: cleanup |
Changed in epics-base: | |
status: | Incomplete → Invalid |
Changed in epics-base: | |
status: | Incomplete → Triaged |
tags: |
added: rsrv removed: 3.14 cleanup |
This caused only one thread to stop so I doubt that the CA server is consuming an abnormal number of MBUFs. Each TCP circuit has a hard quota. Since NTP time sync is failing also it sounds like a network stack issue is the precipitating event.
Nevertheless, this could indicate some kind of bug in the event queue occurring only when the network stack is clobbered. Another possibility; some errant code clobbered the data structures of both the ca server and the network stack.
I will need to have a careful look at the source code.