Hope that helps.
From: Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of 吕慧慧 via Tech-talk <tech-talk at aps.anl.gov>
Date: Wednesday, 1 July 2026 at 04:39
To: tech-talk at aps.anl.gov <tech-talk at aps.anl.gov>
Subject: Archiver Appliance cannot archive structured PV data
Hi all,
I have implemented a structured PVA data in an EPICS V7 IOC. The db is as follows:
record(longin, "DEV1:RED:SHOT_ID_TEST") {
field(DTYP, "PSC Reg")
field(INP , "@$(NAME) 526 2")
field(SCAN, "I/O Intr")
field(TSE , "-2")
info(Q:group, {
"DEV1:RED:WAVE_TEST_PVA": {
"COUNT": {
+channel:"VAL"
}
}
})
}
record(waveform, "DEV1:RED:WAVE_TEST_C1") {
field(DTYP, "PSC Block I16 In")
field(INP , "@$(NAME) 8193")
field(SCAN, "I/O Intr")
field(FTVL, "DOUBLE")
field(NELM, "20000000")
info(Q:group,{
"DEV1:RED:WAVE_TEST_PVA": {
"VALUE": {
+channel:"VAL"
}
}
})
}
When I try to archive this PV using the pva://pvname prefix in Archiver Appliance, the archiver throws error messages and cannot establish persistent archiving.
2026-06-30 15:48:19,766 ERROR [JCA Command Thread 9] pv.EPICS_V4_PV (EPICS_V4_PV.java:241) - Cannot determine the timestamp bitset for PV DEVI:RED:WAVE_TEST_PVA. This means we may not save any data at all for
this PV
2026-06-30 15:48:19,767 ERROR [JCA Command Thread 9] pv.EPICS_V4_PV (EPICS_V4_PV.java:442) - exception when reading pv
java.lang.reflect.InvocationTargetException: null
at jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:72) ~[?:?]
at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502) ~[?:?]
at java.lang.reflect.Constructor.newInstance(Constructor.java:486) ~[?:?]
at org.epics.archiverappliance.engine.pv.EPICS_V4_PV.fromStructure(EPICS_V4_PV.java:278) ~[classes/:?]
at org.epics.archiverappliance.engine.pv.EPICS_V4_PV.subscribe(EPICS_V4_PV.java:438) ~[classes/:?]
at org.epics.archiverappliance.engine.pv.EPICS_V4_PV.handleConnected(EPICS_V4_PV.java:388) ~[classes/:?]
at org.epics.archiverappliance.engine.pv.JCACommandThread.run(JCACommandThread.java:194) [classes/:?]
Caused by: java.lang.NullPointerException: Cannot invoke "org.epics.vtype.PVStructure.getString()" because "timestampPVStructure" is null
at org.epics.archiverappliance.common.TimeUtils.convertFromPVTimestamp(TimeUtils.java:531) ~[classes/:?]
at edu.stanford.slac.archiverappliance.PB.data.PBV4GenericBytes.<init>(PBV4GenericBytes.java:78) ~[classes/:?]
at jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62) ~[?:?]
... 6 more
I would like to ask two questions:
1. What is the cause of this failure? I have attached the full error logs from AA engine.
2. Does the current stable version of Archiver Appliance fully support archiving user-defined custom PVA structure PVs?
Thanks a lot for any suggestions.
Best regards,
Huihui