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

Report which frames checksums failed for in synctest sessions #66

Merged
merged 2 commits into from
Dec 8, 2023

Conversation

johanhelsing
Copy link
Contributor

@johanhelsing johanhelsing commented Nov 8, 2023

And also report all mismatched frames, not just the first one.

This makes it much easier to debug desyncs, as it tells you exactly which frame(s) you should look into.

Synctest checksum errors now look like this:

Detected checksum mismatch during rollback on frame 308, mismatched frames: [305, 306]

@johanhelsing johanhelsing marked this pull request as draft November 8, 2023 22:04
@johanhelsing
Copy link
Contributor Author

Or maybe not... We've been through that frame before multiple times already. It's getting a bit late here.

This makes it much easier to debug desyncs, as it tells you exactly
which frame you should look into.
@johanhelsing johanhelsing marked this pull request as ready for review December 7, 2023 13:45
@johanhelsing
Copy link
Contributor Author

johanhelsing commented Dec 7, 2023

Having worked on a couple of hard desync issues in bevy_xpbd, I've come to the conclusion that this is really useful after all.

I changed it to be very explicit. It now reports which frame it did the checksumming (current_frame), and also all frames that didn't pass the check (mismatched_frames).

@johanhelsing johanhelsing changed the title Check synctest frames in chronological order Report which frames checksums failed for in synctest sessions Dec 7, 2023
@gschup gschup merged commit 2303ee7 into gschup:main Dec 8, 2023
2 checks passed
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

Successfully merging this pull request may close these issues.

None yet

2 participants