cloudflare
workerd
BlogDocsChangelog

[o11y] Avoid cloning tail event when dispatching it to single tail worker

#5614
Comparing
felix/112925-stw
(
e6b58f7
) with
main
(
6a17c7a
)
CodSpeed Performance Gauge
0%
Untouched
57
Skipped
30

Benchmarks

Skipped (30)

Passed

nullBodyWithStatus[Response]
src/workerd/tests/bench-response.c++
CodSpeed Performance Gauge
+2%
9.7 µs9.6 µs
EncodeInto_ASCII_8192[TextEncoder][1/0/8192]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
3.3 ms3.3 ms
request[GlobalScopeBenchmark]
src/workerd/tests/bench-global-scope.c++
CodSpeed Performance Gauge
0%
52.7 ms52.6 ms
request[RegExpBenchmark]
src/workerd/tests/bench-regex.c++
CodSpeed Performance Gauge
0%
7.3 ms7.3 ms
Encode_ASCII_8192[TextEncoder][0/0/8192]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
13.1 ms13.1 ms
constructor[ApiHeaders]
src/workerd/tests/bench-api-headers.c++
CodSpeed Performance Gauge
0%
97.3 ms97.3 ms
ParseAndSerialize
src/workerd/tests/bench-mimetype.c++::Mimetype
CodSpeed Performance Gauge
0%
74.9 ms74.9 ms
EncodeInto_OneByte_8192[TextEncoder][1/1/8192]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
66.9 ms66.9 ms
EncodeInto_ASCII_256[TextEncoder][1/0/256]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
2.6 ms2.6 ms
EncodeInto_TwoByte_1024[TextEncoder][1/2/1024]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
14.2 ms14.2 ms
Test_JSON_DEC
src/workerd/tests/bench-json.c++
CodSpeed Performance Gauge
0%
3.2 s3.2 s
Encode_ASCII_256[TextEncoder][0/0/256]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
3.2 ms3.2 ms
Test_JSON_ENC
src/workerd/tests/bench-json.c++
CodSpeed Performance Gauge
0%
205.5 ms205.5 ms
bm_coroCoReturn
external/capnp-cpp/src/kj/async-bench.c++
CodSpeed Performance Gauge
0%
4.6 µs4.6 µs
bm_coroCoAwaitImmediate
external/capnp-cpp/src/kj/async-bench.c++
CodSpeed Performance Gauge
0%
6.2 µs6.2 µs
bm_ReadyNow
external/capnp-cpp/src/kj/async-bench.c++
CodSpeed Performance Gauge
0%
2.1 µs2.1 µs
bm_Immediate
external/capnp-cpp/src/kj/async-bench.c++
CodSpeed Performance Gauge
0%
3.6 µs3.6 µs
JsString_Utf8Length_Latin1_Flat_8192
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
31 µs31 µs
JsString_Utf8Length_Latin1_Flat_1024
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
4.6 µs4.6 µs
JsString_Utf8Length_Latin1_NonFlat_256
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
8 µs8 µs
JsString_Utf8Length_Latin1_Flat_32
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
891.1 ns891.1 ns
JsString_Utf8Length_Utf16_Flat_1024
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
8.5 µs8.5 µs
JsString_Utf8Length_Latin1_Flat_256
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
1.7 µs1.7 µs
JsString_Utf8Length_Utf16_Flat_8192
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
62.8 µs62.8 µs
JsString_Utf8Length_Latin1_NonFlat_1024
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
12.3 µs12.3 µs
JsString_Utf8Length_Utf16_Flat_256
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
2.7 µs2.7 µs
JsString_Utf8Length_Utf16_Invalid_Flat_1024
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
8.5 µs8.5 µs
JsString_Utf8Length_Utf16_Invalid_NonFlat_1024
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
16.3 µs16.3 µs
JsString_Utf8Length_Utf16_Invalid_NonFlat_256
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
9 µs9 µs
JsString_Utf8Length_Utf16_Invalid_Flat_256
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
2.7 µs2.7 µs
JsString_Utf8Length_Latin1_NonFlat_8192
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
42.1 µs42.1 µs
JsString_Utf8Length_Utf16_Invalid_Flat_8192
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
62.8 µs62.8 µs
JsString_Utf8Length_Utf16_NonFlat_1024
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
16.2 µs16.2 µs
JsString_Utf8Length_Utf16_Invalid_NonFlat_8192
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
73.9 µs73.9 µs
Parse[KjHeaders]
src/workerd/tests/bench-kj-headers.c++
CodSpeed Performance Gauge
0%
44.5 µs44.5 µs
JsString_Utf8Length_Utf16_NonFlat_256
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
9 µs9 µs
JsString_Utf8Length_Utf16_NonFlat_8192
src/workerd/tests/bench-jsstring.c++
CodSpeed Performance Gauge
0%
73.9 µs73.9 µs
Util_RecursivelyFreeze
src/workerd/tests/bench-util.c++
CodSpeed Performance Gauge
0%
10.8 ms10.8 ms
EncodeInto_OneByte_1024[TextEncoder][1/1/1024]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
10.5 ms10.5 ms
Encode_TwoByte_256[TextEncoder][0/2/256]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
7.1 ms7.1 ms
EncodeInto_TwoByte_256[TextEncoder][1/2/256]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
5.4 ms5.4 ms
Serialize
src/workerd/tests/bench-mimetype.c++::Mimetype
CodSpeed Performance Gauge
0%
74.6 ms74.6 ms
Encode_OneByte_8192[TextEncoder][0/1/8192]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
85.2 ms85.2 ms
Encode_TwoByte_8192[TextEncoder][0/2/8192]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
146.2 ms146.2 ms
Encode_TwoByte_1024[TextEncoder][0/2/1024]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
19.6 ms19.6 ms
EncodeInto_OneByte_256[TextEncoder][1/1/256]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
4.5 ms4.5 ms
EncodeInto_TwoByte_8192[TextEncoder][1/2/8192]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
96.7 ms96.8 ms
Encode_OneByte_256[TextEncoder][0/1/256]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
5.2 ms5.2 ms
EncodeInto_ASCII_1024[TextEncoder][1/0/1024]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
2.6 ms2.6 ms
Encode_ASCII_32[TextEncoder][0/0/32]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
3 ms3 ms
set_append[ApiHeaders]
src/workerd/tests/bench-api-headers.c++
CodSpeed Performance Gauge
0%
16.9 ms16.9 ms
Encode_OneByte_1024[TextEncoder][0/1/1024]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
12.1 ms12.1 ms
Encode_ASCII_1024[TextEncoder][0/0/1024]
src/workerd/tests/bench-text-encoder.c++
CodSpeed Performance Gauge
0%
3.7 ms3.7 ms
arrayBufferBody[Response]
src/workerd/tests/bench-response.c++
CodSpeed Performance Gauge
0%
16.8 µs16.9 µs
jsonResponse[Response]
src/workerd/tests/bench-response.c++
CodSpeed Performance Gauge
0%
35.2 µs35.3 µs
simpleStringBody[Response]
src/workerd/tests/bench-response.c++
CodSpeed Performance Gauge
-1%
21.5 µs21.6 µs
bodyWithHeaders[Response]
src/workerd/tests/bench-response.c++
CodSpeed Performance Gauge
-3%
23.6 µs24.3 µs

Commits

Click on a commit to change the comparison range
Base
main
6a17c7a
-0.04%
[o11y] Avoid cloning tail event when dispatching it to single tail worker This could be expensive for events that are large/require several memory allocations. This required fixing how we construct the jsrpc.method attribute, the approach there was never fully working which was shadowed by the event being cloned. Also drop an unused Attribute constructor.
e6b58f7
5 hours ago
by fhanau
© 2025 CodSpeed Technology
Home Terms Privacy Docs