EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  <20072008  2009  2010  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  <20072008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: Question on Generating Messages
From: "Jeff Hill" <[email protected]>
To: "'Robert Horrox'" <[email protected]>, <[email protected]>
Date: Fri, 14 Sep 2007 12:22:51 -0600
Robert,

There is a behavior difference between CA put and CA put callback.

With CA put the field is modified and if the record is scanned passively,
the field is process passive, and the record is currently processing a flag
is set indicating that the record needs to be processed again when it
completes its current processing. So with CA put an intermediate value can
be discarded if we have many puts arriving while record processing is in
progress, but the last put is always applied to the record.

With CA put callback the next CA callback put for the same record will not
start until any record processing triggered by a put in progress completes.
So with CA put callback each and every put is applied to the record
preserving the order with which they are requested.

However, use of CA put callback guarantees that the record will see all of
the put requests, but it does not guarantee that a client that is subscribed
(monitoring) will see all of the updates. There is an event queue between
the record and the server that carries the subscription updates.
Intermediate values can be discarded in the event queue if the server,
network, or client are slow in their uptake. Subscription updates encoded as
strings are particularly prone to such losses because the maximum event
queue depth for string encoded values is currently only one entry deep. 

I hope to fix this limitation (by allowing for a maximum queue depth longer
than one for strings, arrays, and compound types) in the next release of
EPICS BTW.

Jeff

> -----Original Message-----
> From: [email protected] [mailto:tech-talk-
> [email protected]] On Behalf Of Robert Horrox
> Sent: Friday, September 14, 2007 11:50 AM
> To: [email protected]
> Subject: Question on Generating Messages
> 
> Greetings,
> 
> I am having trouble finding a way to report information back to an
> operator at an EDM display.  In our control system we have several
> IOC's,
> each of which can generate strings that need to be displayed to the
> operator like, "Beam On" and "Vacuum Pump Failure" etc.  Initially I
> was
> going to write these messages to a PV that is read by a message box in
> EDM.  My problem is if two many messages are written to that PV they
> disappear.  Is their a way to queue up channel access puts or is their
> another way I can handle generating this messages and displaying them
> back
> to an operator.
> 
> Thank you everyone for your time,
> 
> ----------------------------------------------------------------
> Robert Horrox
> University of Washington Medical Center
> Department of Radiation Oncology


References:
Question on Generating Messages Robert Horrox

Navigate by Date:
Prev: Question on Generating Messages Robert Horrox
Next: Re: Question on Generating Messages Rodney R. Porter
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  <20072008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Question on Generating Messages Robert Horrox
Next: Re: Question on Generating Messages Rodney R. Porter
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  <20072008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 10 Nov 2011 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·