Add some more YAML tests on duplicate keys - #2724
Merged
Merged
Conversation
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
🤖 Augment PR SummarySummary: This PR expands YAML duplicate-key test coverage. Changes:
Technical Notes: The tests confirm duplicate detection is reported consistently through the parser’s typed error API. 🤖 Was this summary useful? React with 👍 or 👎 |
There was a problem hiding this comment.
Benchmark (macos/llvm)
Details
| Benchmark suite | Current: a51885e | Previous: cb24956 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
1.7184537459418465 ns/iter |
1.953460907947491 ns/iter |
0.88 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.7184753234751948 ns/iter |
1.8982995952279642 ns/iter |
0.91 |
Regex_Period_Asterisk |
1.7145692329120719 ns/iter |
2.015485533967294 ns/iter |
0.85 |
Regex_Group_Period_Asterisk_Group |
1.7880172734191155 ns/iter |
1.8764806042460156 ns/iter |
0.95 |
Regex_Period_Plus |
2.069601012655317 ns/iter |
2.3490493452696395 ns/iter |
0.88 |
Regex_Period |
2.0616889465178 ns/iter |
2.272952404163912 ns/iter |
0.91 |
Regex_Caret_Period_Plus_Dollar |
2.067376579520056 ns/iter |
2.3629009340659337 ns/iter |
0.87 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.2026793882074465 ns/iter |
2.3287423374472267 ns/iter |
0.95 |
Regex_Caret_Period_Asterisk_Dollar |
1.7285142153936293 ns/iter |
2.7239982352184215 ns/iter |
0.63 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.8019122243190921 ns/iter |
1.884758066323516 ns/iter |
0.96 |
Regex_Caret_X_Hyphen |
6.661755597869156 ns/iter |
6.842366046940383 ns/iter |
0.97 |
Regex_Period_Md_Dollar |
20.004161512131013 ns/iter |
19.040939107159478 ns/iter |
1.05 |
Regex_Caret_Slash_Period_Asterisk |
4.6499015279285105 ns/iter |
5.098485052775069 ns/iter |
0.91 |
Regex_Caret_Period_Range_Dollar |
2.1508626737117895 ns/iter |
2.267813906003916 ns/iter |
0.95 |
Regex_Nested_Backtrack |
38.51075421956564 ns/iter |
31.160498616614184 ns/iter |
1.24 |
JSON_Array_Of_Objects_Unique |
406.1737439369768 ns/iter |
384.31563052635425 ns/iter |
1.06 |
JSON_Parse_1 |
4523.056038927272 ns/iter |
4276.381192238805 ns/iter |
1.06 |
JSON_Parse_Real |
6707.097913580228 ns/iter |
5956.881748771585 ns/iter |
1.13 |
JSON_Parse_Decimal |
6343.473428644626 ns/iter |
6932.870307684509 ns/iter |
0.91 |
JSON_Parse_Schema_ISO_Language |
2799274.7527676704 ns/iter |
2627822.1515155775 ns/iter |
1.07 |
JSON_Parse_Integer |
4105.716360508656 ns/iter |
5519.746250000708 ns/iter |
0.74 |
JSON_Parse_String_NonSSO_Plain |
4442.184454458461 ns/iter |
5248.621614786021 ns/iter |
0.85 |
JSON_Parse_String_SSO_Plain |
2452.770527374166 ns/iter |
2739.507592381401 ns/iter |
0.90 |
JSON_Parse_String_Escape_Heavy |
20692.85136246579 ns/iter |
25965.697674416522 ns/iter |
0.80 |
JSON_Parse_Object_Short_Keys |
8269.107980335819 ns/iter |
7552.53547848028 ns/iter |
1.09 |
JSON_Parse_Object_Scalar_Properties |
4518.499210430427 ns/iter |
4118.085276639775 ns/iter |
1.10 |
JSON_Parse_Object_Array_Properties |
8691.938161281543 ns/iter |
5660.462909999069 ns/iter |
1.54 |
JSON_Parse_Object_Object_Properties |
4946.215786408854 ns/iter |
4804.883157742591 ns/iter |
1.03 |
JSON_Parse_Nested_Containers |
38159.437652182234 ns/iter |
40050.1693415458 ns/iter |
0.95 |
JSON_From_String_Copy |
29.874576819316268 ns/iter |
33.64811139833862 ns/iter |
0.89 |
JSON_From_String_Temporary |
21.611594078026105 ns/iter |
35.4393160789377 ns/iter |
0.61 |
JSON_Number_To_Double |
37.157458608300026 ns/iter |
62.29380176703075 ns/iter |
0.60 |
JSON_Object_At_Last_Key/8 |
4.769348534431961 ns/iter |
7.5702762900951335 ns/iter |
0.63 |
JSON_Object_At_Last_Key/32 |
12.408243158082545 ns/iter |
18.90886262734107 ns/iter |
0.66 |
JSON_Object_At_Last_Key/128 |
55.553684418549174 ns/iter |
78.3072304418838 ns/iter |
0.71 |
JSON_Object_At_Last_Key/512 |
189.99197387176557 ns/iter |
288.186451232028 ns/iter |
0.66 |
JSON_Fast_Hash_Helm_Chart_Lock |
59.23997545816952 ns/iter |
78.77826262908151 ns/iter |
0.75 |
JSON_Equality_Helm_Chart_Lock |
142.88859536486228 ns/iter |
202.26829342228558 ns/iter |
0.71 |
JSON_Divisible_By_Decimal |
177.99887873223824 ns/iter |
238.133443245889 ns/iter |
0.75 |
JSON_String_Equal/10 |
6.875442790469693 ns/iter |
10.100442862501188 ns/iter |
0.68 |
JSON_String_Equal/100 |
6.55924426479852 ns/iter |
9.005205798799159 ns/iter |
0.73 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.34380215013019677 ns/iter |
0.5131231319215317 ns/iter |
0.67 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
3.292393705124803 ns/iter |
4.373586902405156 ns/iter |
0.75 |
JSON_String_Fast_Hash/10 |
2.4437637175629 ns/iter |
3.339524273830282 ns/iter |
0.73 |
JSON_String_Fast_Hash/100 |
2.137114362577623 ns/iter |
2.8068779242475443 ns/iter |
0.76 |
JSON_String_Key_Hash/10 |
1.717083209415487 ns/iter |
2.4986293118799647 ns/iter |
0.69 |
JSON_String_Key_Hash/100 |
2.210388310957087 ns/iter |
2.575090520411136 ns/iter |
0.86 |
JSON_Object_Defines_Miss_Same_Length |
2.741450541156896 ns/iter |
3.3278688368294063 ns/iter |
0.82 |
JSON_Object_Defines_Miss_Too_Small |
2.841472371244034 ns/iter |
3.300131240352096 ns/iter |
0.86 |
JSON_Object_Defines_Miss_Too_Large |
2.7582986733886385 ns/iter |
3.296408591455936 ns/iter |
0.84 |
Pointer_Object_Traverse |
20.13416467837532 ns/iter |
27.916717003751383 ns/iter |
0.72 |
Pointer_Object_Try_Traverse |
25.352683445447067 ns/iter |
37.53650186891481 ns/iter |
0.68 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
179.65679628139574 ns/iter |
238.16677671266186 ns/iter |
0.75 |
Pointer_Walker_Schema_ISO_Language |
2631761.3945310293 ns/iter |
4841678.821428614 ns/iter |
0.54 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
859698.8916255652 ns/iter |
1286063.2969347353 ns/iter |
0.67 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1063777.69359754 ns/iter |
1857900.184274962 ns/iter |
0.57 |
Pointer_Position_Tracker_Get_Deeply_Nested |
344.7152137116487 ns/iter |
537.9771318994386 ns/iter |
0.64 |
JSONPath_Descendant_Filter_Nested |
1286.9230138523164 ns/iter |
2047.4304207560751 ns/iter |
0.63 |
URITemplateRouter_Create |
23786.464120952838 ns/iter |
40017.404273377375 ns/iter |
0.59 |
URITemplateRouter_Match |
172.40820372534498 ns/iter |
250.36398778167646 ns/iter |
0.69 |
URITemplateRouter_Match_BasePath |
207.83437693387805 ns/iter |
272.1319806389049 ns/iter |
0.76 |
URITemplateRouterView_Restore |
10463.892212675179 ns/iter |
15344.196492774294 ns/iter |
0.68 |
URITemplateRouterView_Match |
136.79075101596092 ns/iter |
145.49653646919393 ns/iter |
0.94 |
URITemplateRouterView_Match_BasePath |
155.37991418737437 ns/iter |
165.20827319287213 ns/iter |
0.94 |
URITemplateRouterView_Arguments |
559.8266563226249 ns/iter |
662.593396133378 ns/iter |
0.84 |
JSONL_Parse_Large |
8691359.177214796 ns/iter |
9398523.87999963 ns/iter |
0.92 |
JSONL_Parse_Large_GZIP |
9620905.507042255 ns/iter |
10539090.287877709 ns/iter |
0.91 |
JSONLD_Catalog_Annotation_List_Populate |
943839.8173206802 ns/iter |
1054457.7731342432 ns/iter |
0.90 |
JSONLD_Catalog_Materialize |
3070044.921810316 ns/iter |
3207779.0199004244 ns/iter |
0.96 |
HTML_Build_Table_100000 |
37107353.10526041 ns/iter |
46618888.00000469 ns/iter |
0.80 |
HTML_Render_Table_100000 |
1610332.8799127114 ns/iter |
1999890.5346821728 ns/iter |
0.81 |
GZIP_Compress_ISO_Language_Set_3_Locations |
27106221.153845724 ns/iter |
33250595.85000076 ns/iter |
0.82 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
3278552.9019608307 ns/iter |
3594735.945783389 ns/iter |
0.91 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1558350.3325944522 ns/iter |
1804509.803069019 ns/iter |
0.86 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
279712.82458231924 ns/iter |
312689.1629108286 ns/iter |
0.89 |
JOSE_VerifySignature_RS256 |
22295.811542878593 ns/iter |
25083.80140713972 ns/iter |
0.89 |
JOSE_VerifySignature_ES512 |
997852.646638045 ns/iter |
1268499.703374949 ns/iter |
0.79 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Benchmark (linux/gcc)
Details
| Benchmark suite | Current: a51885e | Previous: cb24956 | Ratio |
|---|---|---|---|
JOSE_VerifySignature_RS256 |
22193.0616186312 ns/iter |
24857.560511356267 ns/iter |
0.89 |
JOSE_VerifySignature_ES512 |
576601.9605587139 ns/iter |
642599.5618698604 ns/iter |
0.90 |
GZIP_Compress_ISO_Language_Set_3_Locations |
36625175.105260305 ns/iter |
39430797.944444545 ns/iter |
0.93 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4301486.1910830345 ns/iter |
4061359.8901734413 ns/iter |
1.06 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2025709.3005779164 ns/iter |
2286518.5537457867 ns/iter |
0.89 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
376496.5206656142 ns/iter |
275969.0704225401 ns/iter |
1.36 |
HTML_Build_Table_100000 |
60123603.41666559 ns/iter |
65150209.09091618 ns/iter |
0.92 |
HTML_Render_Table_100000 |
1978140.3275860795 ns/iter |
1954141.534625955 ns/iter |
1.01 |
JSONLD_Catalog_Annotation_List_Populate |
1386988.0277225813 ns/iter |
1514691.318279606 ns/iter |
0.92 |
JSONLD_Catalog_Materialize |
4345669.534590995 ns/iter |
4354035.087499852 ns/iter |
1.00 |
JSONL_Parse_Large |
10425344.716419313 ns/iter |
10107539.072462885 ns/iter |
1.03 |
JSONL_Parse_Large_GZIP |
11719094.35000013 ns/iter |
11552203.327868648 ns/iter |
1.01 |
URITemplateRouter_Create |
30582.05992033988 ns/iter |
30027.10342582032 ns/iter |
1.02 |
URITemplateRouter_Match |
157.5638437463779 ns/iter |
150.89488750414887 ns/iter |
1.04 |
URITemplateRouter_Match_BasePath |
182.8976317575104 ns/iter |
179.21827753015037 ns/iter |
1.02 |
URITemplateRouterView_Restore |
8558.662166506823 ns/iter |
9900.07300805306 ns/iter |
0.86 |
URITemplateRouterView_Match |
125.04444010537185 ns/iter |
124.5450559536707 ns/iter |
1.00 |
URITemplateRouterView_Match_BasePath |
142.52490886973155 ns/iter |
142.7561293750324 ns/iter |
1.00 |
URITemplateRouterView_Arguments |
480.0902813659895 ns/iter |
472.59905611307283 ns/iter |
1.02 |
JSONPath_Descendant_Filter_Nested |
1717.2147711578136 ns/iter |
1789.3713126949426 ns/iter |
0.96 |
Pointer_Object_Traverse |
23.3023244393318 ns/iter |
30.596708964044467 ns/iter |
0.76 |
Pointer_Object_Try_Traverse |
26.52420317081508 ns/iter |
28.581514772398815 ns/iter |
0.93 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
148.24079958210268 ns/iter |
153.24965017152726 ns/iter |
0.97 |
Pointer_Walker_Schema_ISO_Language |
2610341.895130782 ns/iter |
2592572.4681644924 ns/iter |
1.01 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1208327.6469500111 ns/iter |
1236408.793650818 ns/iter |
0.98 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1816207.5336787275 ns/iter |
1638399.6346602791 ns/iter |
1.11 |
Pointer_Position_Tracker_Get_Deeply_Nested |
532.4566424057663 ns/iter |
474.0472159333306 ns/iter |
1.12 |
JSON_Array_Of_Objects_Unique |
465.8535757053708 ns/iter |
488.7699072754481 ns/iter |
0.95 |
JSON_Parse_1 |
5567.84719966751 ns/iter |
5268.059165516389 ns/iter |
1.06 |
JSON_Parse_Real |
5775.151757392189 ns/iter |
5472.206705397221 ns/iter |
1.06 |
JSON_Parse_Decimal |
10404.598469394656 ns/iter |
8567.120691761136 ns/iter |
1.21 |
JSON_Parse_Schema_ISO_Language |
3788109.940217055 ns/iter |
3789642.119564934 ns/iter |
1.00 |
JSON_Parse_Integer |
3877.6092331554023 ns/iter |
3854.7320844616206 ns/iter |
1.01 |
JSON_Parse_String_NonSSO_Plain |
5342.5885718608315 ns/iter |
5457.158713846018 ns/iter |
0.98 |
JSON_Parse_String_SSO_Plain |
3108.2848408583686 ns/iter |
2904.9368890469977 ns/iter |
1.07 |
JSON_Parse_String_Escape_Heavy |
19788.86167309033 ns/iter |
18578.524748244672 ns/iter |
1.07 |
JSON_Parse_Object_Short_Keys |
8733.896036517312 ns/iter |
8824.503813137253 ns/iter |
0.99 |
JSON_Parse_Object_Scalar_Properties |
4471.792283284351 ns/iter |
4493.908445232653 ns/iter |
1.00 |
JSON_Parse_Object_Array_Properties |
6741.8893558902455 ns/iter |
7508.973203579545 ns/iter |
0.90 |
JSON_Parse_Object_Object_Properties |
6961.195862220211 ns/iter |
7566.380066488413 ns/iter |
0.92 |
JSON_Parse_Nested_Containers |
49087.820205000906 ns/iter |
52030.94820390519 ns/iter |
0.94 |
JSON_From_String_Copy |
17.77421507817154 ns/iter |
19.4734225704994 ns/iter |
0.91 |
JSON_From_String_Temporary |
15.386330439143313 ns/iter |
16.002803275204393 ns/iter |
0.96 |
JSON_Number_To_Double |
20.900584427493023 ns/iter |
19.69845031476274 ns/iter |
1.06 |
JSON_Object_At_Last_Key/8 |
3.7728834270796816 ns/iter |
4.187871447305204 ns/iter |
0.90 |
JSON_Object_At_Last_Key/32 |
12.062213836187894 ns/iter |
13.489896212181645 ns/iter |
0.89 |
JSON_Object_At_Last_Key/128 |
48.715807465738145 ns/iter |
47.271626307303166 ns/iter |
1.03 |
JSON_Object_At_Last_Key/512 |
358.03935363888326 ns/iter |
279.6702790146535 ns/iter |
1.28 |
JSON_Fast_Hash_Helm_Chart_Lock |
87.6075553924702 ns/iter |
94.32321580307669 ns/iter |
0.93 |
JSON_Equality_Helm_Chart_Lock |
146.47724322826505 ns/iter |
156.5963048979278 ns/iter |
0.94 |
JSON_Divisible_By_Decimal |
267.1107632239985 ns/iter |
263.06089241040354 ns/iter |
1.02 |
JSON_String_Equal/10 |
5.421754706794327 ns/iter |
5.40870274614007 ns/iter |
1.00 |
JSON_String_Equal/100 |
6.042180633602281 ns/iter |
6.111477776759039 ns/iter |
0.99 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.6241078166918943 ns/iter |
0.712789537844048 ns/iter |
0.88 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
25.20014557086057 ns/iter |
21.947852377486374 ns/iter |
1.15 |
JSON_String_Fast_Hash/10 |
2.611148385010503 ns/iter |
2.9477083450653727 ns/iter |
0.89 |
JSON_String_Fast_Hash/100 |
2.6085565088425695 ns/iter |
2.94611924523133 ns/iter |
0.89 |
JSON_String_Key_Hash/10 |
1.2483601387426684 ns/iter |
1.0859728005102869 ns/iter |
1.15 |
JSON_String_Key_Hash/100 |
12.453414337086064 ns/iter |
14.754404003311036 ns/iter |
0.84 |
JSON_Object_Defines_Miss_Same_Length |
3.1163756531071614 ns/iter |
3.516072360449873 ns/iter |
0.89 |
JSON_Object_Defines_Miss_Too_Small |
3.116020175183307 ns/iter |
3.1735228739243837 ns/iter |
0.98 |
JSON_Object_Defines_Miss_Too_Large |
3.1177778508614575 ns/iter |
3.164376778394946 ns/iter |
0.99 |
Regex_Lower_S_Or_Upper_S_Asterisk |
0.6235471812601959 ns/iter |
0.7035120746313454 ns/iter |
0.89 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
0.9343618800115282 ns/iter |
1.0560251408018961 ns/iter |
0.88 |
Regex_Period_Asterisk |
0.6234077723720102 ns/iter |
0.7029654569339719 ns/iter |
0.89 |
Regex_Group_Period_Asterisk_Group |
0.9352327809941501 ns/iter |
1.0547313582263587 ns/iter |
0.89 |
Regex_Period_Plus |
0.6234556724891792 ns/iter |
0.7052056167461974 ns/iter |
0.88 |
Regex_Period |
0.9356300543861935 ns/iter |
1.05889113289693 ns/iter |
0.88 |
Regex_Caret_Period_Plus_Dollar |
0.6230046815465003 ns/iter |
0.7037171305297268 ns/iter |
0.89 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
0.9348331217905163 ns/iter |
1.054921405773476 ns/iter |
0.89 |
Regex_Caret_Period_Asterisk_Dollar |
0.6257315079086336 ns/iter |
0.7040402754391788 ns/iter |
0.89 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
0.9356922176434892 ns/iter |
1.0553556628624083 ns/iter |
0.89 |
Regex_Caret_X_Hyphen |
3.7595398669894853 ns/iter |
3.167258779769801 ns/iter |
1.19 |
Regex_Period_Md_Dollar |
31.06006412804596 ns/iter |
33.897504318635974 ns/iter |
0.92 |
Regex_Caret_Slash_Period_Asterisk |
4.0483422420200394 ns/iter |
3.8674036720381286 ns/iter |
1.05 |
Regex_Caret_Period_Range_Dollar |
1.5580814584469318 ns/iter |
1.760491332372342 ns/iter |
0.89 |
Regex_Nested_Backtrack |
40.41586507286155 ns/iter |
42.324463971711744 ns/iter |
0.95 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Benchmark (linux/llvm)
Details
| Benchmark suite | Current: a51885e | Previous: cb24956 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.463231890552372 ns/iter |
1.9229787624852157 ns/iter |
1.28 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.4637943843522954 ns/iter |
1.908166883245319 ns/iter |
1.29 |
Regex_Period_Asterisk |
2.5009685266998773 ns/iter |
1.908037634910262 ns/iter |
1.31 |
Regex_Group_Period_Asterisk_Group |
2.4680199369968903 ns/iter |
1.909615390526105 ns/iter |
1.29 |
Regex_Period_Plus |
4.238907927285013 ns/iter |
3.2707579881380466 ns/iter |
1.30 |
Regex_Period |
3.867161181397639 ns/iter |
2.9987602748095274 ns/iter |
1.29 |
Regex_Caret_Period_Plus_Dollar |
3.8680703853665945 ns/iter |
2.9994114431697554 ns/iter |
1.29 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
4.220542562414875 ns/iter |
2.998739413164539 ns/iter |
1.41 |
Regex_Caret_Period_Asterisk_Dollar |
2.8143936500863367 ns/iter |
2.1929691746818176 ns/iter |
1.28 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.463502930309757 ns/iter |
1.9087681389613753 ns/iter |
1.29 |
Regex_Caret_X_Hyphen |
6.681048190798492 ns/iter |
5.439048498796253 ns/iter |
1.23 |
Regex_Period_Md_Dollar |
26.358903291493295 ns/iter |
22.84662127040948 ns/iter |
1.15 |
Regex_Caret_Slash_Period_Asterisk |
7.738943451740868 ns/iter |
5.453301562875122 ns/iter |
1.42 |
Regex_Caret_Period_Range_Dollar |
3.867274456142894 ns/iter |
2.9997974276917065 ns/iter |
1.29 |
Regex_Nested_Backtrack |
38.57473327192325 ns/iter |
37.72457787778179 ns/iter |
1.02 |
JSON_Array_Of_Objects_Unique |
430.53044810065023 ns/iter |
331.095396151708 ns/iter |
1.30 |
JSON_Parse_1 |
4655.921942889906 ns/iter |
3710.480302974045 ns/iter |
1.25 |
JSON_Parse_Real |
5043.873390481053 ns/iter |
3929.204141135711 ns/iter |
1.28 |
JSON_Parse_Decimal |
7552.309932946702 ns/iter |
5802.40595173998 ns/iter |
1.30 |
JSON_Parse_Schema_ISO_Language |
3590496.798968855 ns/iter |
2895466.9493672177 ns/iter |
1.24 |
JSON_Parse_Integer |
3964.6273994775574 ns/iter |
3099.9289044545512 ns/iter |
1.28 |
JSON_Parse_String_NonSSO_Plain |
5338.750163137787 ns/iter |
4045.3844824699404 ns/iter |
1.32 |
JSON_Parse_String_SSO_Plain |
2700.440982980386 ns/iter |
2303.3375212237006 ns/iter |
1.17 |
JSON_Parse_String_Escape_Heavy |
15541.242337036443 ns/iter |
11329.76572731234 ns/iter |
1.37 |
JSON_Parse_Object_Short_Keys |
7870.412320894273 ns/iter |
6428.58212204571 ns/iter |
1.22 |
JSON_Parse_Object_Scalar_Properties |
4038.0837753441024 ns/iter |
3283.40835115542 ns/iter |
1.23 |
JSON_Parse_Object_Array_Properties |
5538.350369692219 ns/iter |
4674.144915270966 ns/iter |
1.18 |
JSON_Parse_Object_Object_Properties |
5488.500953333876 ns/iter |
4523.740376093954 ns/iter |
1.21 |
JSON_Parse_Nested_Containers |
45499.11441201898 ns/iter |
36607.509280074984 ns/iter |
1.24 |
JSON_From_String_Copy |
21.813796188798406 ns/iter |
16.716872274322796 ns/iter |
1.30 |
JSON_From_String_Temporary |
19.363306941926847 ns/iter |
14.73336096208782 ns/iter |
1.31 |
JSON_Number_To_Double |
22.857602588986413 ns/iter |
17.742887563448576 ns/iter |
1.29 |
JSON_Object_At_Last_Key/8 |
4.194662885426367 ns/iter |
3.113980748554855 ns/iter |
1.35 |
JSON_Object_At_Last_Key/32 |
13.083870131755448 ns/iter |
10.247221852316233 ns/iter |
1.28 |
JSON_Object_At_Last_Key/128 |
47.03249369764988 ns/iter |
43.39615199398505 ns/iter |
1.08 |
JSON_Object_At_Last_Key/512 |
369.2130751160185 ns/iter |
286.68063939130207 ns/iter |
1.29 |
JSON_Fast_Hash_Helm_Chart_Lock |
73.55349769109345 ns/iter |
57.056240927145026 ns/iter |
1.29 |
JSON_Equality_Helm_Chart_Lock |
160.84178979065481 ns/iter |
121.10774844636381 ns/iter |
1.33 |
JSON_Divisible_By_Decimal |
251.0940182011063 ns/iter |
194.2461431676241 ns/iter |
1.29 |
JSON_String_Equal/10 |
5.28125137808661 ns/iter |
4.091462830946296 ns/iter |
1.29 |
JSON_String_Equal/100 |
5.981268253382111 ns/iter |
4.910698097595332 ns/iter |
1.22 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
1.0551676126976435 ns/iter |
0.8180297092756665 ns/iter |
1.29 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
12.336664808431431 ns/iter |
9.620047491423856 ns/iter |
1.28 |
JSON_String_Fast_Hash/10 |
2.464595607392179 ns/iter |
1.9102662804917157 ns/iter |
1.29 |
JSON_String_Fast_Hash/100 |
2.4634984135386904 ns/iter |
1.9104620387997457 ns/iter |
1.29 |
JSON_String_Key_Hash/10 |
2.4651909577198277 ns/iter |
1.9132274709562813 ns/iter |
1.29 |
JSON_String_Key_Hash/100 |
7.733442993735156 ns/iter |
5.997937177662708 ns/iter |
1.29 |
JSON_Object_Defines_Miss_Same_Length |
4.221784207568533 ns/iter |
3.275076949188827 ns/iter |
1.29 |
JSON_Object_Defines_Miss_Too_Small |
3.2013363739890828 ns/iter |
2.4891296688880034 ns/iter |
1.29 |
JSON_Object_Defines_Miss_Too_Large |
2.9311156168852786 ns/iter |
2.270491783006451 ns/iter |
1.29 |
Pointer_Object_Traverse |
31.67316595732166 ns/iter |
23.4002860948302 ns/iter |
1.35 |
Pointer_Object_Try_Traverse |
34.34068304125547 ns/iter |
25.569122088774 ns/iter |
1.34 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
169.8635896476581 ns/iter |
148.6593290190671 ns/iter |
1.14 |
Pointer_Walker_Schema_ISO_Language |
2686334.409266687 ns/iter |
2180758.557228892 ns/iter |
1.23 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1262522.3291139384 ns/iter |
1000758.6560231689 ns/iter |
1.26 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1603795.9159092451 ns/iter |
1257347.4991023322 ns/iter |
1.28 |
Pointer_Position_Tracker_Get_Deeply_Nested |
719.7626886318039 ns/iter |
558.9696672129935 ns/iter |
1.29 |
JSONPath_Descendant_Filter_Nested |
1583.769836582994 ns/iter |
1235.5634454845795 ns/iter |
1.28 |
URITemplateRouter_Create |
30373.453784792957 ns/iter |
23784.369385543578 ns/iter |
1.28 |
URITemplateRouter_Match |
180.45335982892894 ns/iter |
130.3086412563897 ns/iter |
1.38 |
URITemplateRouter_Match_BasePath |
199.30262470146306 ns/iter |
161.29433918294248 ns/iter |
1.24 |
URITemplateRouterView_Restore |
9949.342375936185 ns/iter |
7751.906132158314 ns/iter |
1.28 |
URITemplateRouterView_Match |
143.50304580106655 ns/iter |
107.92419543920005 ns/iter |
1.33 |
URITemplateRouterView_Match_BasePath |
163.7120628653616 ns/iter |
122.37686646696599 ns/iter |
1.34 |
URITemplateRouterView_Arguments |
449.48995422535666 ns/iter |
350.266590657372 ns/iter |
1.28 |
JSONL_Parse_Large |
9161646.644737462 ns/iter |
7683735.164835195 ns/iter |
1.19 |
JSONL_Parse_Large_GZIP |
10806440.369230166 ns/iter |
9000708.474358222 ns/iter |
1.20 |
JSONLD_Catalog_Annotation_List_Populate |
1353234.7846154817 ns/iter |
1056783.296520488 ns/iter |
1.28 |
JSONLD_Catalog_Materialize |
4519718.372549071 ns/iter |
3391639.000000031 ns/iter |
1.33 |
HTML_Build_Table_100000 |
73904740.66666128 ns/iter |
57230231.33333527 ns/iter |
1.29 |
HTML_Render_Table_100000 |
5051549.166666249 ns/iter |
4374664.63975211 ns/iter |
1.15 |
GZIP_Compress_ISO_Language_Set_3_Locations |
35168622.049997106 ns/iter |
27096020.000000793 ns/iter |
1.30 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4283564.219511713 ns/iter |
2879099.369294855 ns/iter |
1.49 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2128330.370820718 ns/iter |
1633635.1282051997 ns/iter |
1.30 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
276650.29056456283 ns/iter |
198067.69824660016 ns/iter |
1.40 |
JOSE_VerifySignature_RS256 |
63849.15750113926 ns/iter |
49765.769307358314 ns/iter |
1.28 |
JOSE_VerifySignature_ES512 |
2662290.897338528 ns/iter |
2158384.1388891367 ns/iter |
1.23 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Benchmark (windows/msvc)
Details
| Benchmark suite | Current: a51885e | Previous: f0936ad | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
5.112104822569933 ns/iter |
5.405940999999075 ns/iter |
0.95 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
5.108419999999114 ns/iter |
5.09814500000175 ns/iter |
1.00 |
Regex_Period_Asterisk |
5.062659000000167 ns/iter |
5.047803571429199 ns/iter |
1.00 |
Regex_Group_Period_Asterisk_Group |
4.972460999999839 ns/iter |
5.1292080000007445 ns/iter |
0.97 |
Regex_Period_Plus |
4.673211171144942 ns/iter |
4.95372523427292 ns/iter |
0.94 |
Regex_Period |
4.778311215947357 ns/iter |
5.091698000001088 ns/iter |
0.94 |
Regex_Caret_Period_Plus_Dollar |
4.650416685010114 ns/iter |
4.8517906260834565 ns/iter |
0.96 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
4.640794430002074 ns/iter |
5.120448214285034 ns/iter |
0.91 |
Regex_Caret_Period_Asterisk_Dollar |
5.098906000000625 ns/iter |
5.410884000000352 ns/iter |
0.94 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
5.1610855145453876 ns/iter |
5.074965999999677 ns/iter |
1.02 |
Regex_Caret_X_Hyphen |
8.061460678299042 ns/iter |
8.949439245760919 ns/iter |
0.90 |
Regex_Period_Md_Dollar |
59.54500892857238 ns/iter |
44.34136857730532 ns/iter |
1.34 |
Regex_Caret_Slash_Period_Asterisk |
8.262042410712871 ns/iter |
8.179159598216451 ns/iter |
1.01 |
Regex_Caret_Period_Range_Dollar |
5.623765999998796 ns/iter |
6.054569999998876 ns/iter |
0.93 |
Regex_Nested_Backtrack |
75.82141741071524 ns/iter |
55.25001000000884 ns/iter |
1.37 |
JSON_Array_Of_Objects_Unique |
703.592142857141 ns/iter |
581.6833928571035 ns/iter |
1.21 |
JSON_Parse_1 |
9367.142110972964 ns/iter |
8778.638488220151 ns/iter |
1.07 |
JSON_Parse_Real |
16810.14069290646 ns/iter |
16072.033294863873 ns/iter |
1.05 |
JSON_Parse_Decimal |
11215.32968749861 ns/iter |
11808.637499999719 ns/iter |
0.95 |
JSON_Parse_Schema_ISO_Language |
7786948.888888725 ns/iter |
7574807.777776489 ns/iter |
1.03 |
JSON_Parse_Integer |
6028.4633928558505 ns/iter |
6267.832142857596 ns/iter |
0.96 |
JSON_Parse_String_NonSSO_Plain |
8230.206115151626 ns/iter |
7876.837053572164 ns/iter |
1.04 |
JSON_Parse_String_SSO_Plain |
3805.100526606722 ns/iter |
3623.4193949172854 ns/iter |
1.05 |
JSON_Parse_String_Escape_Heavy |
21830.959375002123 ns/iter |
21545.099999997317 ns/iter |
1.01 |
JSON_Parse_Object_Short_Keys |
13177.739161876247 ns/iter |
13416.06131222594 ns/iter |
0.98 |
JSON_Parse_Object_Scalar_Properties |
6760.024553571498 ns/iter |
6861.657366071328 ns/iter |
0.99 |
JSON_Parse_Object_Array_Properties |
11568.264062500333 ns/iter |
11424.575000002538 ns/iter |
1.01 |
JSON_Parse_Object_Object_Properties |
11979.576785713723 ns/iter |
11534.998437500833 ns/iter |
1.04 |
JSON_Parse_Nested_Containers |
81400.4575892773 ns/iter |
79378.16964285511 ns/iter |
1.03 |
JSON_From_String_Copy |
64.74760714285465 ns/iter |
65.85574107142682 ns/iter |
0.98 |
JSON_From_String_Temporary |
88.35055803572293 ns/iter |
58.0064910714181 ns/iter |
1.52 |
JSON_Number_To_Double |
133.9881368755406 ns/iter |
119.5049821428792 ns/iter |
1.12 |
JSON_Object_At_Last_Key/8 |
7.8701973214277485 ns/iter |
7.380878348214484 ns/iter |
1.07 |
JSON_Object_At_Last_Key/32 |
25.37511133398567 ns/iter |
23.977041027044365 ns/iter |
1.06 |
JSON_Object_At_Last_Key/128 |
93.13380387792895 ns/iter |
94.68997767859224 ns/iter |
0.98 |
JSON_Object_At_Last_Key/512 |
427.21160469828664 ns/iter |
427.8367632779779 ns/iter |
1.00 |
JSON_Fast_Hash_Helm_Chart_Lock |
115.26606249997685 ns/iter |
102.41773437499546 ns/iter |
1.13 |
JSON_Equality_Helm_Chart_Lock |
208.4812500000055 ns/iter |
211.03559374999747 ns/iter |
0.99 |
JSON_Divisible_By_Decimal |
391.92444678912557 ns/iter |
302.10115378336957 ns/iter |
1.30 |
JSON_String_Equal/10 |
9.949615134153161 ns/iter |
10.443136560519608 ns/iter |
0.95 |
JSON_String_Equal/100 |
11.346712499999965 ns/iter |
11.80847142856984 ns/iter |
0.96 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
2.151341850277458 ns/iter |
2.5439442857142627 ns/iter |
0.85 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
19.795694777694262 ns/iter |
14.199348150898322 ns/iter |
1.39 |
JSON_String_Fast_Hash/10 |
6.456826785714449 ns/iter |
6.645766071429193 ns/iter |
0.97 |
JSON_String_Fast_Hash/100 |
6.379009821429804 ns/iter |
6.738283928569899 ns/iter |
0.95 |
JSON_String_Key_Hash/10 |
4.961487999999008 ns/iter |
5.393174107142938 ns/iter |
0.92 |
JSON_String_Key_Hash/100 |
10.9591390624999 ns/iter |
11.916257142859518 ns/iter |
0.92 |
JSON_Object_Defines_Miss_Same_Length |
3.9005373144635995 ns/iter |
3.7704520089284643 ns/iter |
1.03 |
JSON_Object_Defines_Miss_Too_Small |
4.384839172149544 ns/iter |
4.114580676990592 ns/iter |
1.07 |
JSON_Object_Defines_Miss_Too_Large |
3.859524158677068 ns/iter |
3.957098772321897 ns/iter |
0.98 |
Pointer_Object_Traverse |
67.0252321428474 ns/iter |
71.44123214284751 ns/iter |
0.94 |
Pointer_Object_Try_Traverse |
68.89125000000718 ns/iter |
71.39397321428272 ns/iter |
0.96 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
186.22225769842314 ns/iter |
190.33193663681374 ns/iter |
0.98 |
Pointer_Walker_Schema_ISO_Language |
11393651.56249994 ns/iter |
13730132.14285785 ns/iter |
0.83 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
2415315.662651062 ns/iter |
2570511.440677303 ns/iter |
0.94 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
3684384.615384354 ns/iter |
3877844.3850267474 ns/iter |
0.95 |
Pointer_Position_Tracker_Get_Deeply_Nested |
562.965803571355 ns/iter |
538.718630899721 ns/iter |
1.05 |
JSONPath_Descendant_Filter_Nested |
2359.2338624625045 ns/iter |
2434.617142857373 ns/iter |
0.97 |
URITemplateRouter_Create |
38273.77790179197 ns/iter |
41205.00813596755 ns/iter |
0.93 |
URITemplateRouter_Match |
251.2885768651011 ns/iter |
234.51777516544317 ns/iter |
1.07 |
URITemplateRouter_Match_BasePath |
295.1815624999402 ns/iter |
270.25106117195094 ns/iter |
1.09 |
URITemplateRouterView_Restore |
28679.35718893131 ns/iter |
35232.33749999122 ns/iter |
0.81 |
URITemplateRouterView_Match |
185.65290528924112 ns/iter |
186.63328035491716 ns/iter |
0.99 |
URITemplateRouterView_Match_BasePath |
263.4571702436656 ns/iter |
207.0643970060375 ns/iter |
1.27 |
URITemplateRouterView_Arguments |
603.7777678571388 ns/iter |
538.0092000000332 ns/iter |
1.12 |
JSONL_Parse_Large |
32660550.000002783 ns/iter |
33042633.33333914 ns/iter |
0.99 |
JSONL_Parse_Large_GZIP |
33154176.190475397 ns/iter |
33818014.285705954 ns/iter |
0.98 |
JSONLD_Catalog_Annotation_List_Populate |
3201723.943662651 ns/iter |
3268034.2723006317 ns/iter |
0.98 |
JSONLD_Catalog_Materialize |
8685882.999998285 ns/iter |
11566907.812497362 ns/iter |
0.75 |
HTML_Build_Table_100000 |
93207714.28571919 ns/iter |
92367671.4285518 ns/iter |
1.01 |
HTML_Render_Table_100000 |
7851991.111111703 ns/iter |
8313831.111111844 ns/iter |
0.94 |
GZIP_Compress_ISO_Language_Set_3_Locations |
38219327.77778632 ns/iter |
35942479.99999425 ns/iter |
1.06 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
10359521.874999445 ns/iter |
10484299.999999773 ns/iter |
0.99 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2344269.8996657412 ns/iter |
2123044.3749999492 ns/iter |
1.10 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
596524.7321427114 ns/iter |
638306.4285714113 ns/iter |
0.93 |
JOSE_VerifySignature_RS256 |
23839.810714288695 ns/iter |
21425.683361388623 ns/iter |
1.11 |
JOSE_VerifySignature_ES512 |
1529772.5446430377 ns/iter |
1386133.1325301304 ns/iter |
1.10 |
This comment was automatically generated by workflow using github-action-benchmark.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Signed-off-by: Juan Cruz Viotti jv@jviotti.com