Investigate invalid incrementing of fractional timestamps
Summary
When using the timestamper_scdcd.hdl partner has noted inconstancies with the fractional of timestamps. They are using custom workers to print out fractional, those will have to be validated as well.
OCPI Message:
Protocol: 0 (uchar_timed_sample)
Opcode: 1 (time)
Data: 345.7762594067026s {'fraction': 14319458610252349440, 'seconds': 345}
OCPI Message:
Protocol: 0 (uchar_timed_sample)
Opcode: 1 (time)
Data: 345.33973378757946s {'fraction': 6266982232670339072, 'seconds': 345}
OCPI Message:
Protocol: 0 (uchar_timed_sample)
Opcode: 1 (time)
Data: 345.90320796868764s {'fraction': 16661246243715940352, 'seconds': 345}
OCPI Message:
Protocol: 0 (uchar_timed_sample)
Opcode: 1 (time)
Data: 345.52998028253205s {'fraction': 9776410635981029376, 'seconds': 345}
OCPI Message:
Protocol: 0 (uchar_timed_sample)
Opcode: 1 (time)
Data: 345.0934542634059s {'fraction': 1723926879645204480, 'seconds': 345}
OCPI Message:
Protocol: 0 (uchar_timed_sample)
Opcode: 1 (time)
Data: 345.7053089812398s {'fraction': 13010654269819322368, 'seconds': 345}
OCPI Message:
Protocol: 0 (uchar_timed_sample)
Opcode: 1 (time)
Data: 345.2687828121707s {'fraction': 4958167747524558848, 'seconds': 345}
Steps to reproduce
This issue will be updated as more information becomes avaialbe.
- recreate partner environment - hints in doing so can be found on Opencpi.org slack channel
Context
Utilize timestamper in custom application on E31x/xilinx19_2_aarch32 platform.
Expected correct behavior
Fractional portion increments in a deterministic manner, ie does not jump around and only increments forward.
Relevant logs and/or screenshots
(Paste any relevant logs - please use code blocks (```) to format console output, logs, and code as it is tough to read otherwise.)
console/log/code output here
Environment info
- OpenCPI Version used: v2.4.0
- Type of install (Source or RPM): source
- Environment vars (
env | grep -i ocpi | sort
): - Operating System and version (ex. CentOS 7): Ubuntu 18.04
- Link to your project on GitLab (optional):