Andrew,
The root problem here I suspect is that DB CA link code does not have a
shutdown procedure and therefore it is not destroying its CA context before
the process exits. So when the process rundown starts and the resources that
the UDP thread uses start to cease to exist then the UDP thread crashes.
As I recall, the crux of this issue is that a shutdown procedure for the db
ca link code would need to destroy all of its channels first, before
destroying the ca context, and that would require that the individual
records have shutdown procedures in place also - a big change.
What OS do you see this on? We might be able to attach with a debugger to
get more detail, but I suspect that we will only see that the above
suspicions are accurate.
Jeff
> -----Original Message-----
> From: Andrew Johnson [mailto:[email protected]]
> Sent: Wednesday, December 13, 2006 4:24 PM
> To: EPICS core-talk
> Subject: Re: C++ Exceptions from CAC-UDP on exit
>
> Update: I'm seeing this in other applications where access security is
> not involved but where two IOCs are linked together. For example, in
> the iocconvert tests I started the client IOC after and stopped it
> before the master IOC, with this result:
>
> > uranus% ../../bin/linux-x86/convert client.main
> > dbLoadDatabase("../../dbd/convert.dbd",0,0)
> > convert_registerRecordDeviceDriver(pdbbase)
> > dbLoadRecords("../../convertApp/Db/convertClient.db",0)
> > dbLoadRecords("../../convertApp/Db/convertClientENUM.db",0)
> > iocInit()
> > Starting iocInit
> >
> ##########################################################################
> ##
> > ## EPICS R3.14.9-CVS $$Name: $$ $$Date: 2006/12/11 22:32:14 $$
> > ## EPICS Base built Dec 11 2006
> >
> ##########################################################################
> ##
> > iocInit: All initialization complete
> > cas warning: Configured TCP port was unavailable.
> > cas warning: Using dynamically assigned TCP port 37984,
> > cas warning: but now two or more servers share the same UDP port.
> > cas warning: Depending on your IP kernel this server may not be
> > cas warning: reachable with UDP unicast (a host's IP in
> EPICS_CA_ADDR_LIST)
> > epics> epicsThread: Unknown C++ exception in thread "CAC-UDP" at Wed Dec
> 13 2006 17:18:55.22003000
> > terminate called after throwing an instance of ''
> > FATAL: exception not rethrown
> > Abort
>
> - Andrew
> --
> There is considerable overlap between the intelligence of the smartest
> bears and the dumbest tourists -- Yosemite National Park Ranger
- Replies:
- RE: C++ Exceptions from CAC-UDP on exit Jeff Hill
- Re: C++ Exceptions from CAC-UDP on exit Andrew Johnson
- References:
- Re: C++ Exceptions from CAC-UDP on exit Andrew Johnson
- Navigate by Date:
- Prev:
Re: [Fwd: EPICS Base @ HP-UX: Volunteers wanted] Andrew Johnson
- Next:
RE: C++ Exceptions from CAC-UDP on exit Jeff Hill
- 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: C++ Exceptions from CAC-UDP on exit Andrew Johnson
- Next:
RE: C++ Exceptions from CAC-UDP on exit Jeff Hill
- Index:
2002
2003
2004
2005
<2006>
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|