-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DOL field PV name gets truncated #42
Comments
I'm not an autosave user so I don't know if this will work, but have you tried giving the PV name as |
A colleague tried it and reports:
|
Hopefully someone (@timmmooney @keenanlang @kmpeters ?) with more knowledge of Autosave might be able to help, does it then overwrite any setting of the DOL field that you have loaded from a .db file with an empty string? |
I'm doing some testing using a Linux IOC (base 7.0.4.1 & autosave 5-10-2). If I'm also not able to write a long string to the
This is the contents of the >>> chars = "52 50 105 100 99 75 77 80 58 109 49 58 105 115 97 114 101 97 108 108 121 118 101 114 121 101 120 116 114 101 109 101 108 121 115 117 112 101 114 32 78 80 80 32 78 77 83"
>>> "".join([chr(int(x)) for x in chars.split()])
'42idcKMP:m1:isareallyveryextremelysuper NPP NMS' The truncation is independent of autosave. |
When using caput to write a long string, you have to give it the flag |
Thanks @anjohnson. I went on vacation for a week and I've forgotten everything I know about EPICS. I'm able to set the long DOL value now:
And autosave still fails to do what we need it to do:
I'm not very familiar with the autosave code. @timmmooney, we'll likely need your help to fix this. |
There is a somewhat related problem in autosave, for which I have a fix I that I have not yet committed. The problem occurs with waveform records holding strings, and the string is currently empty. The autosave file has the single character 0, which is correct. The problem is that asVerify reports an error that the save file contains a scalar but the IOC is an array. I ran into this when using the configMenu part of autosave to manual save and restore save sets. |
The IOC's ability to handle zero-length arrays improved significantly between EPICS 7.0.4.1 and 7.0.5 but those changes might affect code like autosave. Please test with both older and newer versions of Base. The synApps record types could need modifying to be able to use empty arrays as well, see the Release Notes for details ("Support for zero-length arrays"). |
Using 5.10.0 autosave here. It turns out that if I want to save/restore a DOL link that is >39 characters, it gets truncated to 40 chars. Is this expected?
The text was updated successfully, but these errors were encountered: