json-masker icon indicating copy to clipboard operation
json-masker copied to clipboard

Migrate tests to use Jackson 3

Open gavlyukovskiy opened this issue 5 months ago • 2 comments

gavlyukovskiy avatar Nov 21 '25 20:11 gavlyukovskiy

[!NOTE] These results are affected by shared workloads on GitHub runners. Use the results only to detect possible regressions, but always rerun on more stable machine before making any conclusions!

Benchmark results (pull-request, 002c3a408d40f3b4c9bdfe9c45dd124f2b287ebe)

Benchmark                                                           (characters)  (jsonPath)  (jsonSize)  (keyLength)  (maskedKeyProbability)  (numberOfTargetKeys)  (streamInputType)  (streamOutputType)   Mode  Cnt         Score        Error   Units
BaselineBenchmark.countBytes                                             unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4   2595225.053 ± 130475.003   ops/s
BaselineBenchmark.countBytes:gc.alloc.rate.norm                          unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4         0.001 ±      0.001    B/op
BaselineBenchmark.jacksonParseAndMask                                    unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     28737.530 ±    343.015   ops/s
BaselineBenchmark.jacksonParseAndMask:gc.alloc.rate.norm                 unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     62448.073 ±      0.040    B/op
BaselineBenchmark.jacksonParseOnly                                       unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     54187.836 ±    234.167   ops/s
BaselineBenchmark.jacksonParseOnly:gc.alloc.rate.norm                    unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     21528.038 ±      0.023    B/op
BaselineBenchmark.regexReplace                                           unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      5313.654 ±     59.284   ops/s
BaselineBenchmark.regexReplace:gc.alloc.rate.norm                        unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     61656.393 ±      0.221    B/op
BaselineBenchmark.writeFile                                              unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      5343.109 ±   1378.898   ops/s
BaselineBenchmark.writeFile:gc.alloc.rate.norm                           unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     10664.389 ±      0.115    B/op
InstanceCreationBenchmark.jsonMasker                                         N/A         N/A         N/A          N/A                     N/A                  1000                N/A                 N/A  thrpt    4      1463.321 ±    113.425   ops/s
InstanceCreationBenchmark.jsonMasker:gc.alloc.rate.norm                      N/A         N/A         N/A          N/A                     N/A                  1000                N/A                 N/A  thrpt    4   1672740.561 ±     41.372    B/op
JsonMaskerBenchmark.jsonMaskerByteArrayStreams                           unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    242096.576 ±   3954.028   ops/s
JsonMaskerBenchmark.jsonMaskerByteArrayStreams:gc.alloc.rate.norm        unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     10840.008 ±      0.001    B/op
JsonMaskerBenchmark.jsonMaskerByteArrayStreams                           unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    245935.019 ±   4398.865   ops/s
JsonMaskerBenchmark.jsonMaskerByteArrayStreams:gc.alloc.rate.norm        unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     12184.008 ±      0.001    B/op
JsonMaskerBenchmark.jsonMaskerBytes                                      unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    405087.732 ±   5320.195   ops/s
JsonMaskerBenchmark.jsonMaskerBytes:gc.alloc.rate.norm                   unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      2272.005 ±      0.001    B/op
JsonMaskerBenchmark.jsonMaskerBytes                                      unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    356501.605 ±  11821.977   ops/s
JsonMaskerBenchmark.jsonMaskerBytes:gc.alloc.rate.norm                   unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      2024.006 ±      0.001    B/op
JsonMaskerBenchmark.jsonMaskerString                                     unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    219786.667 ±   4443.710   ops/s
JsonMaskerBenchmark.jsonMaskerString:gc.alloc.rate.norm                  unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     10176.009 ±      0.001    B/op
JsonMaskerBenchmark.jsonMaskerString                                     unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    202100.015 ±   1245.300   ops/s
JsonMaskerBenchmark.jsonMaskerString:gc.alloc.rate.norm                  unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     10944.010 ±      0.001    B/op
LargeKeySetInstanceCreationBenchmark.jsonMasker                              N/A         N/A         N/A          100                     N/A                  1000                N/A                 N/A  thrpt    4       137.230 ±      7.903   ops/s
LargeKeySetInstanceCreationBenchmark.jsonMasker:gc.alloc.rate.norm           N/A         N/A         N/A          100                     N/A                  1000                N/A                 N/A  thrpt    4  32420367.644 ±     10.856    B/op
StreamTypeBenchmark.jsonMaskerStreams                                        N/A         N/A         1kb          N/A                     N/A                   N/A    ByteArrayStream     ByteArrayStream  thrpt    4    190322.796 ±   6404.051   ops/s
StreamTypeBenchmark.jsonMaskerStreams:gc.alloc.rate.norm                     N/A         N/A         1kb          N/A                     N/A                   N/A    ByteArrayStream     ByteArrayStream  thrpt    4     12184.011 ±      0.008    B/op
StreamTypeBenchmark.jsonMaskerStreams                                        N/A         N/A         1kb          N/A                     N/A                   N/A    ByteArrayStream          FileStream  thrpt    4      5545.732 ±    221.707   ops/s
StreamTypeBenchmark.jsonMaskerStreams:gc.alloc.rate.norm                     N/A         N/A         1kb          N/A                     N/A                   N/A    ByteArrayStream          FileStream  thrpt    4      9208.378 ±      0.252    B/op
StreamTypeBenchmark.jsonMaskerStreams                                        N/A         N/A         1kb          N/A                     N/A                   N/A         FileStream     ByteArrayStream  thrpt    4     95231.813 ±   5610.877   ops/s
StreamTypeBenchmark.jsonMaskerStreams:gc.alloc.rate.norm                     N/A         N/A         1kb          N/A                     N/A                   N/A         FileStream     ByteArrayStream  thrpt    4     12328.022 ±      0.017    B/op
StreamTypeBenchmark.jsonMaskerStreams                                        N/A         N/A         1kb          N/A                     N/A                   N/A         FileStream          FileStream  thrpt    4      5321.945 ±    446.493   ops/s
StreamTypeBenchmark.jsonMaskerStreams:gc.alloc.rate.norm                     N/A         N/A         1kb          N/A                     N/A                   N/A         FileStream          FileStream  thrpt    4      9384.393 ±      0.240    B/op
ValueMaskerBenchmark.maskWithRawValueFunction                            unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    535587.751 ±   3707.598   ops/s
ValueMaskerBenchmark.maskWithRawValueFunction:gc.alloc.rate.norm         unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      1632.004 ±      0.001    B/op
ValueMaskerBenchmark.maskWithStatic                                      unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    599877.830 ±   6260.976   ops/s
ValueMaskerBenchmark.maskWithStatic:gc.alloc.rate.norm                   unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      1272.003 ±      0.001    B/op
ValueMaskerBenchmark.maskWithTextValueFunction                           unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    491838.391 ±   8301.220   ops/s
ValueMaskerBenchmark.maskWithTextValueFunction:gc.alloc.rate.norm        unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      1920.004 ±      0.001    B/op

