Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017 
<== Date ==> <== Thread ==>

Subject: Re: Calcout using CA output link sometimes gets INVALID severity
From: Ralph Lange <Ralph.Lange@gmx.de>
To: EPICS Tech Talk <tech-talk@aps.anl.gov>
Date: Fri, 12 Oct 2012 18:21:58 +0200
On Fri Oct 12 2012 17:45:33 GMT+0200 (CEST), J. Lewis Muir
<jlmuir@imca-cat.org> wrote:
> Yes, inserting the delay makes the problem go away.
>
> But this seems like a bug to me.  Isn't the IOC supposed to be
> in the "running" state after iocInit completes?  I would expect
> this to mean that any threads related to CA link processing have
> completed starting and are in a state ready to service CA
> requests.  I would not expect to have to insert epicsThreadSleep
> calls after iocInit to make things work.
>
> Also, I don't know exactly how the pause and run stuff works,
> but if the IOC is paused and then run again at a later time,
> will the same problem occur?  If so, I guess I'd have to add a
> delay on coming out of the paused state to ensure my record will
> process correctly.  That would be pretty lame.

You might consider moving your functionality into a SNL state machine.
By default, the sequencer waits for all CA connections to be up before
starting a state set. That seems to be a better fit for your problem.

As for the IOC startup: consider a typical IOC with 1000s of CA
connections, and a few typing errors in link target names. Such an IOC
would almost never start.
Or, how hard it would be to start up the control system after a power
outage, if every IOC waits for all other IOCs to be up first.

Cheers,
~Ralph


Replies:
Re: Calcout using CA output link sometimes gets INVALID severity J. Lewis Muir
References:
Calcout using CA output link sometimes gets INVALID severity J. Lewis Muir
Re: Calcout using CA output link sometimes gets INVALID severity Andrew Johnson
Re: Calcout using CA output link sometimes gets INVALID severity J. Lewis Muir

Navigate by Date:
Prev: Re: Calcout using CA output link sometimes gets INVALID severity J. Lewis Muir
Next: Re: Calcout using CA output link sometimes gets INVALID severity Andrew Johnson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017 
Navigate by Thread:
Prev: Re: Calcout using CA output link sometimes gets INVALID severity J. Lewis Muir
Next: Re: Calcout using CA output link sometimes gets INVALID severity J. Lewis Muir
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·