mbb[io].*VL fields unwritable

Bug #1794196 reported by Andrew Johnson
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
EPICS Base
Fix Released
Critical
Andrew Johnson

Bug Description

Between 3.16 and 7.0 the mbbi and mbbo record types lost the ability to write to their *VL fields (ZRVL, ONVL etc.)

tux% caput anj:mbbi0.ONVL 123
Old : anj:mbbi0.ONVL 0
CA.Client.Exception...............................................
    Warning: "Channel write request failed"
    Context: "op=1, channel=anj:mbbi0.ONVL, type=DBR_STRING, count=1, ctx="anj:mbbi0""
    Source File: ../oldChannelNotify.cpp line 160
    Current Time: Mon Sep 24 2018 17:14:31.744304921
New : anj:mbbi0.ONVL 0
..................................................................
tux%

epics> dbpf anj:mbbi0.ONVL 123
Error (511,511) PV: anj:mbbi0.ONVL error detected in routine: mbbi: special

DBF_ULONG: 0 = 0x0

Revision history for this message
Andrew Johnson (anj) wrote :

Ralph's commit 45415512 seems to be the culprit; the modifications to special() to add the SIMM field look to have been written without realizing that the *VL fields are also marked SPC_MOD in the mbbi and mbbo records. Previously special() returned 0 for these fields, but now it is returning an error.

Patch attached to return the special() routines to doing the right thing. I will apply after Mark Rivers confirms it fixes the problem for him. I haven't checked any other record types.

Revision history for this message
Ralph Lange (ralph-lange) wrote :

My bad. Sorry to have broken functionality that I wasn't aware of. Thanks for adding a hint in the comment.

Underlines the fact that we are really and almost completely missing functional tests for the record types.

Andrew Johnson (anj)
Changed in epics-base:
status: In Progress → Fix Committed
Andrew Johnson (anj)
Changed in epics-base:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.