Skip to content
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

Event loss because of Timestamp filter #101

Open
pLeminoq opened this issue Feb 2, 2023 · 1 comment
Open

Event loss because of Timestamp filter #101

pLeminoq opened this issue Feb 2, 2023 · 1 comment
Assignees

Comments

@pLeminoq
Copy link
Contributor

pLeminoq commented Feb 2, 2023

I got the following log which causes unit tests to fail:

21:02:45.055 [pool-1-thread-92 @coroutine#141] INFO  o.o.b.r.u.c.UnitRegistryController FilterData in updateDataToPublish
21:02:45.074 [pool-1-thread-98] INFO  o.o.j.s.r.ProtoBufFileSynchronizedRegistry [LocationConfigRegistry]: 100% consistency checks passed of LocationConfigRegistry after 12 applied modifications.
21:02:45.086 [pool-1-thread-98] INFO  o.o.b.r.u.c.UnitRegistryController FilterData in updateDataToPublish
21:02:45.089 [pool-1-thread-98] WARN  o.o.b.r.u.c.UnitRegistryController UnitRegistryData filterDataForUser with transaction id 221
21:02:45.090 [pool-1-thread-92 @coroutine#141] WARN  o.o.b.r.u.c.UnitRegistryController UnitRegistryData filterDataForUser with transaction id 206
21:02:45.092 [pool-1-thread-92] INFO  o.o.b.r.u.r.UnitRegistryRemote Skip event on scope[/test/thuxohl/registry/unit] because event seems to be outdated!
21:02:45.094 [pool-1-thread-7] INFO  o.o.b.r.u.r.UnitRegistryRemote Transition check failed, received 206 but waiting for 221 of UnitRegistryRemote[scope:/test/thuxohl/registry/unit]

You can see that one thread (the coroutine) performs a requestData while another thread performs a notification. They get mixed up in a way that the latest data (from the notification) is discarded by the remote because of an older timestamp.

@pLeminoq
Copy link
Contributor Author

pLeminoq commented Feb 2, 2023

We just checked and the print Skip event on scope ... should only happen if no one is logged in with the default session manager. We should check if this is the case during startup of the mock registry. If yes logging in could at least mitigate the problem to cases where no one is logged in.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants