caput program status doesn't flag rejected put
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
EPICS Base |
Fix Released
|
Wishlist
|
Andrew Johnson |
Bug Description
When a caput operation gets rejected by the server for some reason, it would be nice if the return status from the src/catools/caput program somehow reflected that. It currently appears to reflect the status of the subsequent caget operation, which usually succeeds even if the put didn't.
Steps to reproduce:
Use caput to set the wrong kind of hardware address to the INP or OUT field of a record with a DTYP that is not soft channel. In this example, the DTYP requires a BITBUS_IO address but I'm giving it a VME_IO:
saturn% bin/linux-x86/caput -t anjHost:mbbi.INP "#C0 S0 @"
CA.Client.
Warning: "Channel write request failed"
Context: "op=1, channel=
Source File: ../oldChannelNo
Current Time: Wed Nov 16 2005 17:06:09.955082000
.......
#L0 N0 P0 S0 @
saturn% echo $status
0
Additional information:
This may become more important with extended device support since the rejection of puts will happen more often when live address changes are refused.
Put failures are not handled very well by most CA clients, even the sequencer doesn't provide any direct way to find out whether a pvPut() was rejected by the server.
Version: R3.14.7
Original Mantis Bug: mantis-226
http://
I'm not expecting a fix for this in R3.14.8...