Bug #2558
Events with same timestamps are replayed with changed order
Status: | In Progress | Start date: | 06/08/2016 | ||
---|---|---|---|---|---|
Priority: | Normal | Due date: | |||
Assignee: | J. Moringen | % Done: | 20% | ||
Category: | Replay | ||||
Target version: | Robotics Service Bus - rsb-0.18 |
Description
In case multiple events have the exact same timestamp (e.g. due to the limited time resolution on windows), they should be sorted in addition by their receive timestamp to ensure that they are replayed in the exact sequence as generated. This is especially important across multiple channels, as channel definitions in tide differ from RSB semantics and therefore sequential guarantees available in RSB might be loosened in bag replay.
Associated revisions
Fixed handling of repeated timestamps in src/backend/tidelog/index.lisp
refs #2558
Repeated timestamps for entries within a channel should not lead to a
warning or sorting of index entries. In fact, since index entries are
not `stable-sort'ed, sorting can be harmful in such cases.
- src/backend/tidelog/index.lisp (header): updated copyright
(put-entry output-index integer integer integer): consider entries to
be in order as long the timestamp of the entry under consideration is
>= ; changed from > - test/backend/tidelog/file.lisp: new file; contains high-level tests
for the tidelog backend; currently only test for entry order
preservation in case of repeated timestamps - rsbag-tidelog.asd (header): updated copyright
(system rsbag-tidelog-test): added file test/backend/tidelog/file.lisp
History
#1 Updated by J. Moringen over 7 years ago
- Category set to Replay
- Status changed from New to In Progress
- Assignee set to J. Moringen
- Target version set to rsb-0.15
- % Done changed from 0 to 20
#2 Updated by J. Moringen over 7 years ago
rsbag-cl|f4b2bc39 is a partial fix for the specific case that adjacent events in a single channel are associated to the same timestamp.
#3 Updated by J. Moringen over 7 years ago
- Target version changed from rsb-0.15 to rsb-0.16
#4 Updated by J. Moringen over 6 years ago
- Target version changed from rsb-0.16 to rsb-0.17
#5 Updated by J. Moringen about 6 years ago
- Target version changed from rsb-0.17 to rsb-0.18