The request timeout works in Mojito.Pool because the whole request process is waiting for a response in a single receive with an after based on the timeout, but I believe because Mojito.Request.receive_response is recursive-ish (it calls handle_msg which can call receive_response again) the after in each receive is for each message received rather than the request as a whole.
The request timeout works in
Mojito.Pool
because the whole request process is waiting for a response in a singlereceive
with anafter
based on the timeout, but I believe becauseMojito.Request.receive_response
is recursive-ish (it callshandle_msg
which can callreceive_response
again) theafter
in eachreceive
is for each message received rather than the request as a whole.