Public bug reported:
Suspected error place: pvget/pvput commands (or libs they use).
The database file "test.db" is:
record(aao, "test_enum:aai") {
field(FTVL, 11)
field(NELM, 64)
}
record(aao, "test_enum:aao") {
field(FTVL, 11)
field(NELM, 64)
}
$ softIocPVA -d test.db
$ pvput test_enum:aao 7 1 2 3 4 5 6 7
Old : <undefined> INVALID DRIVER UDF []
New : 2022-01-28 22:29:29.961 [1,2,3,4,1768778092,2003782772,0]
- the New data in the reply should be [1,2,3,4,5,6,7]
The data shown by pvget/pvbut is 32-bit. But it is stored as 16-bit,
therefore half of the data is lost.
caget/caput seem to work corretly, they access the data as 16-bit
(note 'caput' needs -a -n options to set enum array as numeric),
and the device support gets 2-byte element size by dbEntryToAddr().
It is rather of low importance: who uses ENUM arrays?
(with FTVL from 0 to 10, no problem, at least with pvget/pvput)
** Affects: epics-base
Importance: Undecided
Status: New
** Tags: array enum pvput
--
You received this bug notification because you are a member of EPICS
Core Developers, which is subscribed to EPICS Base.
Matching subscriptions: epics-core-list-subscription
https://bugs.launchpad.net/bugs/1959457
Title:
pvget/pvput for aai/aao record types, with data type=enum, wrong
results
Status in EPICS Base:
New
Bug description:
Suspected error place: pvget/pvput commands (or libs they use).
The database file "test.db" is:
record(aao, "test_enum:aai") {
field(FTVL, 11)
field(NELM, 64)
}
record(aao, "test_enum:aao") {
field(FTVL, 11)
field(NELM, 64)
}
$ softIocPVA -d test.db
$ pvput test_enum:aao 7 1 2 3 4 5 6 7
Old : <undefined> INVALID DRIVER UDF []
New : 2022-01-28 22:29:29.961 [1,2,3,4,1768778092,2003782772,0]
- the New data in the reply should be [1,2,3,4,5,6,7]
The data shown by pvget/pvbut is 32-bit. But it is stored as 16-bit,
therefore half of the data is lost.
caget/caput seem to work corretly, they access the data as 16-bit
(note 'caput' needs -a -n options to set enum array as numeric),
and the device support gets 2-byte element size by dbEntryToAddr().
It is rather of low importance: who uses ENUM arrays?
(with FTVL from 0 to 10, no problem, at least with pvget/pvput)
To manage notifications about this bug go to:
https://bugs.launchpad.net/epics-base/+bug/1959457/+subscriptions
- Navigate by Date:
- Prev:
Build failed in Jenkins: EPICS-7 #396 Jenkins EPICS PSI via Core-talk
- Next:
Build failed in Jenkins: epics-pvaPy-linux32 #970 APS Jenkins via Core-talk
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
<2022>
2023
2024
- Navigate by Thread:
- Prev:
epics-pva2pva-linux32 - Build # 232 - Fixed! APS Jenkins via Core-talk
- Next:
Build failed in Jenkins: epics-pvaPy-linux32 #970 APS Jenkins via Core-talk
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
<2022>
2023
2024
|