Benchmark results (master, abc9a486db98b0ac2844541e241828da66312c79)

Benchmark                                                           (characters)  (jsonPath)  (jsonSize)  (keyLength)  (maskedKeyProbability)  (numberOfTargetKeys)  (streamInputType)  (streamOutputType)   Mode  Cnt         Score        Error   Units
BaselineBenchmark.countBytes                                             unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4   2594224.076 ± 157060.315   ops/s
BaselineBenchmark.countBytes:gc.alloc.rate.norm                          unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4         0.001 ±      0.001    B/op
BaselineBenchmark.jacksonParseAndMask                                    unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     29810.500 ±    382.211   ops/s
BaselineBenchmark.jacksonParseAndMask:gc.alloc.rate.norm                 unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     64309.391 ±    140.235    B/op
BaselineBenchmark.jacksonParseOnly                                       unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     50455.825 ±    324.933   ops/s
BaselineBenchmark.jacksonParseOnly:gc.alloc.rate.norm                    unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     24312.042 ±      0.029    B/op
BaselineBenchmark.regexReplace                                           unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      5280.325 ±    304.122   ops/s
BaselineBenchmark.regexReplace:gc.alloc.rate.norm                        unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     61656.398 ±      0.261    B/op
BaselineBenchmark.writeFile                                              unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      6725.477 ±   1032.798   ops/s
BaselineBenchmark.writeFile:gc.alloc.rate.norm                           unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     10664.313 ±      0.259    B/op
InstanceCreationBenchmark.jsonMasker                                         N/A         N/A         N/A          N/A                     N/A                  1000                N/A                 N/A  thrpt    4      1468.983 ±     97.566   ops/s
InstanceCreationBenchmark.jsonMasker:gc.alloc.rate.norm                      N/A         N/A         N/A          N/A                     N/A                  1000                N/A                 N/A  thrpt    4   1672777.409 ±      0.746    B/op
JsonMaskerBenchmark.jsonMaskerByteArrayStreams                           unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    231824.380 ±   2276.159   ops/s
JsonMaskerBenchmark.jsonMaskerByteArrayStreams:gc.alloc.rate.norm        unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     10840.009 ±      0.001    B/op
JsonMaskerBenchmark.jsonMaskerByteArrayStreams                           unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    215848.093 ±   3673.642   ops/s
JsonMaskerBenchmark.jsonMaskerByteArrayStreams:gc.alloc.rate.norm        unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     12184.009 ±      0.001    B/op
JsonMaskerBenchmark.jsonMaskerBytes                                      unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    389935.990 ±   6284.352   ops/s
JsonMaskerBenchmark.jsonMaskerBytes:gc.alloc.rate.norm                   unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      2272.005 ±      0.001    B/op
JsonMaskerBenchmark.jsonMaskerBytes                                      unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    368047.794 ±   1157.992   ops/s
JsonMaskerBenchmark.jsonMaskerBytes:gc.alloc.rate.norm                   unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      2024.005 ±      0.001    B/op
JsonMaskerBenchmark.jsonMaskerString                                     unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    215158.315 ±   1184.356   ops/s
JsonMaskerBenchmark.jsonMaskerString:gc.alloc.rate.norm                  unicode       false         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     10176.009 ±      0.001    B/op
JsonMaskerBenchmark.jsonMaskerString                                     unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    200782.688 ±   1388.118   ops/s
JsonMaskerBenchmark.jsonMaskerString:gc.alloc.rate.norm                  unicode        true         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4     10944.010 ±      0.001    B/op
LargeKeySetInstanceCreationBenchmark.jsonMasker                              N/A         N/A         N/A          100                     N/A                  1000                N/A                 N/A  thrpt    4       136.565 ±      4.940   ops/s
LargeKeySetInstanceCreationBenchmark.jsonMasker:gc.alloc.rate.norm           N/A         N/A         N/A          100                     N/A                  1000                N/A                 N/A  thrpt    4  32420367.711 ±     10.913    B/op
StreamTypeBenchmark.jsonMaskerStreams                                        N/A         N/A         1kb          N/A                     N/A                   N/A    ByteArrayStream     ByteArrayStream  thrpt    4    215193.539 ±   3706.992   ops/s
StreamTypeBenchmark.jsonMaskerStreams:gc.alloc.rate.norm                     N/A         N/A         1kb          N/A                     N/A                   N/A    ByteArrayStream     ByteArrayStream  thrpt    4     12184.010 ±      0.008    B/op
StreamTypeBenchmark.jsonMaskerStreams                                        N/A         N/A         1kb          N/A                     N/A                   N/A    ByteArrayStream          FileStream  thrpt    4      5451.529 ±    454.361   ops/s
StreamTypeBenchmark.jsonMaskerStreams:gc.alloc.rate.norm                     N/A         N/A         1kb          N/A                     N/A                   N/A    ByteArrayStream          FileStream  thrpt    4      9224.387 ±      0.262    B/op
StreamTypeBenchmark.jsonMaskerStreams                                        N/A         N/A         1kb          N/A                     N/A                   N/A         FileStream     ByteArrayStream  thrpt    4     89243.219 ±   1876.702   ops/s
StreamTypeBenchmark.jsonMaskerStreams:gc.alloc.rate.norm                     N/A         N/A         1kb          N/A                     N/A                   N/A         FileStream     ByteArrayStream  thrpt    4     12312.024 ±      0.020    B/op
StreamTypeBenchmark.jsonMaskerStreams                                        N/A         N/A         1kb          N/A                     N/A                   N/A         FileStream          FileStream  thrpt    4      5321.151 ±    230.672   ops/s
StreamTypeBenchmark.jsonMaskerStreams:gc.alloc.rate.norm                     N/A         N/A         1kb          N/A                     N/A                   N/A         FileStream          FileStream  thrpt    4      9384.397 ±      0.307    B/op
ValueMaskerBenchmark.maskWithRawValueFunction                            unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    551976.545 ±  10730.173   ops/s
ValueMaskerBenchmark.maskWithRawValueFunction:gc.alloc.rate.norm         unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      1632.004 ±      0.001    B/op
ValueMaskerBenchmark.maskWithStatic                                      unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    623431.935 ±   4636.669   ops/s
ValueMaskerBenchmark.maskWithStatic:gc.alloc.rate.norm                   unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      1272.003 ±      0.001    B/op
ValueMaskerBenchmark.maskWithTextValueFunction                           unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4    501326.450 ±   5601.246   ops/s
ValueMaskerBenchmark.maskWithTextValueFunction:gc.alloc.rate.norm        unicode         N/A         1kb          N/A                     0.1                   N/A                N/A                 N/A  thrpt    4      1920.004 ±      0.001    B/op

github-actions[bot] avatar Nov 21 '25 20:11 github-actions[bot]