Closed
Description
Basically all response callbacks are invoked from within resume_http_request()
which results in multiple mutable borrows error:
[Envoy (Epoch 0)] [2020-10-30 11:44:15.052][30][critical][wasm] [external/envoy/source/extensions/common/wasm/context.cc:1098] wasm log connectivity_plugin csp_root_id: panicked at 'already borrowed: BorrowMutError', /Users/svetlin/git/oss/proxy-wasm-rust-sdk/src/dispatcher.rs:335:67
This happens when I try to resume the request from a Context::on_http_call_response()
callback. This callback mutably borrows the self.http_streams
member. Then when I resume the request via resume_http_request()
, any subsequent callbacks such as on_http_call_response
, on_done
, and others, result in a second mutable borrows which ends up in a panic!()
, thus crashing envoy.
PS: Failed on istio 1.5.10
Metadata
Metadata
Assignees
Labels
No labels