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: DB CA link to PROC field
From: Tim Mooney <[email protected]>
To: Andrew Johnson <[email protected]>
Cc: [email protected]
Date: Wed, 15 Jul 2009 10:15:05 -0500


Andrew Johnson wrote:
On Tuesday 14 July 2009 17:53:25 Benjamin Franksen wrote:
On Dienstag, 14. Juli 2009, Tim Mooney wrote:
Benjamin Franksen wrote:
I get this message on the iocsh (base is 3.14.8.2):

dbCaTask ca_array_put Channel write request failed
OTERMPCGP:cmdRmp has DB CA link to OTERMPCGP:colStRmp.PROC
Ben,  I get that same error message when I use a CA link (from any
record) to
process a  record whose processing results in an error.  If your
situation is
like mine, OTERMPCGP:colStRmp should be in some kind of alarm.
Interesting. I'll check this. The message is a bit misleading (if this is
indeed what causes it), to me it suggests that I have somehow misconfigured
the link.

I agree the message is misleading. It occurs because any error status returned by device support is passed back up the call chain and is returned by the record type's process() routine, by dbProcess(), then by dbPutField(). db_put_field converts it to a 0 or -1 value and results in the channel access server reporting a write error to the client, which in this case is the dbCa link where your error message came from.

I would be interested in any thoughts on whereabouts in the above chain we should clear any error status from device support. I suspect it should be the record type's responsibility once it has put the record into an alarm state (thus handling and reporting the error), but I could be persuaded otherwise.

- Andrew

I think it's a great thing to have a message identifying the record whose
CA link caused the processing that failed.  I think a less generic error
message would be an improvement.  People expect an error message to say
what's wrong; the message "<record> has a DB CA link..." gives context for
the previous message, but I read it as implying something wrong with the link.
For me, it would be clearer if the message said something like "An error
occurred while <record A> was writing, via a DB CA link, to <record B>".

--
Tim Mooney ([email protected]) (630)252-5417
Beamline Controls & Data Acquisition Group
Advanced Photon Source, Argonne National Lab.

References:
DB CA link to PROC field Benjamin Franksen
Re: DB CA link to PROC field Tim Mooney
Re: DB CA link to PROC field Benjamin Franksen
Re: DB CA link to PROC field Andrew Johnson

Navigate by Date:
Prev: Re: CAEN SY127 and SY527 Burkhard Kolb
Next: RE: uptodate version of modtcp? So, Sung-Leung
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: Re: DB CA link to PROC field Andrew Johnson
Next: sub routine record doesn't get value via INPD Dr. Peter Zumbruch
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 ·