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

Subject: Re: pyepics not updating pv.enum_strs after connection
From: Dirk Zimoch <[email protected]>
To: <[email protected]>
Date: Wed, 25 Mar 2015 17:54:20 +0100
On 25.03.2015 17:21, Andrew Johnson wrote:


On 03/25/2015 10:55 AM, Dirk Zimoch wrote:
On 25.03.2015 04:46, Matt Newville wrote:
Yes, I think this idea of getting the ctrl variables in the connection
callback is a good idea, and will allow more straightforward code  As it
is, a pyepics.PV is already expected to be a "rich" object, even if
sacrificing ultimate performance, and is normally expected to have the
ctrl variables.   So, I think it's reasonable to have this getting of
ctrl variables as the default.    I'll add that.

This is generally a good idea for every ca client. After a reboot,
anything may have changed: Enum strings, limits, units, precision, array
size, even record type (and thus data type).

Recent versions of Base (3.14.11 on) have a CA monitor event type
DBE_PROPERTY which was intended for monitoring changes to metadata like
the ctrl variables. 3.14 IOCs don't send out many property events (and
the PV Gateway doesn't support property subscriptions yet either), but
as 3.15 and later IOCs come in they make the case for using this quite a
bit more compelling. I would encourage CA client developers to read the
tech-talk threads discussing DBE_PROPERTY first though, there are a few
gotchas.

- Andrew


This is a different issue. The problem here was not that IOCs changed their properties on the fly but after a reboot! Even EPICS 3.13 should have been able to handle that. But many ca clients are too lazy. That means the client programmer had not thought about the possibility that IOCs may actually change during a reboot.

Dirk


Replies:
Re: pyepics not updating pv.enum_strs after connection Dirk Zimoch
Re: pyepics not updating pv.enum_strs after connection Jameson Graef Rollins
References:
pyepics not updating pv.enum_strs after connection Jameson Graef Rollins
Re: pyepics not updating pv.enum_strs after connection Jameson Graef Rollins
Re: pyepics not updating pv.enum_strs after connection Matt Newville
Re: pyepics not updating pv.enum_strs after connection Jameson Graef Rollins
Re: pyepics not updating pv.enum_strs after connection Matt Newville
Re: pyepics not updating pv.enum_strs after connection Jameson Graef Rollins
Re: pyepics not updating pv.enum_strs after connection Matt Newville
Re: pyepics not updating pv.enum_strs after connection Jameson Graef Rollins
Re: pyepics not updating pv.enum_strs after connection Matt Newville
Re: pyepics not updating pv.enum_strs after connection Dirk Zimoch
Re: pyepics not updating pv.enum_strs after connection Andrew Johnson

Navigate by Date:
Prev: Re: pyepics not updating pv.enum_strs after connection Jameson Graef Rollins
Next: RE: multiple asynRecord communication conflict Zohar, Sioan
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: pyepics not updating pv.enum_strs after connection Andrew Johnson
Next: Re: pyepics not updating pv.enum_strs after connection Dirk Zimoch
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 16 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·