When I run my sequencer tests (the latest version on the 2.2 branch with
the latest version of base from the 3.15 branch), I get this:
A call to 'assert(ellCount(&pnotifyGlobal->freeList)==0)'
by thread 'bittypesTest' failed in ../../../src/ioc/db/dbNotify.c
line 304.
EPICS Release EPICS R3.15.0.1-DEV $$Date$$.
Local time is 2014-08-04 12:02:02.162795955 CEST
Please E-mail this message to the author or to [email protected]
Calling epicsThreadSuspendSelf()
This is quite interesting because it happens exactly at the point where
previously my tests used to sometimes hang. Normally I could Ctrl-C them
and re-start and then everything runs through. This time the failure
seems to be reproducible.
BTW, the way the EPICS base version of assert behaves here is not very
helpful. The definition from the standard library would give me a core
dump which I could load into a debugger.
Anyway, I experimentally removed the assert definition in base and re-
compiled. Since the tests now continue to run instead of hanging, I see
that I consistently get the same failure for three test programs. In all
three cases, the actual tests never fail: the failure happens only when
the IOC gets shut down. Here is the output when running only the first
test program that exhibits the assertion failure:
franksen@tiber: ...test/validate/O.linux-x86 > perl bittypes.t
Starting iocInit
############################################################################
## EPICS R3.15.0.1-DEV $$Date$$
## EPICS Base built Aug 4 2014
############################################################################
iocRun: All initialization complete
Sequencer release 2.1.16, compiled Mon Aug 4 12:20:39 2014
Spawning sequencer program "bittypesTest", thread 0x99f5960:
"bittypesTest"
bittypesTest[0]: all channels connected & received 1st monitor
1..24
ok 1 - sizeof((i8)) == 1
ok 2 - sizeof((ui8)) == 1
ok 3 - sizeof((i16)) == 2
ok 4 - sizeof((ui16)) == 2
ok 5 - sizeof((i32)) == 4
ok 6 - sizeof((ui32)) == 4
ok 7 - pvstat == pvStatOK
ok 8 - pvstat == pvStatOK
ok 9 - i8 == _seq_vars_test._seq_vars_conversion.xi8
ok 10 - pvstat == pvStatOK
ok 11 - pvstat == pvStatOK
ok 12 - ui8 == _seq_vars_test._seq_vars_conversion.xui8
ok 13 - pvstat == pvStatOK
ok 14 - pvstat == pvStatOK
ok 15 - i16 == _seq_vars_test._seq_vars_conversion.xi16
ok 16 - pvstat == pvStatOK
ok 17 - pvstat == pvStatOK
ok 18 - ui16 == _seq_vars_test._seq_vars_conversion.xui16
ok 19 - pvstat == pvStatOK
ok 20 - pvstat == pvStatOK
ok 21 - i32 != _seq_vars_test._seq_vars_conversion.xi32
ok 22 - pvstat == pvStatOK
ok 23 - pvstat == pvStatOK
ok 24 - ui32 != _seq_vars_test._seq_vars_conversion.xui32
Results
=======
Tests: 24
Passed: 24 = 100.00%
Instance 0 of sequencer program "bittypesTest" terminated
bittypes: ../../../src/ioc/db/dbNotify.c:304: dbProcessNotifyExit:
Assertion `((&pnotifyGlobal->freeList)->count)==0' failed.
For reproduction, check out (darcs get):
http://www-csr.bessy.de/control/SoftDist/sequencer/repo/branch-2-2
Cheers
Ben
--
"Make it so they have to reboot after every typo." â Scott Adams
Attachment:
signature.asc
Description: This is a digitally signed message part.
- Replies:
- Re: Failed assertion in base 3.15 Benjamin Franksen
- Navigate by Date:
- Prev:
Re: changes to HW link behavior Benjamin Franksen
- Next:
Re: Failed assertion in base 3.15 Benjamin Franksen
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
<2014>
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: changes to HW link behavior Benjamin Franksen
- Next:
Re: Failed assertion in base 3.15 Benjamin Franksen
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
<2014>
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|