Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix hanging requests with filtered steal #3016

Merged
Changes from 1 commit
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
a0c317a
Integration test
Razz4780 Jan 14, 2025
f7359bc
Moved MetadataStore to a separate module
Razz4780 Jan 14, 2025
48bac27
bind_similar -> BoundTcpSocket
Razz4780 Jan 14, 2025
5798219
BodyExt -> BatchedBody, reworked trait
Razz4780 Jan 14, 2025
6e2d3bc
local HTTP handling rework
Razz4780 Jan 14, 2025
6a47585
Remove obsolete stuff from mirrord-protocol
Razz4780 Jan 14, 2025
4b79bf7
Moved HttpResponseFallback to the agent
Razz4780 Jan 14, 2025
3486e0a
Moved frame senders to InterceptorHandle
Razz4780 Jan 14, 2025
e5b5d93
HttpResponseReaders in IncomingProxy
Razz4780 Jan 14, 2025
520f5e9
Clippy
Razz4780 Jan 14, 2025
85940d7
Better tracing
Razz4780 Jan 14, 2025
f59a62c
HttpResponseReader logic split into methods
Razz4780 Jan 15, 2025
600d958
unless_bus_closed
Razz4780 Jan 15, 2025
8b15a86
I hate this
Razz4780 Jan 16, 2025
ab4fdb5
HttpGateway tests
Razz4780 Jan 16, 2025
d729c3b
ClientStore test
Razz4780 Jan 16, 2025
1a08649
Changed implementation of ClientStore shared state
Razz4780 Jan 16, 2025
c25b15e
Some docs
Razz4780 Jan 16, 2025
295099f
Docs
Razz4780 Jan 16, 2025
7508902
Removed obsolete integration test - replaced before with a unit test
Razz4780 Jan 16, 2025
203af97
More ClientStore tracing
Razz4780 Jan 16, 2025
39dee15
Less spammy debug for InProxyTaskMessage
Razz4780 Jan 16, 2025
609ecd1
Clippy and docs
Razz4780 Jan 16, 2025
20c6fc2
More tracing
Razz4780 Jan 16, 2025
053599c
Clippy
Razz4780 Jan 17, 2025
5c343fb
Fixed TcpProxyTask
Razz4780 Jan 17, 2025
0a346a4
More IncomingProxy docs
Razz4780 Jan 17, 2025
7458a38
macos tests fixed
Razz4780 Jan 17, 2025
7b8a14f
Fixed reverseportforwarder and its tests
Razz4780 Jan 17, 2025
78f47e8
Upgrade fixed
Razz4780 Jan 17, 2025
cfa95ff
Extended changelog
Razz4780 Jan 18, 2025
c612152
Frames doc
Razz4780 Jan 18, 2025
91a18c4
Helper function for BatchedBody
Razz4780 Jan 18, 2025
16a4da1
auto_responder -> unwrap instead of is_err + break
Razz4780 Jan 18, 2025
ec0fd2c
ClientStore unwrap -> expect
Razz4780 Jan 18, 2025
b09ea4a
Comments for ClientStore cleanup_task
Razz4780 Jan 18, 2025
7e91864
Closed doc
Razz4780 Jan 19, 2025
3ffd3d2
TcpStealApi::response_body_tx doc
Razz4780 Jan 19, 2025
d6fe566
Removed expect from client_store::cleanup_task
Razz4780 Jan 19, 2025
10981cb
Merge branch 'main' into michals/mbe-649-filtered-steal-hangs-on-play…
Razz4780 Jan 19, 2025
e437124
Doc lint
Razz4780 Jan 20, 2025
4fd0f6a
Update mirrord/intproxy/src/background_tasks.rs
Razz4780 Jan 20, 2025
ea247c9
Update mirrord/intproxy/src/proxies/incoming.rs
Razz4780 Jan 20, 2025
f6fad54
error -> unreachable
Razz4780 Jan 20, 2025
5ac91bc
pub(crate) for Closed
Razz4780 Jan 20, 2025
a02a339
Update mirrord/intproxy/src/proxies/incoming.rs
Razz4780 Jan 20, 2025
4a01232
not war
Razz4780 Jan 20, 2025
93bbeee
More doccc
Razz4780 Jan 20, 2025
d3d2898
self_address -> self
Razz4780 Jan 20, 2025
6342a43
rephrased error messages
Razz4780 Jan 20, 2025
b7c1c31
instrument on LocalHttpClient::new
Razz4780 Jan 20, 2025
dbe4418
More docs on clone for StreamingBody
Razz4780 Jan 20, 2025
123f310
docc
Razz4780 Jan 20, 2025
ff9d317
docsss
Razz4780 Jan 20, 2025
f2bc71c
Doc fixed
Razz4780 Jan 20, 2025
93b7baa
Doc fixed
Razz4780 Jan 20, 2025
9b22880
more instrument
Razz4780 Jan 20, 2025
271df63
in whole -> without a filter
Razz4780 Jan 21, 2025
f961054
moar doccc
Razz4780 Jan 21, 2025
b85878c
TPC -> TCP
Razz4780 Jan 21, 2025
216e2c7
added ignore to doctest
Razz4780 Jan 21, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Clippy
Razz4780 committed Jan 17, 2025
commit 053599c6d505a12b758e171bae9691434d57aa90
12 changes: 6 additions & 6 deletions mirrord/intproxy/src/proxies/incoming/http_gateway.rs
Original file line number Diff line number Diff line change
@@ -165,31 +165,31 @@ impl HttpGatewayTask {
let start = Instant::now();
match body.next_frames().await {
Ok(frames) => {
let body_finished = frames.is_last;
let is_last = frames.is_last;
let frames = frames
.frames
.into_iter()
.map(InternalHttpBodyFrame::from)
.collect::<Vec<_>>();
tracing::trace!(
?frames,
body_finished,
is_last,
elapsed_ms = start.elapsed().as_millis(),
"Received next response body frames",
"Received a next batch of response body frames",
);

message_bus
.send(HttpOut::ResponseChunked(ChunkedResponse::Body(
ChunkedHttpBody {
frames: frames,
is_last: body_finished,
frames,
is_last,
connection_id: self.request.connection_id,
request_id: self.request.request_id,
},
)))
.await;

if body_finished {
if is_last {
break;
}
}