teohhanhui / callbag-rs

Rust implementation of the callbag spec for reactive/iterable programming
Apache License 2.0
30 stars 2 forks source link

Debug falling async tests #2

Open teohhanhui opened 2 years ago

teohhanhui commented 2 years ago

From https://github.com/teohhanhui/callbag-rs/pull/1#issue-1091682936:

teohhanhui commented 2 years ago

I've noticed that the timers seem to be way off (firing too late) on Mac.

Looking at the timestamps for it_errors_sink_and_unsubscribe_from_inner_when_outer_throws log entries:

Actual results (macOS)

Fail because the sink is expecting Message::Data("a2")

Expected results (Linux)

Success

What's going on?

If I understand correctly, this may be due to the macOS runner on GitHub Actions having 3 CPU cores instead of 2 for the Linux and Windows runners.

There is some serious resource contention going on. It's probably not the CPU, but stdout (for the test output).

Possible workarounds / solutions