EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  <20092010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  <20092010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Local CA out links broken during PINI
From: Andrew Johnson <[email protected]>
To: [email protected], [email protected]
Date: Mon, 16 Feb 2009 10:37:13 -0600
Hi Ben,

On Monday 16 February 2009 05:07:12 Benjamin Franksen wrote:
>
> it seems that CA output links do not work at all during PINI processing if
> the target record is on the same IOC.

> I think this is a bug, as I could not find any note on this behaviour in
> the Developer's Guide.

Please consider the task of bringing up an IOC, i.e. what iocInit does.  Here 
are some lines from iocInit, in order of execution:

    initialProcess();

    /* Start CA server threads */
    rsrv_init();
...
   /* Enable scan tasks and some driver support functions.  */
    scanRun();
    dbCaRun();
...
    rsrv_run();

The CA server has not even been initialized when the initialProcess() (i.e. 
PINI processing) takes place, and the dbCa link task which manages CA links 
is not running at that point either.  PINI has to happen before we release 
the scan threads or allow CA links to connect because they can initiate 
record processing.

We can't allow external CA clients to connect before the PINI processing is 
done because they might interfere with that initialization, and I suspect it 
would be hard to add a separate path to the server to allow internal CA 
clients to connect in advance of the external ones.

I agree that the documentation does not discuss PINI much, but [despite being 
slightly out-dated by R3.14.10] section 7.4 of the AppDevGuide does make 
clear that initialProcess() happens before rsrv_init().

- Andrew
-- 
The best FOSS code is written to be read by other humans -- Harold Welte

Replies:
RE: Local CA out links broken during PINI Jeff Hill
References:
Local CA out links broken during PINI Benjamin Franksen

Navigate by Date:
Prev: Re: compile error with medm 3.1.3 on fedora 10 Janet Anderson
Next: NewPort Optical power meter Model 1918-C Mehta, Pratik
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  <20092010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Local CA out links broken during PINI Benjamin Franksen
Next: RE: Local CA out links broken during PINI Jeff Hill
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  <20092010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 31 Jan 2014 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·