epics-modules / autosave

APS BCDA synApps module: autosave
https://epics-modules.github.io/autosave/
Other
8 stars 31 forks source link

Autosave does not support 64-bit integer records #44

Open jurejesensek opened 2 years ago

jurejesensek commented 2 years ago

Autosave does not support restoring 64-bit integer records (ie. int64out). When restoring, the following log is produced:

dbrestore:scalar_restore: restore of '1' for '' failed filename="../dbrestore.c" line number=291

dbrestore:reboot_restore: restore for PV '' failed

and the PV's value is not restored. In this case <PV_NAME> is the name of the int64out PV.

Steps to reproduce:

  1. Setup an epics7 DB with an int64out record and autosave
  2. Add this int64out record to autosave (tested using info fields in records)
  3. Run the IOC, wait for autosave to save the values and stop the IOC
  4. Restart the IOC

Expected behaviour: The value of the 64-bit PV is saved and restored.

Actual behaviour: The value is saved, but it is not restored after IOC restart, with the above error message.

Build environment: Architecture: x86_64, Linux Epics Base Version: 7.0.5 Autosave version: 5.10.2

hanak commented 2 years ago

I just run into this issue, too. And, I have noticed there is a pull request which can resolve the issue. Is there a maintainer of the repository who can review the pull request?

keenanlang commented 2 years ago

Should be fixed as of 240f81ac86eaf6a1d9c68467da881dac6445d1cb