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  <20142015  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  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: pyepics problem with PV.put(wait=True)
From: Jameson Graef Rollins <[email protected]>
To: EPICS tech-talk <[email protected]>
Date: Thu, 14 Aug 2014 17:18:35 -0700
Hi, folks.  I'm seeing what might be a bug in the behavior of PVs in the
pyepics interface, or at the very least something inconsistent with
advertised behavior.

I'm trying to use the wait=True option to PV.put() to wait for process
completion, after which I want to log the put action.  Here's a basic
example:

#!/usr/bin/env python
From epics import PV
pv = PV('T1:TEST-SYS_B')
for i in range(10):
    pv.put(i, wait=True)
    print pv.get()

However, what I'm consistently getting as output from the above is
something like the following:

0.0
0.0
2.0
3.0
3.0
4.0
6.0
6.0
8.0
9.0

Note that the output is not at all what is expected: on three out of ten
writes a pv.get() immediately following a pv.put(wait=True) fails to
return the newly updated value.  I see the same failures if I instead
set use_complete=True and check for put_complete==True before issuing
pv.get().

If the put() has actually completed, why is the get() still seeing the
old value?

Thanks in advance for any help or suggestions.

jamie.

Attachment: pgpfulDjZebXx.pgp
Description: PGP signature


Replies:
RE: pyepics problem with PV.put(wait=True) Mark Rivers
Re: pyepics problem with PV.put(wait=True) Matt Newville

Navigate by Date:
Prev: Re: How to tag soft channels as undefined/disconnected Kellee Summers
Next: RE: pyepics problem with PV.put(wait=True) Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: ePID deadband on output Mooney, Tim M.
Next: RE: pyepics problem with PV.put(wait=True) Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 17 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·