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: Fwd: CA link behavior
From: Andrew Johnson <[email protected]>
To: Geoff Savage <[email protected]>
Cc: [email protected]
Date: Tue, 8 Dec 2009 12:32:37 -0600
Hi Geoff,

On Monday 23 November 2009 16:52:43 Geoff Savage wrote:
> Here are the details of my testing with a summary preceding.

Thanks for that very helpful and detailed bug report.  For others, I'll quote 
Geoff's original message to explain what's happening:

> On Friday 13 November 2009 13:38:36 Geoff Savage wrote:
>>
>> I have a passive stringout record in IOC A whose OUTLINK references an
>> mbbo record in IOC B.  When I reboot IOC B the value in the stringout
>> record is written to the mbbo record even though the stringout record
>> has not been processed.

I have confirmed that exactly the same thing occurs with the latest release, 
and after studying the history of the code it looks like this behavior may 
date all the way back to 1996.

The good news is that it only happens when the data type used is a string, so 
if you replace your stringout with a longout or another mbbo it will stop 
happening.  That changes the coupling between your two IOCs slightly since 
you've moved the string to state conversion, but it doesn't really increase it 
because the strings had to match before anyway.

The bad news is that it looks like Marty intended this to happen for all data 
types, as he went to the trouble of storing a copy of the data and recording 
the fact that the link had actually been used.  In practice non-string output 
links don't re-send their last value on reconnection because the link flag bit 
pvlOptOutNative never actually gets set anywhere in the code.

The question at this point is whether to change the current behavior for 
string data.  Given that EPICS users are not used to this my inclination is to 
stop it happening for strings too, but I'm open to argument on that.  In the 
future we might add a link flag to allow the DB designer to control whether 
this should occur, so I will probably leave the implementation in place anyway 
and just disable it for now.

Any comments?

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


Replies:
Re: Fwd: CA link behavior Dirk Zimoch
References:
Re: CA link behavior Andrew Johnson
Fwd: CA link behavior Geoff Savage

Navigate by Date:
Prev: Re: polling through the gateway Dirk Zimoch
Next: Asyn On Cygwin Pawel Kowalski - BiRa Systems Inc.
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: Fwd: CA link behavior Geoff Savage
Next: Re: Fwd: CA link behavior Dirk Zimoch
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 ·