Problem
ResponseFuture starts a request on one pool, but later timeout and retry paths can go back through Session._pools using a mutable Host key. If topology refresh changes the host endpoint or swaps out the pool while the request is still in flight, the future can return the orphaned stream id to the new pool or keep working with a pool that no longer belongs to the selected endpoint.
Impact
This can corrupt per-pool request accounting and route follow-up work through connections that no longer match the endpoint chosen for the request.
Problem
ResponseFuturestarts a request on one pool, but later timeout and retry paths can go back throughSession._poolsusing a mutableHostkey. If topology refresh changes the host endpoint or swaps out the pool while the request is still in flight, the future can return the orphaned stream id to the new pool or keep working with a pool that no longer belongs to the selected endpoint.Impact
This can corrupt per-pool request accounting and route follow-up work through connections that no longer match the endpoint chosen for the request.