A pvget to the alarm or timeStamp field of an enum PV published by pvaSrv (from a record of type bi, bo, mbbi, mbbo or busy) fails:
$ pvget -r "field(timeStamp)" ColorMode
[ColorMode] failed to create channel get: Status [type=FATAL, message=Should never get here]
$ pvget -r "field(alarm)" ColorMode[ColorMode] failed to create channel get: Status [type=FATAL, message=Should never get here]
However a pvget to fetch all fields succeeds:
$ pvget -r "field()" ColorMode
ColorMode
epics:nt/NTEnum:1.0
enum_t value Mono
alarm_t alarm NO_ALARM NO_STATUS <no message="">
time_t timeStamp 2014-11-21T16:05:54.895 0
The issue isn't present for pvDatabaseCPP enum PVs:
$ pvget -r "field(timeStamp)" enumPV1
enumPV1
structure
time_t timeStamp 2014-11-21T17:14:00.047 0
It does not arise either for scalar PVs.
Strangely if you append an erroneous RTYP field (or PROC, DISA, DISV, PHAS, PACT, ZRST etc., ZRVL etc.) the get succeeds:
$ pvget -r "field(alarm)" ColorMode.RTYP
ColorMode.RTYP
structure
alarm_t alarm NO_ALARM NO_STATUS <no message="">
but this doesn't happen for SEVR (or STAT, PRIO, DISS, SDIS, FLNK, DTYP):
$ pvget -r "field(alarm)" ColorMode.SEVR
[ColorMode.SEVR] failed to create channel get: Status [type=FATAL, message=Should never get here]
Moved to GitHub (pvaSrv Issue #4)