Repository navigation
Throw a special timeout error exception on HTTPSystemRequest - #2953
Conversation
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
🤖 Augment PR SummaryIntroduces 🤖 Was this summary useful? React with 👍 or 👎 |
| [[maybe_unused]] const auto response{request.send()}; | ||
| FAIL(); | ||
| } catch (const sourcemeta::core::HTTPError &error) { | ||
| } catch (const sourcemeta::core::HTTPTimeoutError &error) { |
There was a problem hiding this comment.
Could we revisit the timeout-only expectation at test/http/ci/http_system_request_test.cc:117? RFC 5737 does not guarantee that 192.0.2.1 silently drops traffic: a route/firewall rejection can return immediately, causing send() to correctly throw a plain HTTPError that this narrowed catch leaves unhandled, so the test fails despite correct backend behavior.
Severity: medium
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
There was a problem hiding this comment.
Valid, and confirmed. RFC 5737 only reserves these blocks for documentation and says they "SHOULD NOT appear on the public Internet", asking operators to "add these address blocks to the list of non-routeable address spaces". It guarantees nothing about forwarding, and that recommended practice actually makes the immediate-rejection path more likely, so a correctly configured network would have broken the narrowed assertion. It passed locally only because route get 192.0.2.1 falls through to the default gateway, which drops silently.
Fixed in two parts:
unreachable_host_throwsgoes back to catching the base error, where it is robust on any network and still covers method and URL propagation. Its comment previously claimed the address "never completes the request", which was only true on a blackholing network, so that is corrected too.- Timeout classification moved to a new
timeout_against_silent_listener_throws, which binds an ephemeral loopback port, listens, and never accepts. The handshake completes in the kernel accept queue, the request is sent, and nothing ever replies, so the only possible outcome is the timeout. No network dependency at all.
One detail worth recording for anyone revisiting this: the listener must leave the connection open rather than accept and close it. Measured against a closing listener, cURL reports CURLE_GOT_NOTHING (52) instead of CURLE_OPERATION_TIMEDOUT (28), which would not exercise the new classification. Never accepting is what keeps the peer socket open.
Verified on the NSURLSession backend, deterministic across repeated runs. The cURL and WinHTTP mappings are covered by the same test on the other matrix jobs, since SOURCEMETA_CORE_TESTS_CI is set for every one of them.
There was a problem hiding this comment.
All reported issues were addressed across 6 files
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
Benchmark
|
| Benchmark | main |
This branch | Change |
|---|---|---|---|
Schema_Format_ISO_Language |
24.04 ms | 27.09 ms | +12.7% |
JSON_From_String_Temporary |
3.99 ns | 4.40 ns | +10.3% |
JSON_Divisible_By_Decimal |
306.09 ns | 337.49 ns | +10.3% |
JSON_Parse_Object_Scalar_Properties |
2.91 us | 3.20 us | +10.0% |
Schema_Frame_Deeply_Nested_References |
4.93 ms | 5.41 ms | +9.8% |
JSON_Object_At_Last_Key_128 |
36.59 ns | 39.92 ns | +9.1% |
JSON_String_Key_Hash_100 |
7.35 ns | 7.99 ns | +8.8% |
Regex_Caret_Group_Period_Plus_Group_Dollar |
1.12 ns | 1.22 ns | +8.7% |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.18 ns | 1.29 ns | +8.6% |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.18 ns | 1.28 ns | +8.6% |
JSON_Fast_Hash_Helm_Chart_Lock |
38.54 ns | 41.82 ns | +8.5% |
JSON_Stringify_Schema_Web_Of_Things |
30.22 us | 32.78 us | +8.5% |
Schema_Frame_ISO_Language_Locations |
20.75 ms | 22.49 ms | +8.4% |
Regex_Period_Plus |
1.13 ns | 1.22 ns | +8.1% |
Regex_Caret_Period_Plus_Dollar |
1.18 ns | 1.28 ns | +8.1% |
Regex_Period_Asterisk |
1.18 ns | 1.28 ns | +8.0% |
JSON_Object_At_Last_Key_512 |
124.25 ns | 133.96 ns | +7.8% |
Regex_Group_Period_Asterisk_Group |
1.12 ns | 1.21 ns | +7.8% |
Regex_Nested_Backtrack |
19.20 ns | 20.68 ns | +7.7% |
JSON_Parse_Object_Array_Properties |
3.50 us | 3.77 us | +7.7% |
JSON_PropertySet_Filter_Object_Properties |
16.81 ns | 18.09 ns | +7.6% |
JSON_From_String_Copy |
4.43 ns | 4.76 ns | +7.4% |
Regex_Lower_S_Or_Upper_S_Asterisk |
1.12 ns | 1.20 ns | +7.4% |
Regex_Caret_Period_Range_Dollar |
1.22 ns | 1.31 ns | +7.4% |
Regex_Period_Md_Dollar |
12.78 ns | 13.72 ns | +7.3% |
JSON_Parse_Object_Short_Keys |
5.72 us | 6.14 us | +7.3% |
JSON_PropertySet_Contains |
21.69 ns | 23.26 ns | +7.2% |
Regex_Caret_Slash_Period_Asterisk |
3.17 ns | 3.39 ns | +7.1% |
JSON_Object_At_Last_Key_32 |
7.34 ns | 7.85 ns | +6.9% |
JSON_Prettify_Schema_Web_Of_Things |
85.47 us | 91.38 us | +6.9% |
JSON_Object_Defines_Miss_Too_Large |
1.62 ns | 1.73 ns | +6.8% |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 |
7.11 ns | 7.58 ns | +6.7% |
Regex_Caret_X_Hyphen |
3.23 ns | 3.44 ns | +6.7% |
JSON_Equality_Helm_Chart_Lock |
82.61 ns | 88.09 ns | +6.6% |
JSON_PropertySet_Insert |
234.98 ns | 250.32 ns | +6.5% |
JSON_Parse_Object_Object_Properties |
3.56 us | 3.80 us | +6.5% |
JSON_Number_To_Double |
14.48 ns | 15.41 ns | +6.5% |
JSON_String_Equal_Small_By_Perfect_Hash_10 |
0.45 ns | 0.47 ns | +6.4% |
JSON_Parse_Nested_Containers |
22.84 us | 24.24 us | +6.1% |
JSON_String_Key_Hash_10 |
1.14 ns | 1.21 ns | +6.1% |
JSON_String_Fast_Hash_100 |
2.14 ns | 2.26 ns | +6.1% |
Regex_Caret_Period_Asterisk_Dollar |
1.13 ns | 1.20 ns | +6.1% |
JSON_Object_At_Last_Key_8 |
2.02 ns | 2.14 ns | +6.1% |
Schema_Frame_ISO_Language_Locations_To_JSON |
19.23 ms | 20.39 ms | +6.0% |
JSON_Parse_Decimal |
4.96 us | 5.26 us | +6.0% |
JSON_Object_Defines_Miss_Same_Length |
1.41 ns | 1.49 ns | +5.9% |
Schema_Frame_Many_Resources_References |
61.95 ms | 65.57 ms | +5.8% |
URITemplateRouterView_Arguments |
292.19 ns | 276.72 ns | -5.3% |
All 111 benchmarks
| Benchmark | main |
This branch | Change |
|---|---|---|---|
Crypto_CRC32_Large_JSONL |
74.53 us | 72.23 us | -3.1% |
Crypto_AES_GCM_Encrypt_128_1KB |
617.23 ns | 589.67 ns | -4.5% |
Crypto_AES_GCM_Decrypt_128_1KB |
627.12 ns | 617.60 ns | -1.5% |
Crypto_AES_GCM_Encrypt_256_1KB |
625.25 ns | 624.19 ns | -0.2% |
JOSE_VerifySignature_RS256 |
13.89 us | 13.93 us | +0.3% |
JOSE_VerifySignature_ES512 |
300.80 us | 302.17 us | +0.5% |
GZIP_Compress_ISO_Language_Set_3_Locations |
17.76 ms | 17.84 ms | +0.4% |
GZIP_Decompress_ISO_Language_Set_3_Locations |
3.34 ms | 3.33 ms | -0.5% |
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations |
4.32 ms | 4.34 ms | +0.4% |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
4.79 ms | 4.83 ms | +0.8% |
GZIP_Compress_ISO_Language_Set_3_Schema |
1.42 ms | 1.38 ms | -2.4% |
GZIP_Decompress_ISO_Language_Set_3_Schema |
287.42 us | 281.04 us | -2.2% |
Markdown_To_HTML_Realistic_Document |
2.48 ms | 2.50 ms | +0.8% |
Markdown_To_HTML_Pathological |
7.25 ms | 7.36 ms | +1.5% |
Markdown_To_HTML_Short_Descriptions |
320.10 ns | 321.77 ns | +0.5% |
HTML_Build_Table_100000 |
18.51 ms | 18.69 ms | +1.0% |
HTML_Render_Table_100000 |
1.53 ms | 1.60 ms | +4.4% |
JSONLD_Catalog_Annotation_List_Populate |
376.45 us | 372.21 us | -1.1% |
JSONLD_Catalog_Materialize |
1.76 ms | 1.75 ms | -0.4% |
JSONL_Parse_Large |
5.66 ms | 5.60 ms | -1.1% |
JSONL_Parse_Large_GZIP |
5.73 ms | 5.76 ms | +0.4% |
URITemplateRouter_Create |
9.69 us | 9.77 us | +0.8% |
URITemplateRouter_Match |
63.36 ns | 63.91 ns | +0.9% |
URITemplateRouterView_Restore |
6.75 us | 6.63 us | -1.8% |
URITemplateRouterView_Match |
63.65 ns | 63.58 ns | -0.1% |
URITemplateRouterView_Arguments |
292.19 ns | 276.72 ns | -5.3% |
URITemplateRouter_Match_BasePath |
73.08 ns | 72.67 ns | -0.6% |
URITemplateRouterView_Match_BasePath |
73.71 ns | 73.68 ns | -0.0% |
JSONPath_Descendant_Filter_Nested |
903.78 ns | 928.92 ns | +2.8% |
OpenAPI_Frame_GSMTasks_3_0 |
80.09 ms | 81.49 ms | +1.7% |
OpenAPI_Format_Synthetic_3_1 |
26.22 ms | 26.88 ms | +2.5% |
Schema_Frame_WoT_References |
1.21 ms | 1.22 ms | +0.3% |
Schema_Frame_OMC_References |
5.19 ms | 5.24 ms | +0.9% |
Schema_Frame_OMC_Pointers |
9.55 ms | 9.65 ms | +1.0% |
Schema_Frame_OMC_Locations |
4.50 ms | 4.52 ms | +0.4% |
Schema_Frame_ISO_Language_Locations |
20.75 ms | 22.49 ms | +8.4% |
Schema_Frame_ISO_Language_Root |
159.88 ns | 161.47 ns | +1.0% |
Schema_Frame_KrakenD_References |
8.28 ms | 8.62 ms | +4.0% |
Schema_Frame_KrakenD_Reachable |
67.18 ms | 68.64 ms | +2.2% |
Schema_Frame_ISO_Language_Locations_To_JSON |
19.23 ms | 20.39 ms | +6.0% |
Schema_Frame_Many_Resources_References |
61.95 ms | 65.57 ms | +5.8% |
Schema_Frame_Deeply_Nested_References |
4.93 ms | 5.41 ms | +9.8% |
Schema_Format_ISO_Language |
24.04 ms | 27.09 ms | +12.7% |
Schema_Bundle_Meta_2020_12 |
299.99 us | 296.10 us | -1.3% |
Schema_Bundle_Many_Remotes_With_Fragments |
3.62 ms | 3.57 ms | -1.5% |
Pointer_Object_Traverse |
12.91 ns | 13.00 ns | +0.7% |
Pointer_Object_Try_Traverse |
12.61 ns | 12.54 ns | -0.6% |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
61.83 ns | 63.33 ns | +2.4% |
Pointer_Walker_Schema_ISO_Language |
747.12 us | 741.20 us | -0.8% |
Pointer_Untracked_Deeply_Nested |
773.49 us | 787.36 us | +1.8% |
Pointer_Tracked_Deeply_Nested |
1.04 ms | 1.01 ms | -2.4% |
Pointer_Position_Tracker_Get_Deeply_Nested |
375.42 ns | 383.72 ns | +2.2% |
Schema_Tracker_ISO_Language |
2.59 ms | 2.61 ms | +0.5% |
Schema_Tracker_ISO_Language_To_JSON |
7.52 ms | 7.73 ms | +2.9% |
JSON_Array_Of_Objects_Unique |
228.37 ns | 221.89 ns | -2.8% |
JSON_Array_Of_Integers_Unique_256 |
2.34 us | 2.34 us | -0.2% |
JSON_Array_Of_Strings_Unique_Colliding_256 |
102.13 us | 97.87 us | -4.2% |
JSON_Parse_1 |
2.69 us | 2.77 us | +3.0% |
JSON_Parse_Real |
2.97 us | 3.05 us | +2.6% |
JSON_Parse_Decimal |
4.96 us | 5.26 us | +6.0% |
JSON_Parse_Schema_ISO_Language |
1.94 ms | 2.03 ms | +4.8% |
JSON_Parse_Integer |
2.33 us | 2.38 us | +2.2% |
JSON_Parse_String_NonSSO_Plain |
1.97 us | 2.03 us | +3.2% |
JSON_Parse_String_SSO_Plain |
1.56 us | 1.58 us | +1.6% |
JSON_Parse_String_Escape_Heavy |
8.62 us | 8.82 us | +2.3% |
JSON_Parse_Object_Short_Keys |
5.72 us | 6.14 us | +7.3% |
JSON_Parse_Object_Scalar_Properties |
2.91 us | 3.20 us | +10.0% |
JSON_Parse_Object_Array_Properties |
3.50 us | 3.77 us | +7.7% |
JSON_Parse_Object_Object_Properties |
3.56 us | 3.80 us | +6.5% |
JSON_Parse_Nested_Containers |
22.84 us | 24.24 us | +6.1% |
JSON_Fast_Hash_Helm_Chart_Lock |
38.54 ns | 41.82 ns | +8.5% |
JSON_Equality_Helm_Chart_Lock |
82.61 ns | 88.09 ns | +6.6% |
JSON_String_Equal_10 |
2.61 ns | 2.64 ns | +1.2% |
JSON_String_Equal_100 |
3.10 ns | 3.25 ns | +4.8% |
JSON_String_Equal_Small_By_Perfect_Hash_10 |
0.45 ns | 0.47 ns | +6.4% |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 |
7.11 ns | 7.58 ns | +6.7% |
JSON_String_Fast_Hash_10 |
2.21 ns | 2.27 ns | +2.8% |
JSON_String_Fast_Hash_100 |
2.14 ns | 2.26 ns | +6.1% |
JSON_String_Key_Hash_10 |
1.14 ns | 1.21 ns | +6.1% |
JSON_String_Key_Hash_100 |
7.35 ns | 7.99 ns | +8.8% |
JSON_Object_Defines_Miss_Same_Length |
1.41 ns | 1.49 ns | +5.9% |
JSON_Object_Defines_Miss_Too_Small |
1.39 ns | 1.45 ns | +4.0% |
JSON_Object_Defines_Miss_Too_Large |
1.62 ns | 1.73 ns | +6.8% |
JSON_From_String_Copy |
4.43 ns | 4.76 ns | +7.4% |
JSON_From_String_Temporary |
3.99 ns | 4.40 ns | +10.3% |
JSON_Number_To_Double |
14.48 ns | 15.41 ns | +6.5% |
JSON_Object_At_Last_Key_8 |
2.02 ns | 2.14 ns | +6.1% |
JSON_Object_At_Last_Key_32 |
7.34 ns | 7.85 ns | +6.9% |
JSON_Object_At_Last_Key_128 |
36.59 ns | 39.92 ns | +9.1% |
JSON_Object_At_Last_Key_512 |
124.25 ns | 133.96 ns | +7.8% |
JSON_Divisible_By_Decimal |
306.09 ns | 337.49 ns | +10.3% |
JSON_PropertySet_Contains |
21.69 ns | 23.26 ns | +7.2% |
JSON_PropertySet_Filter_Object_Properties |
16.81 ns | 18.09 ns | +7.6% |
JSON_PropertySet_Insert |
234.98 ns | 250.32 ns | +6.5% |
JSON_Stringify_Schema_Web_Of_Things |
30.22 us | 32.78 us | +8.5% |
JSON_Prettify_Schema_Web_Of_Things |
85.47 us | 91.38 us | +6.9% |
Regex_Lower_S_Or_Upper_S_Asterisk |
1.12 ns | 1.20 ns | +7.4% |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.18 ns | 1.28 ns | +8.6% |
Regex_Period_Asterisk |
1.18 ns | 1.28 ns | +8.0% |
Regex_Group_Period_Asterisk_Group |
1.12 ns | 1.21 ns | +7.8% |
Regex_Period_Plus |
1.13 ns | 1.22 ns | +8.1% |
Regex_Period |
1.23 ns | 1.27 ns | +3.3% |
Regex_Caret_Period_Plus_Dollar |
1.18 ns | 1.28 ns | +8.1% |
Regex_Caret_Group_Period_Plus_Group_Dollar |
1.12 ns | 1.22 ns | +8.7% |
Regex_Caret_Period_Asterisk_Dollar |
1.13 ns | 1.20 ns | +6.1% |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.18 ns | 1.29 ns | +8.6% |
Regex_Caret_X_Hyphen |
3.23 ns | 3.44 ns | +6.7% |
Regex_Period_Md_Dollar |
12.78 ns | 13.72 ns | +7.3% |
Regex_Caret_Slash_Period_Asterisk |
3.17 ns | 3.39 ns | +7.1% |
Regex_Caret_Period_Range_Dollar |
1.22 ns | 1.31 ns | +7.4% |
Regex_Nested_Backtrack |
19.20 ns | 20.68 ns | +7.7% |
Benchmark
|
| Benchmark | main |
This branch | Change |
|---|---|---|---|
JSON_String_Equal_10 |
2.26 ns | 2.89 ns | +28.0% |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
62.59 ns | 73.40 ns | +17.3% |
JSON_String_Key_Hash_100 |
3.60 ns | 3.98 ns | +10.5% |
Schema_Frame_ISO_Language_Locations |
20.41 ms | 19.36 ms | -5.1% |
JSON_Parse_String_NonSSO_Plain |
1.70 us | 1.62 us | -5.1% |
JSONPath_Descendant_Filter_Nested |
871.27 ns | 806.89 ns | -7.4% |
JSON_String_Equal_100 |
2.93 ns | 2.68 ns | -8.4% |
All 111 benchmarks
| Benchmark | main |
This branch | Change |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
1.35 ns | 1.34 ns | -0.3% |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.13 ns | 1.12 ns | -1.2% |
Regex_Period_Asterisk |
1.13 ns | 1.12 ns | -1.1% |
Regex_Group_Period_Asterisk_Group |
1.35 ns | 1.34 ns | -0.9% |
Regex_Period_Plus |
1.42 ns | 1.39 ns | -1.7% |
Regex_Period |
1.20 ns | 1.18 ns | -1.6% |
Regex_Caret_Period_Plus_Dollar |
1.19 ns | 1.17 ns | -1.3% |
Regex_Caret_Group_Period_Plus_Group_Dollar |
1.37 ns | 1.34 ns | -2.2% |
Regex_Caret_Period_Asterisk_Dollar |
1.36 ns | 1.34 ns | -1.2% |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.13 ns | 1.11 ns | -1.4% |
Regex_Caret_X_Hyphen |
2.26 ns | 2.24 ns | -1.0% |
Regex_Period_Md_Dollar |
13.26 ns | 13.24 ns | -0.1% |
Regex_Caret_Slash_Period_Asterisk |
2.48 ns | 2.46 ns | -0.8% |
Regex_Caret_Period_Range_Dollar |
1.35 ns | 1.34 ns | -1.3% |
Regex_Nested_Backtrack |
19.24 ns | 19.22 ns | -0.1% |
JSON_Array_Of_Objects_Unique |
202.59 ns | 205.40 ns | +1.4% |
JSON_Array_Of_Integers_Unique_256 |
1.96 us | 1.94 us | -1.1% |
JSON_Array_Of_Strings_Unique_Colliding_256 |
82.15 us | 82.60 us | +0.5% |
JSON_Parse_1 |
2.21 us | 2.22 us | +0.2% |
JSON_Parse_Real |
2.15 us | 2.12 us | -1.6% |
JSON_Parse_Decimal |
3.67 us | 3.74 us | +1.8% |
JSON_Parse_Schema_ISO_Language |
1.66 ms | 1.65 ms | -0.7% |
JSON_Parse_Integer |
1.94 us | 1.94 us | +0.0% |
JSON_Parse_String_NonSSO_Plain |
1.70 us | 1.62 us | -5.1% |
JSON_Parse_String_SSO_Plain |
1.39 us | 1.37 us | -1.9% |
JSON_Parse_String_Escape_Heavy |
6.34 us | 6.24 us | -1.5% |
JSON_Parse_Object_Short_Keys |
3.59 us | 3.54 us | -1.4% |
JSON_Parse_Object_Scalar_Properties |
1.84 us | 1.86 us | +0.6% |
JSON_Parse_Object_Array_Properties |
2.67 us | 2.65 us | -0.7% |
JSON_Parse_Object_Object_Properties |
2.63 us | 2.66 us | +1.1% |
JSON_Parse_Nested_Containers |
17.11 us | 17.06 us | -0.3% |
JSON_Fast_Hash_Helm_Chart_Lock |
31.58 ns | 32.37 ns | +2.5% |
JSON_Equality_Helm_Chart_Lock |
74.77 ns | 73.59 ns | -1.6% |
JSON_String_Equal_10 |
2.26 ns | 2.89 ns | +28.0% |
JSON_String_Equal_100 |
2.93 ns | 2.68 ns | -8.4% |
JSON_String_Equal_Small_By_Perfect_Hash_10 |
0.46 ns | 0.46 ns | -0.1% |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 |
6.81 ns | 6.81 ns | +0.1% |
JSON_String_Fast_Hash_10 |
1.19 ns | 1.17 ns | -1.1% |
JSON_String_Fast_Hash_100 |
1.19 ns | 1.18 ns | -1.4% |
JSON_String_Key_Hash_10 |
1.35 ns | 1.33 ns | -1.5% |
JSON_String_Key_Hash_100 |
3.60 ns | 3.98 ns | +10.5% |
JSON_Object_Defines_Miss_Same_Length |
1.12 ns | 1.12 ns | +0.2% |
JSON_Object_Defines_Miss_Too_Small |
1.34 ns | 1.34 ns | +0.0% |
JSON_Object_Defines_Miss_Too_Large |
1.74 ns | 1.71 ns | -2.1% |
JSON_From_String_Copy |
5.45 ns | 5.47 ns | +0.4% |
JSON_From_String_Temporary |
4.88 ns | 4.90 ns | +0.3% |
JSON_Number_To_Double |
8.01 ns | 7.97 ns | -0.5% |
JSON_Object_At_Last_Key_8 |
2.09 ns | 2.09 ns | +0.3% |
JSON_Object_At_Last_Key_32 |
7.42 ns | 7.43 ns | +0.2% |
JSON_Object_At_Last_Key_128 |
36.93 ns | 36.93 ns | -0.0% |
JSON_Object_At_Last_Key_512 |
145.90 ns | 145.16 ns | -0.5% |
JSON_Divisible_By_Decimal |
248.83 ns | 239.81 ns | -3.6% |
JSON_PropertySet_Contains |
23.81 ns | 23.74 ns | -0.3% |
JSON_PropertySet_Filter_Object_Properties |
19.51 ns | 19.35 ns | -0.8% |
JSON_PropertySet_Insert |
266.02 ns | 258.12 ns | -3.0% |
JSON_Stringify_Schema_Web_Of_Things |
30.32 us | 30.22 us | -0.3% |
JSON_Prettify_Schema_Web_Of_Things |
85.65 us | 85.79 us | +0.2% |
Pointer_Object_Traverse |
13.86 ns | 13.92 ns | +0.4% |
Pointer_Object_Try_Traverse |
16.08 ns | 16.06 ns | -0.1% |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
62.59 ns | 73.40 ns | +17.3% |
Pointer_Walker_Schema_ISO_Language |
731.67 us | 733.77 us | +0.3% |
Pointer_Untracked_Deeply_Nested |
710.91 us | 675.64 us | -5.0% |
Pointer_Tracked_Deeply_Nested |
876.20 us | 883.42 us | +0.8% |
Pointer_Position_Tracker_Get_Deeply_Nested |
395.80 ns | 381.54 ns | -3.6% |
Schema_Tracker_ISO_Language |
2.11 ms | 2.10 ms | -0.5% |
Schema_Tracker_ISO_Language_To_JSON |
8.24 ms | 8.09 ms | -1.8% |
Schema_Frame_WoT_References |
1.08 ms | 1.08 ms | -0.1% |
Schema_Frame_OMC_References |
4.85 ms | 4.88 ms | +0.5% |
Schema_Frame_OMC_Pointers |
8.98 ms | 8.99 ms | +0.1% |
Schema_Frame_OMC_Locations |
4.21 ms | 4.16 ms | -1.2% |
Schema_Frame_ISO_Language_Locations |
20.41 ms | 19.36 ms | -5.1% |
Schema_Frame_ISO_Language_Root |
146.89 ns | 145.76 ns | -0.8% |
Schema_Frame_KrakenD_References |
7.72 ms | 7.75 ms | +0.3% |
Schema_Frame_KrakenD_Reachable |
73.88 ms | 73.75 ms | -0.2% |
Schema_Frame_ISO_Language_Locations_To_JSON |
17.95 ms | 17.81 ms | -0.8% |
Schema_Frame_Many_Resources_References |
56.14 ms | 55.50 ms | -1.1% |
Schema_Frame_Deeply_Nested_References |
5.36 ms | 5.31 ms | -1.0% |
Schema_Format_ISO_Language |
23.16 ms | 22.53 ms | -2.7% |
Schema_Bundle_Meta_2020_12 |
264.01 us | 265.04 us | +0.4% |
Schema_Bundle_Many_Remotes_With_Fragments |
3.27 ms | 3.28 ms | +0.2% |
OpenAPI_Frame_GSMTasks_3_0 |
84.56 ms | 84.20 ms | -0.4% |
OpenAPI_Format_Synthetic_3_1 |
25.02 ms | 25.13 ms | +0.4% |
JSONPath_Descendant_Filter_Nested |
871.27 ns | 806.89 ns | -7.4% |
URITemplateRouter_Create |
10.86 us | 10.98 us | +1.1% |
URITemplateRouter_Match |
76.08 ns | 72.54 ns | -4.7% |
URITemplateRouterView_Restore |
6.70 us | 6.50 us | -2.9% |
URITemplateRouterView_Match |
64.97 ns | 64.92 ns | -0.1% |
URITemplateRouterView_Arguments |
289.79 ns | 281.47 ns | -2.9% |
URITemplateRouter_Match_BasePath |
85.77 ns | 85.63 ns | -0.2% |
URITemplateRouterView_Match_BasePath |
73.51 ns | 73.63 ns | +0.2% |
JSONL_Parse_Large |
4.58 ms | 4.51 ms | -1.4% |
JSONL_Parse_Large_GZIP |
4.74 ms | 4.64 ms | -2.1% |
JSONLD_Catalog_Annotation_List_Populate |
313.51 us | 311.11 us | -0.8% |
JSONLD_Catalog_Materialize |
1.75 ms | 1.72 ms | -1.5% |
HTML_Build_Table_100000 |
17.42 ms | 17.44 ms | +0.1% |
HTML_Render_Table_100000 |
1.49 ms | 1.47 ms | -1.4% |
Markdown_To_HTML_Realistic_Document |
2.02 ms | 2.04 ms | +1.2% |
Markdown_To_HTML_Pathological |
7.04 ms | 7.16 ms | +1.8% |
Markdown_To_HTML_Short_Descriptions |
258.86 ns | 258.55 ns | -0.1% |
GZIP_Compress_ISO_Language_Set_3_Locations |
21.52 ms | 21.55 ms | +0.1% |
GZIP_Decompress_ISO_Language_Set_3_Locations |
3.32 ms | 3.32 ms | +0.0% |
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations |
4.34 ms | 4.34 ms | +0.0% |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
4.75 ms | 4.75 ms | +0.0% |
GZIP_Compress_ISO_Language_Set_3_Schema |
1.45 ms | 1.43 ms | -0.9% |
GZIP_Decompress_ISO_Language_Set_3_Schema |
275.90 us | 276.15 us | +0.1% |
JOSE_VerifySignature_RS256 |
30.45 us | 30.38 us | -0.2% |
JOSE_VerifySignature_ES512 |
1.06 ms | 1.07 ms | +0.5% |
Crypto_CRC32_Large_JSONL |
71.70 us | 71.74 us | +0.1% |
Crypto_AES_GCM_Encrypt_128_1KB |
19.80 us | 19.76 us | -0.2% |
Crypto_AES_GCM_Decrypt_128_1KB |
19.75 us | 19.77 us | +0.1% |
Crypto_AES_GCM_Encrypt_256_1KB |
24.47 us | 24.48 us | +0.0% |
Benchmark
|
| Benchmark | main |
This branch | Change |
|---|---|---|---|
Schema_Frame_Deeply_Nested_References |
21.77 ms | 24.39 ms | +12.0% |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
15.75 ms | 14.80 ms | -6.0% |
JSON_Array_Of_Objects_Unique |
570.89 ns | 535.41 ns | -6.2% |
All 111 benchmarks
| Benchmark | main |
This branch | Change |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
4.70 ns | 4.73 ns | +0.7% |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
4.74 ns | 4.70 ns | -0.9% |
Regex_Period_Asterisk |
4.72 ns | 4.70 ns | -0.4% |
Regex_Group_Period_Asterisk_Group |
4.94 ns | 4.70 ns | -4.8% |
Regex_Period_Plus |
4.66 ns | 4.64 ns | -0.4% |
Regex_Period |
4.46 ns | 4.45 ns | -0.1% |
Regex_Caret_Period_Plus_Dollar |
4.63 ns | 4.65 ns | +0.3% |
Regex_Caret_Group_Period_Plus_Group_Dollar |
4.45 ns | 4.44 ns | -0.4% |
Regex_Caret_Period_Asterisk_Dollar |
4.71 ns | 4.70 ns | -0.1% |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
4.77 ns | 4.79 ns | +0.4% |
Regex_Caret_X_Hyphen |
7.84 ns | 7.83 ns | -0.1% |
Regex_Period_Md_Dollar |
46.73 ns | 47.23 ns | +1.1% |
Regex_Caret_Slash_Period_Asterisk |
7.62 ns | 7.55 ns | -0.9% |
Regex_Caret_Period_Range_Dollar |
5.34 ns | 5.33 ns | -0.1% |
Regex_Nested_Backtrack |
58.35 ns | 57.83 ns | -0.9% |
JSON_Array_Of_Objects_Unique |
570.89 ns | 535.41 ns | -6.2% |
JSON_Array_Of_Integers_Unique_256 |
4.45 us | 4.44 us | -0.3% |
JSON_Array_Of_Strings_Unique_Colliding_256 |
300.31 us | 300.43 us | +0.0% |
JSON_Parse_1 |
8.47 us | 8.63 us | +1.9% |
JSON_Parse_Real |
9.04 us | 8.90 us | -1.5% |
JSON_Parse_Decimal |
12.19 us | 12.12 us | -0.6% |
JSON_Parse_Schema_ISO_Language |
7.54 ms | 7.56 ms | +0.3% |
JSON_Parse_Integer |
6.41 us | 6.43 us | +0.4% |
JSON_Parse_String_NonSSO_Plain |
7.79 us | 7.78 us | -0.1% |
JSON_Parse_String_SSO_Plain |
3.76 us | 3.79 us | +0.7% |
JSON_Parse_String_Escape_Heavy |
21.90 us | 21.83 us | -0.3% |
JSON_Parse_Object_Short_Keys |
13.41 us | 13.86 us | +3.3% |
JSON_Parse_Object_Scalar_Properties |
6.86 us | 7.12 us | +3.9% |
JSON_Parse_Object_Array_Properties |
11.32 us | 11.23 us | -0.8% |
JSON_Parse_Object_Object_Properties |
11.47 us | 11.43 us | -0.3% |
JSON_Parse_Nested_Containers |
79.15 us | 79.62 us | +0.6% |
JSON_Fast_Hash_Helm_Chart_Lock |
113.85 ns | 108.70 ns | -4.5% |
JSON_Equality_Helm_Chart_Lock |
216.04 ns | 222.24 ns | +2.9% |
JSON_String_Equal_10 |
10.53 ns | 10.71 ns | +1.7% |
JSON_String_Equal_100 |
11.75 ns | 11.74 ns | -0.1% |
JSON_String_Equal_Small_By_Perfect_Hash_10 |
2.19 ns | 2.20 ns | +0.2% |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 |
15.00 ns | 15.04 ns | +0.3% |
JSON_String_Fast_Hash_10 |
6.57 ns | 6.36 ns | -3.1% |
JSON_String_Fast_Hash_100 |
6.38 ns | 6.35 ns | -0.5% |
JSON_String_Key_Hash_10 |
5.04 ns | 5.05 ns | +0.2% |
JSON_String_Key_Hash_100 |
11.95 ns | 11.87 ns | -0.7% |
JSON_Object_Defines_Miss_Same_Length |
3.46 ns | 3.46 ns | +0.2% |
JSON_Object_Defines_Miss_Too_Small |
4.09 ns | 4.10 ns | +0.4% |
JSON_Object_Defines_Miss_Too_Large |
4.09 ns | 4.10 ns | +0.2% |
JSON_From_String_Copy |
63.82 ns | 64.47 ns | +1.0% |
JSON_From_String_Temporary |
58.99 ns | 58.09 ns | -1.5% |
JSON_Number_To_Double |
41.18 ns | 41.48 ns | +0.7% |
JSON_Object_At_Last_Key_8 |
7.26 ns | 7.27 ns | +0.1% |
JSON_Object_At_Last_Key_32 |
22.70 ns | 22.96 ns | +1.2% |
JSON_Object_At_Last_Key_128 |
90.68 ns | 89.82 ns | -1.0% |
JSON_Object_At_Last_Key_512 |
422.32 ns | 425.54 ns | +0.8% |
JSON_Divisible_By_Decimal |
584.36 ns | 589.73 ns | +0.9% |
JSON_PropertySet_Contains |
79.28 ns | 79.52 ns | +0.3% |
JSON_PropertySet_Filter_Object_Properties |
49.30 ns | 48.64 ns | -1.3% |
JSON_PropertySet_Insert |
1.31 us | 1.30 us | -0.7% |
JSON_Stringify_Schema_Web_Of_Things |
231.26 us | 230.41 us | -0.4% |
JSON_Prettify_Schema_Web_Of_Things |
720.91 us | 722.11 us | +0.2% |
Pointer_Object_Traverse |
69.73 ns | 69.34 ns | -0.6% |
Pointer_Object_Try_Traverse |
73.47 ns | 73.36 ns | -0.1% |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
162.93 ns | 161.77 ns | -0.7% |
Pointer_Walker_Schema_ISO_Language |
11.26 ms | 11.22 ms | -0.4% |
Pointer_Untracked_Deeply_Nested |
2.46 ms | 2.44 ms | -0.6% |
Pointer_Tracked_Deeply_Nested |
3.79 ms | 3.76 ms | -0.9% |
Pointer_Position_Tracker_Get_Deeply_Nested |
577.02 ns | 555.60 ns | -3.7% |
Schema_Tracker_ISO_Language |
10.52 ms | 10.65 ms | +1.2% |
Schema_Tracker_ISO_Language_To_JSON |
63.70 ms | 63.32 ms | -0.6% |
Schema_Frame_WoT_References |
4.92 ms | 4.97 ms | +1.0% |
Schema_Frame_OMC_References |
22.93 ms | 22.45 ms | -2.1% |
Schema_Frame_OMC_Pointers |
41.87 ms | 41.70 ms | -0.4% |
Schema_Frame_OMC_Locations |
19.35 ms | 18.79 ms | -2.9% |
Schema_Frame_ISO_Language_Locations |
82.16 ms | 84.46 ms | +2.8% |
Schema_Frame_ISO_Language_Root |
2.30 us | 2.27 us | -1.3% |
Schema_Frame_KrakenD_References |
38.85 ms | 39.12 ms | +0.7% |
Schema_Frame_KrakenD_Reachable |
310.39 ms | 302.13 ms | -2.7% |
Schema_Frame_ISO_Language_Locations_To_JSON |
165.23 ms | 160.72 ms | -2.7% |
Schema_Frame_Many_Resources_References |
364.53 ms | 362.21 ms | -0.6% |
Schema_Frame_Deeply_Nested_References |
21.77 ms | 24.39 ms | +12.0% |
Schema_Format_ISO_Language |
88.87 ms | 87.58 ms | -1.4% |
Schema_Bundle_Meta_2020_12 |
1.45 ms | 1.45 ms | -0.1% |
Schema_Bundle_Many_Remotes_With_Fragments |
28.64 ms | 28.97 ms | +1.1% |
OpenAPI_Frame_GSMTasks_3_0 |
384.78 ms | 381.31 ms | -0.9% |
OpenAPI_Format_Synthetic_3_1 |
128.45 ms | 131.98 ms | +2.8% |
JSONPath_Descendant_Filter_Nested |
2.44 us | 2.43 us | -0.8% |
URITemplateRouter_Create |
39.36 us | 39.64 us | +0.7% |
URITemplateRouter_Match |
232.15 ns | 232.25 ns | +0.0% |
URITemplateRouterView_Restore |
32.36 us | 32.83 us | +1.4% |
URITemplateRouterView_Match |
213.28 ns | 213.59 ns | +0.1% |
URITemplateRouterView_Arguments |
538.66 ns | 537.16 ns | -0.3% |
URITemplateRouter_Match_BasePath |
263.50 ns | 263.48 ns | -0.0% |
URITemplateRouterView_Match_BasePath |
242.85 ns | 242.56 ns | -0.1% |
JSONL_Parse_Large |
31.96 ms | 31.95 ms | -0.0% |
JSONL_Parse_Large_GZIP |
30.73 ms | 30.90 ms | +0.5% |
JSONLD_Catalog_Annotation_List_Populate |
2.95 ms | 2.95 ms | +0.0% |
JSONLD_Catalog_Materialize |
7.90 ms | 8.10 ms | +2.4% |
HTML_Build_Table_100000 |
66.71 ms | 66.71 ms | -0.0% |
HTML_Render_Table_100000 |
7.78 ms | 7.69 ms | -1.1% |
Markdown_To_HTML_Realistic_Document |
5.66 ms | 5.77 ms | +2.0% |
Markdown_To_HTML_Pathological |
17.55 ms | 17.46 ms | -0.5% |
Markdown_To_HTML_Short_Descriptions |
705.37 ns | 717.44 ns | +1.7% |
GZIP_Compress_ISO_Language_Set_3_Locations |
37.59 ms | 37.32 ms | -0.7% |
GZIP_Decompress_ISO_Language_Set_3_Locations |
9.69 ms | 9.68 ms | -0.1% |
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations |
12.00 ms | 12.02 ms | +0.2% |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
15.75 ms | 14.80 ms | -6.0% |
GZIP_Compress_ISO_Language_Set_3_Schema |
2.29 ms | 2.30 ms | +0.2% |
GZIP_Decompress_ISO_Language_Set_3_Schema |
623.45 us | 653.81 us | +4.9% |
JOSE_VerifySignature_RS256 |
21.38 us | 21.35 us | -0.1% |
JOSE_VerifySignature_ES512 |
1.37 ms | 1.37 ms | -0.1% |
Crypto_CRC32_Large_JSONL |
102.87 us | 103.14 us | +0.3% |
Crypto_AES_GCM_Encrypt_128_1KB |
2.33 us | 2.32 us | -0.6% |
Crypto_AES_GCM_Decrypt_128_1KB |
2.38 us | 2.38 us | +0.1% |
Crypto_AES_GCM_Encrypt_256_1KB |
2.39 us | 2.39 us | -0.2% |
Benchmark
|
| Benchmark | main |
This branch | Change |
|---|---|---|---|
JSONPath_Descendant_Filter_Nested |
1.24 us | 1.42 us | +14.8% |
URITemplateRouter_Match |
173.69 ns | 199.11 ns | +14.6% |
Schema_Frame_Deeply_Nested_References |
14.96 ms | 16.35 ms | +9.3% |
OpenAPI_Frame_GSMTasks_3_0 |
166.01 ms | 178.40 ms | +7.5% |
JSON_Prettify_Schema_Web_Of_Things |
180.19 us | 169.60 us | -5.9% |
Schema_Frame_OMC_Pointers |
19.73 ms | 18.56 ms | -6.0% |
Schema_Frame_ISO_Language_Locations |
23.56 ms | 21.87 ms | -7.1% |
URITemplateRouter_Match_BasePath |
235.92 ns | 218.76 ns | -7.3% |
HTML_Build_Table_100000 |
35.47 ms | 32.77 ms | -7.6% |
Schema_Frame_OMC_Locations |
8.22 ms | 7.48 ms | -9.1% |
Crypto_AES_GCM_Encrypt_128_1KB |
4.20 us | 3.80 us | -9.5% |
JSON_Object_Defines_Miss_Too_Small |
5.89 ns | 5.32 ns | -9.7% |
Regex_Lower_S_Or_Upper_S_Asterisk |
1.89 ns | 1.69 ns | -10.5% |
Schema_Tracker_ISO_Language_To_JSON |
12.48 ms | 11.14 ms | -10.7% |
JSON_PropertySet_Insert |
371.14 ns | 328.71 ns | -11.4% |
JSON_String_Equal_Small_By_Perfect_Hash_10 |
0.41 ns | 0.36 ns | -11.9% |
URITemplateRouterView_Match_BasePath |
177.73 ns | 156.29 ns | -12.1% |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
7.09 ms | 6.23 ms | -12.1% |
JSON_Stringify_Schema_Web_Of_Things |
77.26 us | 67.68 us | -12.4% |
OpenAPI_Format_Synthetic_3_1 |
49.09 ms | 42.68 ms | -13.0% |
GZIP_Compress_ISO_Language_Set_3_Schema |
2.28 ms | 1.98 ms | -13.4% |
Schema_Bundle_Meta_2020_12 |
521.21 us | 450.06 us | -13.7% |
Schema_Frame_ISO_Language_Root |
139.44 ns | 120.32 ns | -13.7% |
Markdown_To_HTML_Short_Descriptions |
500.21 ns | 430.98 ns | -13.8% |
JSON_Array_Of_Strings_Unique_Colliding_256 |
159.85 us | 137.72 us | -13.8% |
Pointer_Object_Traverse |
25.17 ns | 21.67 ns | -13.9% |
JSON_Divisible_By_Decimal |
414.13 ns | 355.64 ns | -14.1% |
Schema_Frame_ISO_Language_Locations_To_JSON |
26.67 ms | 22.89 ms | -14.2% |
JSON_Object_At_Last_Key_512 |
223.48 ns | 190.82 ns | -14.6% |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.46 ns | 2.10 ns | -14.7% |
Pointer_Object_Try_Traverse |
43.83 ns | 37.21 ns | -15.1% |
Schema_Frame_WoT_References |
1.99 ms | 1.69 ms | -15.1% |
GZIP_Decompress_ISO_Language_Set_3_Schema |
378.40 us | 320.62 us | -15.3% |
JSON_Object_At_Last_Key_128 |
68.37 ns | 57.76 ns | -15.5% |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.99 ns | 1.68 ns | -15.6% |
JOSE_VerifySignature_ES512 |
1.28 ms | 1.08 ms | -15.8% |
JSON_Parse_Nested_Containers |
28.19 us | 23.71 us | -15.9% |
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations |
5.52 ms | 4.64 ms | -15.9% |
JSON_Number_To_Double |
11.56 ns | 9.68 ns | -16.3% |
JSON_String_Fast_Hash_10 |
2.88 ns | 2.40 ns | -16.6% |
Schema_Tracker_ISO_Language |
3.33 ms | 2.77 ms | -16.8% |
JSON_PropertySet_Filter_Object_Properties |
46.98 ns | 38.98 ns | -17.0% |
JSONLD_Catalog_Annotation_List_Populate |
676.13 us | 559.83 us | -17.2% |
Schema_Frame_OMC_References |
10.14 ms | 8.39 ms | -17.3% |
Regex_Caret_X_Hyphen |
7.31 ns | 6.02 ns | -17.7% |
Pointer_Walker_Schema_ISO_Language |
1.59 ms | 1.31 ms | -17.9% |
JSON_Object_Defines_Miss_Too_Large |
3.56 ns | 2.91 ns | -18.3% |
JSON_Object_At_Last_Key_32 |
15.86 ns | 12.72 ns | -19.8% |
JSON_From_String_Copy |
13.57 ns | 10.85 ns | -20.0% |
HTML_Render_Table_100000 |
2.20 ms | 1.75 ms | -20.1% |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
175.24 ns | 139.95 ns | -20.1% |
Crypto_CRC32_Large_JSONL |
28.31 us | 22.57 us | -20.3% |
JSONL_Parse_Large |
8.62 ms | 6.86 ms | -20.4% |
JSON_Fast_Hash_Helm_Chart_Lock |
68.36 ns | 54.28 ns | -20.6% |
Schema_Frame_KrakenD_References |
16.97 ms | 13.43 ms | -20.9% |
JSON_Parse_String_Escape_Heavy |
19.18 us | 15.09 us | -21.3% |
JSON_Object_Defines_Miss_Same_Length |
3.38 ns | 2.66 ns | -21.4% |
Regex_Caret_Period_Asterisk_Dollar |
2.14 ns | 1.68 ns | -21.8% |
Pointer_Tracked_Deeply_Nested |
1.36 ms | 1.06 ms | -22.0% |
Regex_Caret_Slash_Period_Asterisk |
5.74 ns | 4.47 ns | -22.1% |
Schema_Frame_Many_Resources_References |
127.99 ms | 99.65 ms | -22.1% |
JSON_String_Key_Hash_10 |
2.21 ns | 1.71 ns | -22.7% |
JSON_From_String_Temporary |
8.07 ns | 6.22 ns | -23.0% |
JSON_String_Equal_10 |
8.15 ns | 6.27 ns | -23.1% |
JSON_Object_At_Last_Key_8 |
5.23 ns | 4.02 ns | -23.1% |
Crypto_AES_GCM_Encrypt_256_1KB |
5.01 us | 3.84 us | -23.2% |
JSON_Parse_Integer |
3.11 us | 2.38 us | -23.3% |
JSON_Parse_Object_Array_Properties |
3.97 us | 3.05 us | -23.3% |
Regex_Period_Asterisk |
2.26 ns | 1.73 ns | -23.4% |
JSON_Parse_Object_Object_Properties |
4.11 us | 3.14 us | -23.6% |
JSON_Parse_String_NonSSO_Plain |
3.64 us | 2.78 us | -23.6% |
Pointer_Untracked_Deeply_Nested |
1.02 ms | 779.47 us | -23.9% |
Schema_Frame_KrakenD_Reachable |
219.00 ms | 165.89 ms | -24.3% |
GZIP_Compress_ISO_Language_Set_3_Locations |
40.11 ms | 30.33 ms | -24.4% |
JSON_PropertySet_Contains |
59.39 ns | 44.55 ns | -25.0% |
JSON_String_Equal_100 |
8.00 ns | 5.98 ns | -25.2% |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4.50 ms | 3.36 ms | -25.3% |
JSONL_Parse_Large_GZIP |
8.65 ms | 6.39 ms | -26.0% |
JSON_Parse_Schema_ISO_Language |
2.69 ms | 1.99 ms | -26.1% |
JSON_String_Fast_Hash_100 |
2.63 ns | 1.94 ns | -26.2% |
JSON_Parse_String_SSO_Plain |
2.12 us | 1.56 us | -26.6% |
JSON_Parse_1 |
3.78 us | 2.73 us | -27.6% |
Regex_Period_Md_Dollar |
24.68 ns | 17.86 ns | -27.6% |
JSON_Equality_Helm_Chart_Lock |
206.56 ns | 148.98 ns | -27.9% |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 |
4.54 ns | 3.24 ns | -28.5% |
JSON_Parse_Object_Scalar_Properties |
3.53 us | 2.51 us | -28.9% |
JSONLD_Catalog_Materialize |
3.57 ms | 2.54 ms | -28.9% |
JSON_Array_Of_Integers_Unique_256 |
6.27 us | 4.37 us | -30.3% |
Regex_Caret_Period_Plus_Dollar |
2.89 ns | 2.00 ns | -30.8% |
JSON_Parse_Object_Short_Keys |
7.00 us | 4.84 us | -31.0% |
JSON_Parse_Real |
4.02 us | 2.76 us | -31.4% |
JSON_Array_Of_Objects_Unique |
493.59 ns | 335.11 ns | -32.1% |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.52 ns | 1.71 ns | -32.2% |
JSON_Parse_Decimal |
7.12 us | 4.79 us | -32.8% |
Regex_Group_Period_Asterisk_Group |
2.53 ns | 1.68 ns | -33.3% |
Regex_Caret_Period_Range_Dollar |
2.93 ns | 1.96 ns | -33.3% |
JSON_String_Key_Hash_100 |
3.16 ns | 2.07 ns | -34.3% |
Regex_Period |
3.08 ns | 2.00 ns | -35.0% |
Regex_Nested_Backtrack |
40.08 ns | 25.72 ns | -35.8% |
Regex_Period_Plus |
3.46 ns | 2.00 ns | -42.1% |
All 111 benchmarks
| Benchmark | main |
This branch | Change |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
1.89 ns | 1.69 ns | -10.5% |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.52 ns | 1.71 ns | -32.2% |
Regex_Period_Asterisk |
2.26 ns | 1.73 ns | -23.4% |
Regex_Group_Period_Asterisk_Group |
2.53 ns | 1.68 ns | -33.3% |
Regex_Period_Plus |
3.46 ns | 2.00 ns | -42.1% |
Regex_Period |
3.08 ns | 2.00 ns | -35.0% |
Regex_Caret_Period_Plus_Dollar |
2.89 ns | 2.00 ns | -30.8% |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.46 ns | 2.10 ns | -14.7% |
Regex_Caret_Period_Asterisk_Dollar |
2.14 ns | 1.68 ns | -21.8% |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.99 ns | 1.68 ns | -15.6% |
Regex_Caret_X_Hyphen |
7.31 ns | 6.02 ns | -17.7% |
Regex_Period_Md_Dollar |
24.68 ns | 17.86 ns | -27.6% |
Regex_Caret_Slash_Period_Asterisk |
5.74 ns | 4.47 ns | -22.1% |
Regex_Caret_Period_Range_Dollar |
2.93 ns | 1.96 ns | -33.3% |
Regex_Nested_Backtrack |
40.08 ns | 25.72 ns | -35.8% |
JSON_Array_Of_Objects_Unique |
493.59 ns | 335.11 ns | -32.1% |
JSON_Array_Of_Integers_Unique_256 |
6.27 us | 4.37 us | -30.3% |
JSON_Array_Of_Strings_Unique_Colliding_256 |
159.85 us | 137.72 us | -13.8% |
JSON_Parse_1 |
3.78 us | 2.73 us | -27.6% |
JSON_Parse_Real |
4.02 us | 2.76 us | -31.4% |
JSON_Parse_Decimal |
7.12 us | 4.79 us | -32.8% |
JSON_Parse_Schema_ISO_Language |
2.69 ms | 1.99 ms | -26.1% |
JSON_Parse_Integer |
3.11 us | 2.38 us | -23.3% |
JSON_Parse_String_NonSSO_Plain |
3.64 us | 2.78 us | -23.6% |
JSON_Parse_String_SSO_Plain |
2.12 us | 1.56 us | -26.6% |
JSON_Parse_String_Escape_Heavy |
19.18 us | 15.09 us | -21.3% |
JSON_Parse_Object_Short_Keys |
7.00 us | 4.84 us | -31.0% |
JSON_Parse_Object_Scalar_Properties |
3.53 us | 2.51 us | -28.9% |
JSON_Parse_Object_Array_Properties |
3.97 us | 3.05 us | -23.3% |
JSON_Parse_Object_Object_Properties |
4.11 us | 3.14 us | -23.6% |
JSON_Parse_Nested_Containers |
28.19 us | 23.71 us | -15.9% |
JSON_Fast_Hash_Helm_Chart_Lock |
68.36 ns | 54.28 ns | -20.6% |
JSON_Equality_Helm_Chart_Lock |
206.56 ns | 148.98 ns | -27.9% |
JSON_String_Equal_10 |
8.15 ns | 6.27 ns | -23.1% |
JSON_String_Equal_100 |
8.00 ns | 5.98 ns | -25.2% |
JSON_String_Equal_Small_By_Perfect_Hash_10 |
0.41 ns | 0.36 ns | -11.9% |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash_10 |
4.54 ns | 3.24 ns | -28.5% |
JSON_String_Fast_Hash_10 |
2.88 ns | 2.40 ns | -16.6% |
JSON_String_Fast_Hash_100 |
2.63 ns | 1.94 ns | -26.2% |
JSON_String_Key_Hash_10 |
2.21 ns | 1.71 ns | -22.7% |
JSON_String_Key_Hash_100 |
3.16 ns | 2.07 ns | -34.3% |
JSON_Object_Defines_Miss_Same_Length |
3.38 ns | 2.66 ns | -21.4% |
JSON_Object_Defines_Miss_Too_Small |
5.89 ns | 5.32 ns | -9.7% |
JSON_Object_Defines_Miss_Too_Large |
3.56 ns | 2.91 ns | -18.3% |
JSON_From_String_Copy |
13.57 ns | 10.85 ns | -20.0% |
JSON_From_String_Temporary |
8.07 ns | 6.22 ns | -23.0% |
JSON_Number_To_Double |
11.56 ns | 9.68 ns | -16.3% |
JSON_Object_At_Last_Key_8 |
5.23 ns | 4.02 ns | -23.1% |
JSON_Object_At_Last_Key_32 |
15.86 ns | 12.72 ns | -19.8% |
JSON_Object_At_Last_Key_128 |
68.37 ns | 57.76 ns | -15.5% |
JSON_Object_At_Last_Key_512 |
223.48 ns | 190.82 ns | -14.6% |
JSON_Divisible_By_Decimal |
414.13 ns | 355.64 ns | -14.1% |
JSON_PropertySet_Contains |
59.39 ns | 44.55 ns | -25.0% |
JSON_PropertySet_Filter_Object_Properties |
46.98 ns | 38.98 ns | -17.0% |
JSON_PropertySet_Insert |
371.14 ns | 328.71 ns | -11.4% |
JSON_Stringify_Schema_Web_Of_Things |
77.26 us | 67.68 us | -12.4% |
JSON_Prettify_Schema_Web_Of_Things |
180.19 us | 169.60 us | -5.9% |
Pointer_Object_Traverse |
25.17 ns | 21.67 ns | -13.9% |
Pointer_Object_Try_Traverse |
43.83 ns | 37.21 ns | -15.1% |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
175.24 ns | 139.95 ns | -20.1% |
Pointer_Walker_Schema_ISO_Language |
1.59 ms | 1.31 ms | -17.9% |
Pointer_Untracked_Deeply_Nested |
1.02 ms | 779.47 us | -23.9% |
Pointer_Tracked_Deeply_Nested |
1.36 ms | 1.06 ms | -22.0% |
Pointer_Position_Tracker_Get_Deeply_Nested |
405.09 ns | 397.61 ns | -1.8% |
Schema_Tracker_ISO_Language |
3.33 ms | 2.77 ms | -16.8% |
Schema_Tracker_ISO_Language_To_JSON |
12.48 ms | 11.14 ms | -10.7% |
Schema_Frame_WoT_References |
1.99 ms | 1.69 ms | -15.1% |
Schema_Frame_OMC_References |
10.14 ms | 8.39 ms | -17.3% |
Schema_Frame_OMC_Pointers |
19.73 ms | 18.56 ms | -6.0% |
Schema_Frame_OMC_Locations |
8.22 ms | 7.48 ms | -9.1% |
Schema_Frame_ISO_Language_Locations |
23.56 ms | 21.87 ms | -7.1% |
Schema_Frame_ISO_Language_Root |
139.44 ns | 120.32 ns | -13.7% |
Schema_Frame_KrakenD_References |
16.97 ms | 13.43 ms | -20.9% |
Schema_Frame_KrakenD_Reachable |
219.00 ms | 165.89 ms | -24.3% |
Schema_Frame_ISO_Language_Locations_To_JSON |
26.67 ms | 22.89 ms | -14.2% |
Schema_Frame_Many_Resources_References |
127.99 ms | 99.65 ms | -22.1% |
Schema_Frame_Deeply_Nested_References |
14.96 ms | 16.35 ms | +9.3% |
Schema_Format_ISO_Language |
27.57 ms | 27.96 ms | +1.4% |
Schema_Bundle_Meta_2020_12 |
521.21 us | 450.06 us | -13.7% |
Schema_Bundle_Many_Remotes_With_Fragments |
5.89 ms | 5.62 ms | -4.6% |
OpenAPI_Frame_GSMTasks_3_0 |
166.01 ms | 178.40 ms | +7.5% |
OpenAPI_Format_Synthetic_3_1 |
49.09 ms | 42.68 ms | -13.0% |
JSONPath_Descendant_Filter_Nested |
1.24 us | 1.42 us | +14.8% |
URITemplateRouter_Create |
19.66 us | 20.27 us | +3.1% |
URITemplateRouter_Match |
173.69 ns | 199.11 ns | +14.6% |
URITemplateRouterView_Restore |
10.55 us | 10.66 us | +1.1% |
URITemplateRouterView_Match |
129.07 ns | 129.21 ns | +0.1% |
URITemplateRouterView_Arguments |
560.76 ns | 580.57 ns | +3.5% |
URITemplateRouter_Match_BasePath |
235.92 ns | 218.76 ns | -7.3% |
URITemplateRouterView_Match_BasePath |
177.73 ns | 156.29 ns | -12.1% |
JSONL_Parse_Large |
8.62 ms | 6.86 ms | -20.4% |
JSONL_Parse_Large_GZIP |
8.65 ms | 6.39 ms | -26.0% |
JSONLD_Catalog_Annotation_List_Populate |
676.13 us | 559.83 us | -17.2% |
JSONLD_Catalog_Materialize |
3.57 ms | 2.54 ms | -28.9% |
HTML_Build_Table_100000 |
35.47 ms | 32.77 ms | -7.6% |
HTML_Render_Table_100000 |
2.20 ms | 1.75 ms | -20.1% |
Markdown_To_HTML_Realistic_Document |
3.65 ms | 3.50 ms | -4.2% |
Markdown_To_HTML_Pathological |
11.94 ms | 12.07 ms | +1.2% |
Markdown_To_HTML_Short_Descriptions |
500.21 ns | 430.98 ns | -13.8% |
GZIP_Compress_ISO_Language_Set_3_Locations |
40.11 ms | 30.33 ms | -24.4% |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4.50 ms | 3.36 ms | -25.3% |
GZIP_Decompress_Default_Level_ISO_Language_Set_3_Locations |
5.52 ms | 4.64 ms | -15.9% |
GZIP_Decompress_Stream_Default_Level_ISO_Language_Set_3_Locations |
7.09 ms | 6.23 ms | -12.1% |
GZIP_Compress_ISO_Language_Set_3_Schema |
2.28 ms | 1.98 ms | -13.4% |
GZIP_Decompress_ISO_Language_Set_3_Schema |
378.40 us | 320.62 us | -15.3% |
JOSE_VerifySignature_RS256 |
28.01 us | 28.22 us | +0.7% |
JOSE_VerifySignature_ES512 |
1.28 ms | 1.08 ms | -15.8% |
Crypto_CRC32_Large_JSONL |
28.31 us | 22.57 us | -20.3% |
Crypto_AES_GCM_Encrypt_128_1KB |
4.20 us | 3.80 us | -9.5% |
Crypto_AES_GCM_Decrypt_128_1KB |
4.52 us | 4.31 us | -4.7% |
Crypto_AES_GCM_Encrypt_256_1KB |
5.01 us | 3.84 us | -23.2% |
There was a problem hiding this comment.
1 issue found across 3 files (changes from recent commits).
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="test/http/ci/http_system_request_test.cc">
<violation number="1" location="test/http/ci/http_system_request_test.cc:96">
P2: `WSACleanup()` runs even when `WSAStartup()` failed, so this helper can release another component’s Winsock initialization. Track successful startup and call cleanup only when this instance initialized Winsock.</violation>
</file>
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
Signed-off-by: Juan Cruz Viotti jv@jviotti.com