You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The 1e300 values comes from the IOC and is consistent across many motors. It seems a bit big for a limit, but it's a float so it should be fine. When writing this to a sqlite catalog, everything works as expected: the data key I get when reading the stream's metadata shows the limits as 1e300.
When I use this device with a postgres catalog, however, I get an exception in Tiled saying that an integer value is out of range. If I stick a print statement in before the data are sent to msgpack, I see that the 1e300 floats have been turned into integers and no longer fit into any c types.
I have ophyd-async EpicsMotor devices that produce the following datakey in their configurations.
The 1e300 values comes from the IOC and is consistent across many motors. It seems a bit big for a limit, but it's a float so it should be fine. When writing this to a sqlite catalog, everything works as expected: the data key I get when reading the stream's metadata shows the limits as
1e300
.When I use this device with a postgres catalog, however, I get an exception in Tiled saying that an integer value is out of range. If I stick a print statement in before the data are sent to msgpack, I see that the
1e300
floats have been turned into integers and no longer fit into any c types.Curiously, other float datakey limits do not get turned into ints. Like:
Maybe this only effects floats big enough to be serialized in scientific notation?
The text was updated successfully, but these errors were encountered: