Open
Description
This issue reproduces consistently for multiple arm32 Debian 10 Buster devices (raspberry pi 2b). Running a docker container with ubuntu20.04 base image and calling thread::sleep()
will result in the following panic:
thread '<unnamed>' panicked at 'assertion failed: `(left == right)`
left: `1`,
right: `4`', library/std/src/sys/unix/thread.rs:217:21
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
I tried this code (simplified):
const PROCESS_POLL_INTERVAL_SECS: Duration = Duration::from_secs(1);
thread::sleep(PROCESS_POLL_INTERVAL_SECS);
Full source code:
https://github.com/Azure/iotedge/blob/main/edge-hub/watchdog/src/child.rs#L103
I expected to see this happen: no panic, instead a proper sleep.
Instead, this happened: Attempting to sleep panicked.
Meta
Will fill in the below information in a bit.
rustc --version --verbose
:
rustc 1.58.1 (db9d1b20b 2022-01-20)
binary: rustc
commit-hash: db9d1b20bba1968c1ec1fc49616d4742c1725b4b
commit-date: 2022-01-20
host: x86_64-unknown-linux-gnu
release: 1.58.1
LLVM version: 13.0.0
Backtrace
<backtrace>