Regularly yield to other zebrad
async tasks
#3113
Labels
C-bug
Category: This is a bug
I-hang
A Zebra component stops responding to requests
I-slow
Problems with performance or responsiveness
S-needs-investigation
Status: Needs further investigation
Motivation
tokio
tasks can run for a long time before yielding to other tasks on the same thread. The executor attempts to compensate by adding extra yield points. But the defaults don't always work for Zebra.This can cause some Zebra tasks to hang for long periods of time. So we might want to add some extra yield points to Zebra.
Tokio Documentation
Summary:
https://docs.rs/tokio/1.14.0/tokio/task/index.html#yield_now
Detailed
yield_now
documentation:https://docs.rs/tokio/1.14.0/tokio/task/fn.yield_now.html#non-guarantees
Tasks
Decide where we should add yield points to Zebra.
Some alternatives are:
Network:
Verifiers:
State:
Completed Tasks
#3191:
DemandDrop
Related Work
The text was updated successfully, but these errors were encountered: