Convert SchemaFrame to JSON using the old JSON Pointer notation#2329
Convert SchemaFrame to JSON using the old JSON Pointer notation#2329
SchemaFrame to JSON using the old JSON Pointer notation#2329Conversation
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
🤖 Augment PR SummarySummary: This PR changes Changes:
Technical Notes: The implementation relies on 🤖 Was this summary useful? React with 👍 or 👎 |
| entry.assign_assume_new("pointer", | ||
| sourcemeta::core::to_json(location.second.pointer)); | ||
| entry.assign_assume_new( | ||
| "pointer", JSON{sourcemeta::core::to_string(location.second.pointer)}); |
There was a problem hiding this comment.
Switching these fields from token arrays to JSON Pointer strings loses the property-vs-index token typing (e.g., an object property named "0" becomes indistinguishable from array index 0 in the serialized output). Consider whether any downstream consumer expects to round-trip these values back into Pointer/WeakPointer tokens without that ambiguity.
Other locations where this applies: src/core/jsonschema/frame.cc:355, src/core/jsonschema/frame.cc:374, src/core/jsonschema/frame.cc:409.
Severity: low
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
There was a problem hiding this comment.
Benchmark (linux/llvm)
Details
| Benchmark suite | Current: a7b92ad | Previous: 57e8c91 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
3.1480070518446546 ns/iter |
3.1280531257476936 ns/iter |
1.01 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
3.111994620306051 ns/iter |
3.1126551092388293 ns/iter |
1.00 |
Regex_Period_Asterisk |
3.112551107374036 ns/iter |
3.1137317583556214 ns/iter |
1.00 |
Regex_Group_Period_Asterisk_Group |
3.11372296079804 ns/iter |
3.1164548039147495 ns/iter |
1.00 |
Regex_Period_Plus |
3.1177453584864403 ns/iter |
3.114788164856425 ns/iter |
1.00 |
Regex_Period |
2.915195837627214 ns/iter |
2.921475884067222 ns/iter |
1.00 |
Regex_Caret_Period_Plus_Dollar |
3.1149669474094313 ns/iter |
3.1161232232889655 ns/iter |
1.00 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
3.1161975855485515 ns/iter |
3.113870304614636 ns/iter |
1.00 |
Regex_Caret_Period_Asterisk_Dollar |
3.742320952456129 ns/iter |
3.737930986120157 ns/iter |
1.00 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
3.1147703013001924 ns/iter |
3.737411810939986 ns/iter |
0.83 |
Regex_Caret_X_Hyphen |
13.072514525271346 ns/iter |
13.073785834943743 ns/iter |
1.00 |
Regex_Period_Md_Dollar |
27.239936775536858 ns/iter |
27.35352335888149 ns/iter |
1.00 |
Regex_Caret_Slash_Period_Asterisk |
6.533862436901547 ns/iter |
6.542595521461999 ns/iter |
1.00 |
Regex_Caret_Period_Range_Dollar |
4.0469435553080055 ns/iter |
3.1188379910342037 ns/iter |
1.30 |
Regex_Nested_Backtrack |
60.55284849374275 ns/iter |
64.27270040331042 ns/iter |
0.94 |
JSON_Array_Of_Objects_Unique |
393.62431437146574 ns/iter |
393.3261321114585 ns/iter |
1.00 |
JSON_Parse_1 |
6043.828550398524 ns/iter |
6019.837084990959 ns/iter |
1.00 |
JSON_Parse_Real |
10762.70423180948 ns/iter |
10684.76153422803 ns/iter |
1.01 |
JSON_Parse_Decimal |
11463.810568376848 ns/iter |
11750.668292926895 ns/iter |
0.98 |
JSON_Parse_Schema_ISO_Language |
3634134.1250002068 ns/iter |
3627849.585492407 ns/iter |
1.00 |
JSON_Fast_Hash_Helm_Chart_Lock |
53.62445436644485 ns/iter |
53.54327762935155 ns/iter |
1.00 |
JSON_Equality_Helm_Chart_Lock |
155.46342364232993 ns/iter |
156.65304193235218 ns/iter |
0.99 |
JSON_Divisible_By_Decimal |
601.7351263957316 ns/iter |
596.8773303872817 ns/iter |
1.01 |
JSON_String_Equal/10 |
6.23293406371225 ns/iter |
6.234441568012001 ns/iter |
1.00 |
JSON_String_Equal/100 |
6.867310697377712 ns/iter |
6.856253760476701 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.9376348265890584 ns/iter |
0.93754609098282 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
14.630795729390988 ns/iter |
14.630788056195867 ns/iter |
1.00 |
JSON_String_Fast_Hash/10 |
2.180812648865622 ns/iter |
2.179856679519201 ns/iter |
1.00 |
JSON_String_Fast_Hash/100 |
2.180069594976086 ns/iter |
2.180214591345204 ns/iter |
1.00 |
JSON_String_Key_Hash/10 |
2.652362536512087 ns/iter |
2.647917646792272 ns/iter |
1.00 |
JSON_String_Key_Hash/100 |
9.030270866033952 ns/iter |
9.026718151209796 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Same_Length |
3.73951737015607 ns/iter |
3.74233978332493 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Small |
3.7463479820223635 ns/iter |
3.7437334607026798 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Large |
3.742178815878742 ns/iter |
3.7419323449989057 ns/iter |
1.00 |
Pointer_Object_Traverse |
24.994913055177253 ns/iter |
25.004863044861843 ns/iter |
1.00 |
Pointer_Object_Try_Traverse |
28.014270616299363 ns/iter |
28.01146839870299 ns/iter |
1.00 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
192.1159708250839 ns/iter |
185.3363841905215 ns/iter |
1.04 |
Pointer_Walker_Schema_ISO_Language |
3167227.47297277 ns/iter |
3004734.978448247 ns/iter |
1.05 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1402256.9414140834 ns/iter |
1452444.9511677949 ns/iter |
0.97 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1789593.7048347695 ns/iter |
1789288.6889458962 ns/iter |
1.00 |
Pointer_Position_Tracker_Get_Deeply_Nested |
580.0332131048466 ns/iter |
624.7237483637653 ns/iter |
0.93 |
Schema_Frame_WoT_References |
5199578.585185278 ns/iter |
5191049.962962569 ns/iter |
1.00 |
Schema_Frame_OMC_References |
23268965.16666845 ns/iter |
21380766.30303038 ns/iter |
1.09 |
Schema_Frame_OMC_Locations |
21268998.06060492 ns/iter |
19475553.777776137 ns/iter |
1.09 |
Schema_Frame_ISO_Language_Locations |
104796802.16667475 ns/iter |
96390371.33333279 ns/iter |
1.09 |
Schema_Frame_KrakenD_References |
44405679.187498495 ns/iter |
37917610.352939636 ns/iter |
1.17 |
Schema_Frame_KrakenD_Reachable |
631907771.9999769 ns/iter |
575903468.0000923 ns/iter |
1.10 |
Schema_Iterator_ISO_Language |
2313929.0953950146 ns/iter |
2275138.720394777 ns/iter |
1.02 |
Schema_Frame_ISO_Language_Locations_To_JSON |
114537726.80001748 ns/iter |
93144221.71428303 ns/iter |
1.23 |
Schema_Tracker_ISO_Language |
5033250.800000815 ns/iter |
4857169.869862838 ns/iter |
1.04 |
Schema_Tracker_ISO_Language_To_JSON |
19083206.02702539 ns/iter |
19215907.194447055 ns/iter |
0.99 |
Schema_Format_ISO_Language_To_JSON |
112324976.83333047 ns/iter |
104721500.14288673 ns/iter |
1.07 |
Schema_Bundle_Meta_2020_12 |
1671409.7105255842 ns/iter |
1672816.3390231514 ns/iter |
1.00 |
Schema_Frame_Many_Resources_References |
392414518.0000096 ns/iter |
370014723.4999918 ns/iter |
1.06 |
Alterschema_Check_Readibility_ISO_Language_Set_3 |
218920815.3333387 ns/iter |
214655373.99997935 ns/iter |
1.02 |
Alterschema_Check_Readibility_OMC |
36896511.47368223 ns/iter |
33481885.095235545 ns/iter |
1.10 |
Alterschema_Apply_Readibility_KrakenD |
697531552.9998624 ns/iter |
598656252.0000689 ns/iter |
1.17 |
Alterschema_Check_Invalid_External_Refs |
128098996.66666524 ns/iter |
123007945.79998636 ns/iter |
1.04 |
EditorSchema_ForEditor_EmbeddedResources |
14454503.632649977 ns/iter |
13822412.500003338 ns/iter |
1.05 |
URITemplateRouter_Create |
16997.13514673322 ns/iter |
15958.608224382499 ns/iter |
1.07 |
URITemplateRouter_Match |
167.66632371157144 ns/iter |
172.17309483245205 ns/iter |
0.97 |
URITemplateRouterView_Restore |
5001.847438936432 ns/iter |
4965.693219430342 ns/iter |
1.01 |
URITemplateRouterView_Match |
153.9106709186794 ns/iter |
146.32811567730798 ns/iter |
1.05 |
URITemplateRouterView_Arguments |
476.7070903910413 ns/iter |
474.1837782389058 ns/iter |
1.01 |
HTML_Build_Table_100000 |
64523795.18181963 ns/iter |
63329904.63637212 ns/iter |
1.02 |
HTML_Render_Table_100000 |
5356662.938052712 ns/iter |
5349261.858208959 ns/iter |
1.00 |
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: a7b92ad | Previous: 57e8c91 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
3.9365677302442625 ns/iter |
4.5098437500001864 ns/iter |
0.87 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
4.649330367520054 ns/iter |
5.065001999998913 ns/iter |
0.92 |
Regex_Period_Asterisk |
3.9121177455354275 ns/iter |
4.411922341780859 ns/iter |
0.89 |
Regex_Group_Period_Asterisk_Group |
4.610843313864117 ns/iter |
5.062072000000626 ns/iter |
0.91 |
Regex_Period_Plus |
3.773493207546608 ns/iter |
4.088221873175847 ns/iter |
0.92 |
Regex_Period |
3.7602968750010444 ns/iter |
4.100222641249968 ns/iter |
0.92 |
Regex_Caret_Period_Plus_Dollar |
4.2633228998829615 ns/iter |
4.750442421319062 ns/iter |
0.90 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
4.2841475000003015 ns/iter |
4.736398671286325 ns/iter |
0.90 |
Regex_Caret_Period_Asterisk_Dollar |
4.984330000002046 ns/iter |
5.058524999999463 ns/iter |
0.99 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
4.624406260323587 ns/iter |
5.058555999999044 ns/iter |
0.91 |
Regex_Caret_X_Hyphen |
7.36324218749981 ns/iter |
8.101438616071123 ns/iter |
0.91 |
Regex_Period_Md_Dollar |
34.593206790516476 ns/iter |
35.447045298346595 ns/iter |
0.98 |
Regex_Caret_Slash_Period_Asterisk |
7.1409580357137 ns/iter |
7.895902901786655 ns/iter |
0.90 |
Regex_Caret_Period_Range_Dollar |
4.907912733484641 ns/iter |
5.034641964284349 ns/iter |
0.97 |
Regex_Nested_Backtrack |
88.21458088328649 ns/iter |
99.72385937498274 ns/iter |
0.88 |
JSON_Array_Of_Objects_Unique |
538.2735714286063 ns/iter |
497.24109999988286 ns/iter |
1.08 |
JSON_Parse_1 |
7711.886160716323 ns/iter |
8115.591517857521 ns/iter |
0.95 |
JSON_Parse_Real |
14019.942544899985 ns/iter |
16360.912451283712 ns/iter |
0.86 |
JSON_Parse_Decimal |
14959.339467236581 ns/iter |
16324.0798487463 ns/iter |
0.92 |
JSON_Parse_Schema_ISO_Language |
6448078.571427881 ns/iter |
6137338.3928570645 ns/iter |
1.05 |
JSON_Fast_Hash_Helm_Chart_Lock |
71.62685267859204 ns/iter |
68.29474999999466 ns/iter |
1.05 |
JSON_Equality_Helm_Chart_Lock |
294.1756948465371 ns/iter |
278.06495187210254 ns/iter |
1.06 |
JSON_Divisible_By_Decimal |
1135.1775000001396 ns/iter |
1193.4576562499187 ns/iter |
0.95 |
JSON_String_Equal/10 |
13.008206191930126 ns/iter |
13.372648214288217 ns/iter |
0.97 |
JSON_String_Equal/100 |
14.304178571429864 ns/iter |
13.740048214287981 ns/iter |
1.04 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
1.8113194208558323 ns/iter |
1.899292743415571 ns/iter |
0.95 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
11.985712499998563 ns/iter |
12.632958928573348 ns/iter |
0.95 |
JSON_String_Fast_Hash/10 |
4.347113904309114 ns/iter |
3.7903124932317587 ns/iter |
1.15 |
JSON_String_Fast_Hash/100 |
4.448696874999314 ns/iter |
3.7853560646680515 ns/iter |
1.18 |
JSON_String_Key_Hash/10 |
3.9391023143945683 ns/iter |
3.7919169575145153 ns/iter |
1.04 |
JSON_String_Key_Hash/100 |
17.43398827611464 ns/iter |
16.708280468473404 ns/iter |
1.04 |
JSON_Object_Defines_Miss_Same_Length |
3.9088677455355127 ns/iter |
3.812824218749305 ns/iter |
1.03 |
JSON_Object_Defines_Miss_Too_Small |
3.918106584821501 ns/iter |
3.801686778926493 ns/iter |
1.03 |
JSON_Object_Defines_Miss_Too_Large |
3.8874193749990127 ns/iter |
3.85572879464264 ns/iter |
1.01 |
Pointer_Object_Traverse |
43.88189959219601 ns/iter |
41.94468042905663 ns/iter |
1.05 |
Pointer_Object_Try_Traverse |
55.11675892855854 ns/iter |
52.740839285710145 ns/iter |
1.05 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
172.0617905398634 ns/iter |
177.86902976802259 ns/iter |
0.97 |
Pointer_Walker_Schema_ISO_Language |
13248330.000001261 ns/iter |
12262867.857141862 ns/iter |
1.08 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
2275080.7228920124 ns/iter |
2183949.285714399 ns/iter |
1.04 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
3196628.5714284074 ns/iter |
3255502.4509796496 ns/iter |
0.98 |
Pointer_Position_Tracker_Get_Deeply_Nested |
632.0258928571576 ns/iter |
600.9396205356613 ns/iter |
1.05 |
Schema_Frame_WoT_References |
10364267.187501498 ns/iter |
10193018.749998117 ns/iter |
1.02 |
Schema_Frame_OMC_References |
45988579.999993816 ns/iter |
44816166.666669235 ns/iter |
1.03 |
Schema_Frame_OMC_Locations |
43275506.250012085 ns/iter |
40708200.00000215 ns/iter |
1.06 |
Schema_Frame_ISO_Language_Locations |
215432933.33335593 ns/iter |
197604433.33332965 ns/iter |
1.09 |
Schema_Frame_KrakenD_References |
108702771.42859258 ns/iter |
90335671.42854996 ns/iter |
1.20 |
Schema_Frame_KrakenD_Reachable |
564265200.0001363 ns/iter |
527833499.9998151 ns/iter |
1.07 |
Schema_Iterator_ISO_Language |
5331853.571429893 ns/iter |
5079731.00000072 ns/iter |
1.05 |
Schema_Frame_ISO_Language_Locations_To_JSON |
336757499.99997604 ns/iter |
251281900.00001875 ns/iter |
1.34 |
Schema_Tracker_ISO_Language |
16794155.555554528 ns/iter |
16531304.87804957 ns/iter |
1.02 |
Schema_Tracker_ISO_Language_To_JSON |
52671781.81818301 ns/iter |
50563370.00000895 ns/iter |
1.04 |
Schema_Format_ISO_Language_To_JSON |
217357900.00002453 ns/iter |
205916599.9999853 ns/iter |
1.06 |
Schema_Bundle_Meta_2020_12 |
2876555.5084704426 ns/iter |
3163184.97652901 ns/iter |
0.91 |
Schema_Frame_Many_Resources_References |
1468313299.9998634 ns/iter |
1530318800.000032 ns/iter |
0.96 |
Alterschema_Check_Readibility_ISO_Language_Set_3 |
337035300.00002503 ns/iter |
332551449.99998266 ns/iter |
1.01 |
Alterschema_Check_Readibility_OMC |
62429822.22223266 ns/iter |
62592963.63635837 ns/iter |
1.00 |
Alterschema_Apply_Readibility_KrakenD |
1027737299.9996715 ns/iter |
1027009700.0000077 ns/iter |
1.00 |
Alterschema_Check_Invalid_External_Refs |
137763519.99999863 ns/iter |
146000200.00000313 ns/iter |
0.94 |
EditorSchema_ForEditor_EmbeddedResources |
30309442.307681747 ns/iter |
28064041.666681305 ns/iter |
1.08 |
URITemplateRouter_Create |
20593.146073937845 ns/iter |
22999.005591456116 ns/iter |
0.90 |
URITemplateRouter_Match |
217.53488091357124 ns/iter |
205.59742832154268 ns/iter |
1.06 |
URITemplateRouterView_Restore |
24297.31428571813 ns/iter |
31598.47321428393 ns/iter |
0.77 |
URITemplateRouterView_Match |
161.34720982142272 ns/iter |
170.81832393874865 ns/iter |
0.94 |
URITemplateRouterView_Arguments |
445.8260725465144 ns/iter |
444.23838770389835 ns/iter |
1.00 |
HTML_Build_Table_100000 |
93392857.14284934 ns/iter |
88137642.85715868 ns/iter |
1.06 |
HTML_Render_Table_100000 |
8340817.7777780825 ns/iter |
7882246.666665398 ns/iter |
1.06 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Benchmark (macos/llvm)
Details
| Benchmark suite | Current: a7b92ad | Previous: 57e8c91 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.2155573754904383 ns/iter |
1.7101742784054383 ns/iter |
1.30 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.224185239535137 ns/iter |
1.718208613892979 ns/iter |
1.29 |
Regex_Period_Asterisk |
2.3331357283822576 ns/iter |
1.6924050861917048 ns/iter |
1.38 |
Regex_Group_Period_Asterisk_Group |
2.1283133158935756 ns/iter |
1.7680202825242464 ns/iter |
1.20 |
Regex_Period_Plus |
2.77949809529543 ns/iter |
2.048092012376816 ns/iter |
1.36 |
Regex_Period |
2.745470868716682 ns/iter |
2.158432405396186 ns/iter |
1.27 |
Regex_Caret_Period_Plus_Dollar |
2.6786961312320385 ns/iter |
2.1079139393171906 ns/iter |
1.27 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.5731108325657 ns/iter |
1.9409457669903523 ns/iter |
1.33 |
Regex_Caret_Period_Asterisk_Dollar |
2.1941698208327662 ns/iter |
1.6674302208871257 ns/iter |
1.32 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.146100085827054 ns/iter |
1.7449764684693403 ns/iter |
1.23 |
Regex_Caret_X_Hyphen |
8.02598088022733 ns/iter |
6.566113385129091 ns/iter |
1.22 |
Regex_Period_Md_Dollar |
28.676895244290446 ns/iter |
25.544452470384748 ns/iter |
1.12 |
Regex_Caret_Slash_Period_Asterisk |
6.1500486899541205 ns/iter |
5.497452920001252 ns/iter |
1.12 |
Regex_Caret_Period_Range_Dollar |
2.396793111101843 ns/iter |
1.8022090554539754 ns/iter |
1.33 |
Regex_Nested_Backtrack |
40.097379615313024 ns/iter |
27.246848606211394 ns/iter |
1.47 |
JSON_Array_Of_Objects_Unique |
496.69030582840065 ns/iter |
395.77097336557006 ns/iter |
1.25 |
JSON_Parse_1 |
6260.036333654024 ns/iter |
4261.574239444162 ns/iter |
1.47 |
JSON_Parse_Real |
9075.297397577691 ns/iter |
7277.0613749563945 ns/iter |
1.25 |
JSON_Parse_Decimal |
11122.113304418848 ns/iter |
7801.008918946962 ns/iter |
1.43 |
JSON_Parse_Schema_ISO_Language |
5823448.096491216 ns/iter |
3186333.1038260334 ns/iter |
1.83 |
JSON_Fast_Hash_Helm_Chart_Lock |
74.62339297011513 ns/iter |
58.048214648786306 ns/iter |
1.29 |
JSON_Equality_Helm_Chart_Lock |
206.98014926481514 ns/iter |
127.29989465815413 ns/iter |
1.63 |
JSON_Divisible_By_Decimal |
564.1764601364422 ns/iter |
432.4619532639519 ns/iter |
1.30 |
JSON_String_Equal/10 |
8.091126162337316 ns/iter |
6.422026009271628 ns/iter |
1.26 |
JSON_String_Equal/100 |
7.6293890650193905 ns/iter |
6.040157894174085 ns/iter |
1.26 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.8899360969272075 ns/iter |
0.7324223072271426 ns/iter |
1.22 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
4.840641173507598 ns/iter |
3.2148545023250277 ns/iter |
1.51 |
JSON_String_Fast_Hash/10 |
2.990313375763742 ns/iter |
2.2429718651452655 ns/iter |
1.33 |
JSON_String_Fast_Hash/100 |
2.3806700004498906 ns/iter |
2.0907555776687645 ns/iter |
1.14 |
JSON_String_Key_Hash/10 |
1.6961614886465364 ns/iter |
1.700374277093008 ns/iter |
1.00 |
JSON_String_Key_Hash/100 |
2.7267080117588223 ns/iter |
2.6272614341530245 ns/iter |
1.04 |
JSON_Object_Defines_Miss_Same_Length |
3.0122502338073214 ns/iter |
2.27134913027759 ns/iter |
1.33 |
JSON_Object_Defines_Miss_Too_Small |
2.957545837468312 ns/iter |
2.505598820757799 ns/iter |
1.18 |
JSON_Object_Defines_Miss_Too_Large |
3.102931604785301 ns/iter |
2.4782666335017227 ns/iter |
1.25 |
Pointer_Object_Traverse |
19.616256651674682 ns/iter |
14.888687207065578 ns/iter |
1.32 |
Pointer_Object_Try_Traverse |
26.837252618404488 ns/iter |
19.782598910155524 ns/iter |
1.36 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
187.95819264660702 ns/iter |
149.98986830418661 ns/iter |
1.25 |
Pointer_Walker_Schema_ISO_Language |
5739041.660713643 ns/iter |
3689482.3212123537 ns/iter |
1.56 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1471950.3264922788 ns/iter |
995364.8969851781 ns/iter |
1.48 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1833025.324675247 ns/iter |
1393433.2662602433 ns/iter |
1.32 |
Pointer_Position_Tracker_Get_Deeply_Nested |
537.9863604043285 ns/iter |
375.27823437727636 ns/iter |
1.43 |
Schema_Frame_WoT_References |
7610338.731482173 ns/iter |
5862672.910000129 ns/iter |
1.30 |
Schema_Frame_OMC_References |
41558541.649999365 ns/iter |
34444158.35000427 ns/iter |
1.21 |
Schema_Frame_OMC_Locations |
33066755.952382836 ns/iter |
24064648.148152158 ns/iter |
1.37 |
Schema_Frame_ISO_Language_Locations |
127216116.59999326 ns/iter |
79114744.0000129 ns/iter |
1.61 |
Schema_Frame_KrakenD_References |
76988279.20000894 ns/iter |
50820705.35713358 ns/iter |
1.51 |
Schema_Frame_KrakenD_Reachable |
709158666.0001212 ns/iter |
556223667.0000402 ns/iter |
1.27 |
Schema_Iterator_ISO_Language |
3096325.8547009327 ns/iter |
1822097.6388060516 ns/iter |
1.70 |
Schema_Frame_ISO_Language_Locations_To_JSON |
137019187.50001597 ns/iter |
84416494.14284517 ns/iter |
1.62 |
Schema_Tracker_ISO_Language |
14677698.369565485 ns/iter |
8260642.700000176 ns/iter |
1.78 |
Schema_Tracker_ISO_Language_To_JSON |
21256044.354840335 ns/iter |
13423855.428569295 ns/iter |
1.58 |
Schema_Format_ISO_Language_To_JSON |
112724437.16669993 ns/iter |
77469666.66665381 ns/iter |
1.46 |
Schema_Bundle_Meta_2020_12 |
1880648.6772301293 ns/iter |
1199779.0519070895 ns/iter |
1.57 |
Schema_Frame_Many_Resources_References |
446767666.50002265 ns/iter |
263897555.6666689 ns/iter |
1.69 |
Alterschema_Check_Readibility_ISO_Language_Set_3 |
222335264.00001815 ns/iter |
175885991.5999892 ns/iter |
1.26 |
Alterschema_Check_Readibility_OMC |
45343315.91666311 ns/iter |
38427644.46665873 ns/iter |
1.18 |
Alterschema_Apply_Readibility_KrakenD |
677096957.9997654 ns/iter |
516719959.0000564 ns/iter |
1.31 |
Alterschema_Check_Invalid_External_Refs |
95303922.71426535 ns/iter |
70250483.29999208 ns/iter |
1.36 |
EditorSchema_ForEditor_EmbeddedResources |
13837291.680853555 ns/iter |
10943811.878787942 ns/iter |
1.26 |
URITemplateRouter_Create |
20835.89414820439 ns/iter |
15535.55098848391 ns/iter |
1.34 |
URITemplateRouter_Match |
201.4901558746135 ns/iter |
157.63119406329275 ns/iter |
1.28 |
URITemplateRouterView_Restore |
18761.04533876273 ns/iter |
12025.498114590813 ns/iter |
1.56 |
URITemplateRouterView_Match |
177.84814139629475 ns/iter |
128.7200298552171 ns/iter |
1.38 |
URITemplateRouterView_Arguments |
519.8379159999149 ns/iter |
396.4026639040322 ns/iter |
1.31 |
HTML_Build_Table_100000 |
85492995.33332387 ns/iter |
72064995.89999565 ns/iter |
1.19 |
HTML_Render_Table_100000 |
6071049.878786735 ns/iter |
3090178.6582728704 ns/iter |
1.96 |
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: a7b92ad | Previous: 57e8c91 | Ratio |
|---|---|---|---|
HTML_Build_Table_100000 |
63927715.09089553 ns/iter |
63361133.27273035 ns/iter |
1.01 |
HTML_Render_Table_100000 |
5689002.105691913 ns/iter |
5363982.806452515 ns/iter |
1.06 |
URITemplateRouter_Create |
14803.885517678802 ns/iter |
14732.405541404825 ns/iter |
1.00 |
URITemplateRouter_Match |
162.11697923358298 ns/iter |
157.78185301963097 ns/iter |
1.03 |
URITemplateRouterView_Restore |
6218.552275697559 ns/iter |
6286.852243525588 ns/iter |
0.99 |
URITemplateRouterView_Match |
127.09555349088616 ns/iter |
126.04018210135679 ns/iter |
1.01 |
URITemplateRouterView_Arguments |
466.3415287913006 ns/iter |
472.05875065144545 ns/iter |
0.99 |
EditorSchema_ForEditor_EmbeddedResources |
14497361.208318202 ns/iter |
14147804.183675343 ns/iter |
1.02 |
Alterschema_Check_Readibility_ISO_Language_Set_3 |
216423174.6667156 ns/iter |
204714598.00000957 ns/iter |
1.06 |
Alterschema_Check_Readibility_OMC |
37850906.31578513 ns/iter |
34009376.85714347 ns/iter |
1.11 |
Alterschema_Apply_Readibility_KrakenD |
652358626.0000229 ns/iter |
563436421.9997679 ns/iter |
1.16 |
Alterschema_Check_Invalid_External_Refs |
130972432.39999442 ns/iter |
124889783.8333202 ns/iter |
1.05 |
Schema_Frame_WoT_References |
5554804.674604369 ns/iter |
5441698.604651416 ns/iter |
1.02 |
Schema_Frame_OMC_References |
24976822.249998678 ns/iter |
23230664.064517587 ns/iter |
1.08 |
Schema_Frame_OMC_Locations |
23337679.000002436 ns/iter |
20957615.666668173 ns/iter |
1.11 |
Schema_Frame_ISO_Language_Locations |
107151841.8333426 ns/iter |
98737464.999983 ns/iter |
1.09 |
Schema_Frame_KrakenD_References |
46635948.3333387 ns/iter |
39070750.22223378 ns/iter |
1.19 |
Schema_Frame_KrakenD_Reachable |
616050830.9999386 ns/iter |
525213777.00009 ns/iter |
1.17 |
Schema_Iterator_ISO_Language |
2619082.625467902 ns/iter |
2571591.7619046583 ns/iter |
1.02 |
Schema_Frame_ISO_Language_Locations_To_JSON |
223485448.66667905 ns/iter |
223317141.3333821 ns/iter |
1.00 |
Schema_Tracker_ISO_Language |
5403449.828124352 ns/iter |
5059366.093525745 ns/iter |
1.07 |
Schema_Tracker_ISO_Language_To_JSON |
22765448.32257939 ns/iter |
22445166.774193034 ns/iter |
1.01 |
Schema_Format_ISO_Language_To_JSON |
114600667.99994214 ns/iter |
102872479.1427911 ns/iter |
1.11 |
Schema_Bundle_Meta_2020_12 |
1832546.8612511507 ns/iter |
1823084.4000087231 ns/iter |
1.01 |
Schema_Frame_Many_Resources_References |
402505746.49996907 ns/iter |
376421095.50006354 ns/iter |
1.07 |
Pointer_Object_Traverse |
26.62292681240855 ns/iter |
26.00809720567348 ns/iter |
1.02 |
Pointer_Object_Try_Traverse |
25.305906319196342 ns/iter |
24.42003249199963 ns/iter |
1.04 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
160.0826496549973 ns/iter |
161.1034853778249 ns/iter |
0.99 |
Pointer_Walker_Schema_ISO_Language |
3611357.510204025 ns/iter |
3348321.71291851 ns/iter |
1.08 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1575739.9794048013 ns/iter |
1552903.0488884624 ns/iter |
1.01 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1806812.5129533364 ns/iter |
1769534.87088604 ns/iter |
1.02 |
Pointer_Position_Tracker_Get_Deeply_Nested |
401.5019863133659 ns/iter |
427.41776030765215 ns/iter |
0.94 |
JSON_Array_Of_Objects_Unique |
433.28411188465253 ns/iter |
431.8701198982538 ns/iter |
1.00 |
JSON_Parse_1 |
8122.0435898339865 ns/iter |
8178.299140214444 ns/iter |
0.99 |
JSON_Parse_Real |
12422.93557626961 ns/iter |
12317.204085985952 ns/iter |
1.01 |
JSON_Parse_Decimal |
17923.70413354174 ns/iter |
18312.187241393513 ns/iter |
0.98 |
JSON_Parse_Schema_ISO_Language |
4840168.805556131 ns/iter |
4762283.918367125 ns/iter |
1.02 |
JSON_Fast_Hash_Helm_Chart_Lock |
74.56694097255361 ns/iter |
72.32741430113416 ns/iter |
1.03 |
JSON_Equality_Helm_Chart_Lock |
152.6635298275668 ns/iter |
169.81108298633856 ns/iter |
0.90 |
JSON_Divisible_By_Decimal |
567.3988906208856 ns/iter |
589.216246356003 ns/iter |
0.96 |
JSON_String_Equal/10 |
6.3124570675454095 ns/iter |
6.703844970411237 ns/iter |
0.94 |
JSON_String_Equal/100 |
6.938741891544904 ns/iter |
7.442928141013114 ns/iter |
0.93 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.623813403204591 ns/iter |
0.6242136520926703 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
28.074104035554832 ns/iter |
28.05374726096632 ns/iter |
1.00 |
JSON_String_Fast_Hash/10 |
0.9343736057490202 ns/iter |
0.9369831843231278 ns/iter |
1.00 |
JSON_String_Fast_Hash/100 |
0.9343409333153959 ns/iter |
0.9353824550079282 ns/iter |
1.00 |
JSON_String_Key_Hash/10 |
1.2512106942753676 ns/iter |
1.5601666446167186 ns/iter |
0.80 |
JSON_String_Key_Hash/100 |
12.44368951936167 ns/iter |
12.450932706940296 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Same_Length |
3.426948160547637 ns/iter |
3.427562522238556 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Small |
3.1174767001563444 ns/iter |
3.427869971495065 ns/iter |
0.91 |
JSON_Object_Defines_Miss_Too_Large |
3.1134555394854764 ns/iter |
3.4399435745264224 ns/iter |
0.91 |
Regex_Lower_S_Or_Upper_S_Asterisk |
1.557306206986281 ns/iter |
1.246946753371341 ns/iter |
1.25 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.2454635292835339 ns/iter |
1.55913010884121 ns/iter |
0.80 |
Regex_Period_Asterisk |
1.245474764120072 ns/iter |
1.5582959989265928 ns/iter |
0.80 |
Regex_Group_Period_Asterisk_Group |
1.2468647709673908 ns/iter |
1.5588641090433961 ns/iter |
0.80 |
Regex_Period_Plus |
1.2465751139274361 ns/iter |
1.5578770622526732 ns/iter |
0.80 |
Regex_Period |
1.2466971978209291 ns/iter |
1.5579924396487927 ns/iter |
0.80 |
Regex_Caret_Period_Plus_Dollar |
1.2460385394637195 ns/iter |
1.5584668066257796 ns/iter |
0.80 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
1.2451667686827026 ns/iter |
1.5586590593014795 ns/iter |
0.80 |
Regex_Caret_Period_Asterisk_Dollar |
1.2464302818959725 ns/iter |
1.557506086263222 ns/iter |
0.80 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.5601177767107883 ns/iter |
1.246861846282914 ns/iter |
1.25 |
Regex_Caret_X_Hyphen |
12.134654521292449 ns/iter |
12.14490166074232 ns/iter |
1.00 |
Regex_Period_Md_Dollar |
30.04927325721846 ns/iter |
31.76600867189419 ns/iter |
0.95 |
Regex_Caret_Slash_Period_Asterisk |
4.67282808975879 ns/iter |
4.6768397985613674 ns/iter |
1.00 |
Regex_Caret_Period_Range_Dollar |
1.2517359354875954 ns/iter |
1.5599993902381513 ns/iter |
0.80 |
Regex_Nested_Backtrack |
50.083727047067036 ns/iter |
53.952192649612115 ns/iter |
0.93 |
This comment was automatically generated by workflow using github-action-benchmark.
Signed-off-by: Juan Cruz Viotti jv@jviotti.com