A purpose-built proxy for the Linkerd service mesh. Written in Rust.
Go to file
Eliza Weisman 4473fd114d proxy: Fix end events not firing when a stream is ended by a DATA frame (#957)
A recent upstream change in `tower-h2` (tower-rs/tower-h2@d9b3140) caused some
HTTP/2 streams that were previously terminated by TRAILERS frames to be 
terminated by empty DATA frames with the end of stream bit set, instead.

This broke some tests in my dev branch for #944, as our test server also uses
`tower-h2`, and some of the metrics tests were no longer seeing the expected
`StreamResponseEnd` events due to this change. This issue may also occur in
other cases, resulting in incorrect metrics.

This PR changes `MeasuredBody::poll_data` to trigger the Stream End event if
it sees a DATA frame that ends the stream.

Fixes #954 

Signed-off-by: Eliza Weisman <eliza@buoyant.io>
2018-05-16 16:24:29 -07:00
.github Add a newline to dco.yml (#254) 2018-02-01 15:16:02 -08:00
proxy proxy: Fix end events not firing when a stream is ended by a DATA frame (#957) 2018-05-16 16:24:29 -07:00
CONTRIBUTING.md Add contributing doc and DCO file (#88) 2017-12-22 14:54:27 -08:00
Cargo.lock Proxy: Update h2 dependency. (#948) 2018-05-14 11:23:25 -07:00
Cargo.toml proxy: improve graceful shutdown process (#684) 2018-04-10 14:15:37 -07:00
DCO Add contributing doc and DCO file (#88) 2017-12-22 14:54:27 -08:00
LICENSE Introducing Conduit, the ultralight service mesh 2017-12-05 00:24:55 +00:00