-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
Offending code in the test:
pipitor/src/websub/subscriber.rs
Lines 340 to 350 in a664f9e
| // Subscription renewal. | |
| // tokio::task::yield_now().await; | |
| tokio::time::advance(MARGIN).await; | |
| let (tx, rx) = oneshot::channel(); | |
| let mut tx = Some(tx); | |
| // FIXME: This line occasionally hangs. If you uncomment `yield_now` above, | |
| // the hang occurs deterministically. | |
| let sock = listener.next().timeout().await.unwrap().unwrap(); |
The tokio::time::advance should trigger a subscription renewal and the hub listener should receive a subscription request, but in fact, the listener occasionally hangs.
If you uncomment the yield_now, the Scheduler's get_next_tick callback seems to fire before calling tokio::time::advance(), which is unexpected since the refresh_time has not passed then.
tokio-rs/tokio#2090 may be relevant, I guess.
Metadata
Metadata
Assignees
Labels
No labels