From ebcbb53d4d5e65a40fd38545eba0b53bce8a20a8 Mon Sep 17 00:00:00 2001 From: Sri Krishna Paritala Date: Wed, 4 Sep 2024 12:15:13 +0530 Subject: [PATCH] Check for abort error Signed-off-by: Sri Krishna Paritala --- packages/connect-web-bench/README.md | 8 ++++---- packages/connect-web-bench/chart.svg | 10 +++++----- packages/connect-web/src/connect-transport.ts | 11 ++++++++++- 3 files changed, 19 insertions(+), 10 deletions(-) diff --git a/packages/connect-web-bench/README.md b/packages/connect-web-bench/README.md index 2b5ddebfb..652848687 100644 --- a/packages/connect-web-bench/README.md +++ b/packages/connect-web-bench/README.md @@ -15,10 +15,10 @@ usually do. We repeat this for an increasing number of RPCs. | code generator | RPCs | bundle size | minified | compressed | | -------------- | ---: | ----------: | --------: | ---------: | -| Connect-ES | 1 | 152,643 b | 66,478 b | 16,380 b | -| Connect-ES | 4 | 168,085 b | 72,418 b | 16,852 b | -| Connect-ES | 8 | 193,398 b | 82,142 b | 17,475 b | -| Connect-ES | 16 | 227,037 b | 96,408 b | 18,237 b | +| Connect-ES | 1 | 152,787 b | 66,535 b | 16,405 b | +| Connect-ES | 4 | 168,229 b | 72,475 b | 16,861 b | +| Connect-ES | 8 | 193,542 b | 82,200 b | 17,497 b | +| Connect-ES | 16 | 227,181 b | 96,463 b | 18,226 b | | gRPC-Web | 1 | 876,563 b | 548,495 b | 52,300 b | | gRPC-Web | 4 | 928,964 b | 580,477 b | 54,673 b | | gRPC-Web | 8 | 1,004,833 b | 628,223 b | 57,118 b | diff --git a/packages/connect-web-bench/chart.svg b/packages/connect-web-bench/chart.svg index 287b9d8aa..91b9cca05 100644 --- a/packages/connect-web-bench/chart.svg +++ b/packages/connect-web-bench/chart.svg @@ -42,13 +42,13 @@ 0 KiB - + Connect-ES -Connect-ES 16 KiB for 1 RPCs -Connect-ES 16.46 KiB for 4 RPCs -Connect-ES 17.07 KiB for 8 RPCs -Connect-ES 17.81 KiB for 16 RPCs +Connect-ES 16.02 KiB for 1 RPCs +Connect-ES 16.47 KiB for 4 RPCs +Connect-ES 17.09 KiB for 8 RPCs +Connect-ES 17.8 KiB for 16 RPCs diff --git a/packages/connect-web/src/connect-transport.ts b/packages/connect-web/src/connect-transport.ts index 3e27ce6ec..04f733cfd 100644 --- a/packages/connect-web/src/connect-transport.ts +++ b/packages/connect-web/src/connect-transport.ts @@ -266,6 +266,7 @@ export function createConnectTransport( body: ReadableStream, trailerTarget: Headers, header: Headers, + signal: AbortSignal, ) { const reader = createEnvelopeReadableStream(body).getReader(); let endStreamReceived = false; @@ -299,6 +300,9 @@ export function createConnectTransport( yield parse(data); } if (!endStreamReceived) { + if (signal.aborted) { + throw new ConnectError(`${signal.reason}`, Code.Canceled); + } throw "missing EndStreamResponse"; } } @@ -369,7 +373,12 @@ export function createConnectTransport( ...req, header: fRes.headers, trailer, - message: parseResponseBody(fRes.body, trailer, fRes.headers), + message: parseResponseBody( + fRes.body, + trailer, + fRes.headers, + req.signal, + ), }; return res; },