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  2015  2016  2017  <20182019  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  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: Failed caput not notified when using ca_array_put_callback
From: "michael.abbott--- via Tech-talk" <[email protected]>
To: "'tech-talk ([email protected])'" <[email protected]>
Date: Mon, 16 Jul 2018 07:54:28 +0000
I have submitted bug #1781874 to launchpad to record this issue.

> -----Original Message-----
> From: Abbott, Michael (DLSLtd,RAL,TEC)
> Sent: 10 July 2018 10:36
> To: tech-talk ([email protected])
> Subject: RE: Failed caput not notified when using ca_array_put_callback
> 
> > Here is a very curious issue that I've just stumbled across:
> asynchronous
> > caput failure is reported, synchronous caput failure is hidden.
> 
> I have managed to pin this down a bit further by running wireshark with
> Michael Davidsaver's nice caproto plugin, and it appears that the IOC (not
> the client library) is responsible for hiding the synchronous caput
> failure.
> 
> Below is a transcript of two caput sessions.  In the first exchange we
> send CA_PROTO_WRITE and receive CA_PROTO_ERROR in response, in the second
> we send and receive CA_PROTO_WRITE_NOTIFY with ECA_NORMAL in the response.
> 
> This is tested with EPICS 3.14.12.3, so maybe this has been fixed in a
> more recent version, but given the cryptic character of this issue maybe
> not.
> 
> 
> Asynchronous
> 
> Client -> IOC
>     Command: Write (0x0004)
>     Payload Size: 8
>     DBR Type: DOUBLE (6)
>     Data Count: 1
>     Operation ID: 1
>     Server Channel ID: 519
>     Value: 0
> 
> IOC -> Client
>     Command: Error (0x000b)
>     Payload Size: 48
>     Data Type: 0x0000
>     Data Count: 0
>     Client Channel ID: 1
>     Status: ECA_PUTFAIL (0x000000a0)
>     Channel Access
>         Command: Write (0x0004)
>         Payload Size: 8
>         Data Type: 0x0006
>         Data Count: 1
>         Param 1: 0x00000207
>         Param 2: 0x00000001
>     Error Message: TS-DI-TMBF-02:MEM:CAPTURE_S
> 
> 
> Synchronous
> 
> Client -> IOC
>     Command: Write Notify (0x0013)
>     Payload Size: 8
>     DBR Type: DOUBLE (6)
>     Data Count: 1
>     Operation ID: 3
>     Server Channel ID: 520
>     Value: 0
> 
> IOC -> Client
>     Command: Write Notify (0x0013)
>     Payload Size: 0
>     DBR Type: DOUBLE (6)
>     Data Count: 1
>     Operation ID: 3
>     Status: ECA_NORMAL (0x00000001)

-- 
This e-mail and any attachments may contain confidential, copyright and or privileged material, and are for the use of the intended addressee only. If you are not the intended addressee or an authorised recipient of the addressee please notify us of receipt by returning the e-mail and do not use, copy, retain, distribute or disclose the information in or attached to the e-mail.
Any opinions expressed within this e-mail are those of the individual and not necessarily of Diamond Light Source Ltd. 
Diamond Light Source Ltd. cannot guarantee that this e-mail or any attachments are free from viruses and we cannot accept liability for any damage which you may sustain as a result of software viruses which may be transmitted in or with the message.
Diamond Light Source Limited (company no. 4375679). Registered in England and Wales with its registered office at Diamond House, Harwell Science and Innovation Campus, Didcot, Oxfordshire, OX11 0DE, United Kingdom


References:
Failed caput not notified when using ca_array_put_callback [email protected]
RE: Failed caput not notified when using ca_array_put_callback [email protected]

Navigate by Date:
Prev: Re: caget randomly returns Channel connect timed out Dirk Zimoch via Tech-talk
Next: Re: Re: Question about RDB Channel archiver engine be used for the waveform channels lzf neu via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: Failed caput not notified when using ca_array_put_callback [email protected]
Next: areaDetector R3-3-2 released Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
ANJ, 16 Jul 2018 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·