This is just an observation about a change in the behaviour of
those EPICS records which can have a user routine associated with
them (i.e. through the SNAM field). In particluar, I have in mind
the sub and genSub records.
Prior to 3.13.8, the user routine was always called, regardless of
whether any CA input link was connected or not. This changed
at 3.13.8 because "dbGetLink" started returning -1 if a link
was disconnected. And, hence, in that case, the user routine never
gets called. And consequently, the output links never fire off
or get updated.
We may be alone in this, but for our telescope systems, we have
a few instances where we have an input CA link to a genSub
and the status of the connection (or the ALARM severity of the
record, if propagated with MS), is used within the user routine
itself to determine what values to use in the calculation.
If the connection is good, it pulls in the real values, if it
is bad, it uses some simulated values or something else. This
design breaks now because the user routine never gets called.
I say value(s) because often it is an array we are dealing with.
I'm sure there are ways around this by using an intervening record
to link to the outside world and so convert all the genSub links
into local DB links but one thing I thought of doing was adding an extra
field to the genSub which could take two values:
OLD meaning ignore the return status for disconnected links
and call the user routine anyway (and to help support this
it would nice be if "dbGetLink" returned a different error number
for a disconnected link than it does for other types of error)
NEW behave as 3.13.8 onwards
(The default for the field would be NEW)
I'm just interested to know if this change in behaviour, at 3.13.8,
has affected anyone else besides us! Of course, I'm only
talking about changing the genSub record above, since it is outside of
"base". The change, at 3.13.8, still affects the sub record.
I would be very interested to hear any comments.
Observatory Sciences Limited Email: firstname.lastname@example.org
William James House Tel: 44 - (0)1223 - 508259
Cowley Road Fax: 44 - (0)1223 - 508258
Cambridge, CB4 0WX, UK http://www.observatorysciences.co.uk