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
I have a shuttle test for a crate I wrote. It occasionally hits a deadlock that shuttle reports via hitting "exceeded max_steps bound ". It gives a (very big) failing schedule that I should pass to replay in order to reproduce the issue.
The problems are two fold:
replay_from_file can't load the outputted schedule string, always panicking with "invalid schedule"
reducing the max_steps via a custom Config.max_steps so that the schedule is able to be embedded as an argument to replay directly ends with shuttle erroring out with "expected context switch but next schedule step is random choice".
This unfortunately makes shuttle kind of useless for trying to fix this bug, since I can't exercise the reported deadlock to try and debug it under gdb or something to get a stacktrace of the stuck thread.
The text was updated successfully, but these errors were encountered:
Yeah, I've had a similar experience with large failures being very unwieldy and failing to deserialize when replaying, but never had a chance to track it down.
Your second problem sounds like a potential non-determinism issue, but without being able to reliably replay the original failure it's tricky to be sure.
I think you're right that the second issue was just non-determinism: I accidentally was using real rand instead of shuttle::rand somewhere else at that commit.
I have a shuttle test for a crate I wrote. It occasionally hits a deadlock that shuttle reports via hitting "exceeded max_steps bound ". It gives a (very big) failing schedule that I should pass to replay in order to reproduce the issue.
The problems are two fold:
reducing the max_steps via a custom Config.max_steps so that the schedule is able to be embedded as an argument to replay directly ends with shuttle erroring out with "expected context switch but next schedule step is random choice".This unfortunately makes shuttle kind of useless for trying to fix this bug, since I can't exercise the reported deadlock to try and debug it under gdb or something to get a stacktrace of the stuck thread.
The text was updated successfully, but these errors were encountered: