-
Notifications
You must be signed in to change notification settings - Fork 304
Ensure net.bytebuddy.raw is set to true when ConfigTransformSpockExtension is installed #8728
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…nsion is installed This matches the same setting used by AgentInstaller which avoids spurious test failures in agent-tooling, specifically TypeFactoryForkedTest. This requires raw-types enabled to match the behaviour when installing the tracer with -javaagent. Without this byte-buddy will use dufferent code paths involving generic checks, which can lead to test failures using recent versions of byte-buddy (specifically going between full and outline types, where outlines are always raw-types by their nature.) These failures would not happen when using -javaagent because AgentInstaller forces the use of the raw-types setting. ConfigTransformSpockExtension should therefore do the same. Note we can't set this property in TypeFactoryForkedTest because by then it is too late, byte-buddy is already confgured by ConfigTransformSpockExtension and the raw-types value cannot be changed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice!!!
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 55 metrics, 16 unstable metrics. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.49.0-SNAPSHOT~77cb569538, baseline=1.49.0-SNAPSHOT~44de9a3b51
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.063 s) : 0, 1062689
Total [baseline] (8.734 s) : 0, 8733767
Agent [candidate] (1.062 s) : 0, 1061968
Total [candidate] (8.71 s) : 0, 8709947
section iast
Agent [baseline] (1.19 s) : 0, 1190182
Total [baseline] (9.306 s) : 0, 9305916
Agent [candidate] (1.188 s) : 0, 1187889
Total [candidate] (9.29 s) : 0, 9289599
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.195 s) : 0, 1195437
Total [baseline] (9.329 s) : 0, 9329405
Agent [candidate] (1.189 s) : 0, 1189390
Total [candidate] (9.262 s) : 0, 9261624
section iast_TELEMETRY_OFF
Agent [baseline] (1.203 s) : 0, 1203464
Total [baseline] (9.309 s) : 0, 9308685
Agent [candidate] (1.187 s) : 0, 1186804
Total [candidate] (9.286 s) : 0, 9286070
gantt
title insecure-bank - break down per module: candidate=1.49.0-SNAPSHOT~77cb569538, baseline=1.49.0-SNAPSHOT~44de9a3b51
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (724.912 ms) : 0, 724912
BytebuddyAgent [candidate] (723.961 ms) : 0, 723961
GlobalTracer [baseline] (240.937 ms) : 0, 240937
GlobalTracer [candidate] (239.792 ms) : 0, 239792
AppSec [baseline] (56.446 ms) : 0, 56446
AppSec [candidate] (55.784 ms) : 0, 55784
Debugger [baseline] (6.981 ms) : 0, 6981
Debugger [candidate] (8.461 ms) : 0, 8461
Remote Config [baseline] (700.317 µs) : 0, 700
Remote Config [candidate] (691.321 µs) : 0, 691
Telemetry [baseline] (9.121 ms) : 0, 9121
Telemetry [candidate] (9.763 ms) : 0, 9763
section iast
BytebuddyAgent [baseline] (842.392 ms) : 0, 842392
BytebuddyAgent [candidate] (842.17 ms) : 0, 842170
GlobalTracer [baseline] (230.899 ms) : 0, 230899
GlobalTracer [candidate] (229.964 ms) : 0, 229964
IAST [baseline] (24.496 ms) : 0, 24496
IAST [candidate] (26.608 ms) : 0, 26608
AppSec [baseline] (53.875 ms) : 0, 53875
AppSec [candidate] (50.153 ms) : 0, 50153
Debugger [baseline] (5.908 ms) : 0, 5908
Debugger [candidate] (5.818 ms) : 0, 5818
Remote Config [baseline] (597.902 µs) : 0, 598
Remote Config [candidate] (583.235 µs) : 0, 583
Telemetry [baseline] (7.891 ms) : 0, 7891
Telemetry [candidate] (7.734 ms) : 0, 7734
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (845.781 ms) : 0, 845781
BytebuddyAgent [candidate] (841.866 ms) : 0, 841866
GlobalTracer [baseline] (231.537 ms) : 0, 231537
GlobalTracer [candidate] (230.399 ms) : 0, 230399
IAST [baseline] (23.33 ms) : 0, 23330
IAST [candidate] (23.877 ms) : 0, 23877
AppSec [baseline] (53.552 ms) : 0, 53552
AppSec [candidate] (53.114 ms) : 0, 53114
Debugger [baseline] (6.042 ms) : 0, 6042
Debugger [candidate] (5.946 ms) : 0, 5946
Remote Config [baseline] (604.607 µs) : 0, 605
Remote Config [candidate] (594.93 µs) : 0, 595
Telemetry [baseline] (8.131 ms) : 0, 8131
Telemetry [candidate] (7.948 ms) : 0, 7948
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (853.222 ms) : 0, 853222
BytebuddyAgent [candidate] (839.87 ms) : 0, 839870
GlobalTracer [baseline] (232.566 ms) : 0, 232566
GlobalTracer [candidate] (230.356 ms) : 0, 230356
IAST [baseline] (22.806 ms) : 0, 22806
IAST [candidate] (22.368 ms) : 0, 22368
AppSec [baseline] (56.518 ms) : 0, 56518
AppSec [candidate] (56.381 ms) : 0, 56381
Debugger [baseline] (6.014 ms) : 0, 6014
Debugger [candidate] (5.982 ms) : 0, 5982
Remote Config [baseline] (627.094 µs) : 0, 627
Remote Config [candidate] (602.699 µs) : 0, 603
Telemetry [baseline] (7.963 ms) : 0, 7963
Telemetry [candidate] (7.875 ms) : 0, 7875
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.49.0-SNAPSHOT~77cb569538, baseline=1.49.0-SNAPSHOT~44de9a3b51
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.057 s) : 0, 1057482
Total [baseline] (10.563 s) : 0, 10562525
Agent [candidate] (1.08 s) : 0, 1080254
Total [candidate] (10.599 s) : 0, 10599292
section appsec
Agent [baseline] (1.202 s) : 0, 1202438
Total [baseline] (10.789 s) : 0, 10789244
Agent [candidate] (1.204 s) : 0, 1204181
Total [candidate] (10.749 s) : 0, 10748648
section iast
Agent [baseline] (1.186 s) : 0, 1186008
Total [baseline] (11.003 s) : 0, 11003139
Agent [candidate] (1.188 s) : 0, 1188141
Total [candidate] (10.903 s) : 0, 10903122
section profiling
Agent [baseline] (1.315 s) : 0, 1314709
Total [baseline] (10.824 s) : 0, 10824232
Agent [candidate] (1.319 s) : 0, 1318913
Total [candidate] (10.764 s) : 0, 10763648
gantt
title petclinic - break down per module: candidate=1.49.0-SNAPSHOT~77cb569538, baseline=1.49.0-SNAPSHOT~44de9a3b51
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (723.51 ms) : 0, 723510
BytebuddyAgent [candidate] (736.918 ms) : 0, 736918
GlobalTracer [baseline] (239.802 ms) : 0, 239802
GlobalTracer [candidate] (243.902 ms) : 0, 243902
AppSec [baseline] (54.653 ms) : 0, 54653
AppSec [candidate] (56.38 ms) : 0, 56380
Debugger [baseline] (6.94 ms) : 0, 6940
Debugger [candidate] (8.428 ms) : 0, 8428
Remote Config [baseline] (696.297 µs) : 0, 696
Remote Config [candidate] (717.425 µs) : 0, 717
Telemetry [baseline] (8.418 ms) : 0, 8418
Telemetry [candidate] (9.951 ms) : 0, 9951
section appsec
BytebuddyAgent [baseline] (742.003 ms) : 0, 742003
BytebuddyAgent [candidate] (742.424 ms) : 0, 742424
GlobalTracer [baseline] (236.923 ms) : 0, 236923
GlobalTracer [candidate] (237.418 ms) : 0, 237418
AppSec [baseline] (174.548 ms) : 0, 174548
AppSec [candidate] (175.499 ms) : 0, 175499
Debugger [baseline] (6.336 ms) : 0, 6336
Debugger [candidate] (5.937 ms) : 0, 5937
Remote Config [baseline] (636.096 µs) : 0, 636
Remote Config [candidate] (627.926 µs) : 0, 628
Telemetry [baseline] (7.488 ms) : 0, 7488
Telemetry [candidate] (7.786 ms) : 0, 7786
IAST [baseline] (21.775 ms) : 0, 21775
IAST [candidate] (21.779 ms) : 0, 21779
section iast
BytebuddyAgent [baseline] (839.809 ms) : 0, 839809
BytebuddyAgent [candidate] (841.472 ms) : 0, 841472
GlobalTracer [baseline] (230.116 ms) : 0, 230116
GlobalTracer [candidate] (229.886 ms) : 0, 229886
AppSec [baseline] (50.842 ms) : 0, 50842
AppSec [candidate] (50.522 ms) : 0, 50522
Debugger [baseline] (5.838 ms) : 0, 5838
Debugger [candidate] (5.907 ms) : 0, 5907
Remote Config [baseline] (589.317 µs) : 0, 589
Remote Config [candidate] (586.511 µs) : 0, 587
Telemetry [baseline] (7.898 ms) : 0, 7898
Telemetry [candidate] (7.956 ms) : 0, 7956
IAST [baseline] (25.205 ms) : 0, 25205
IAST [candidate] (24.494 ms) : 0, 24494
section profiling
BytebuddyAgent [baseline] (714.992 ms) : 0, 714992
BytebuddyAgent [candidate] (718.059 ms) : 0, 718059
GlobalTracer [baseline] (376.451 ms) : 0, 376451
GlobalTracer [candidate] (377.984 ms) : 0, 377984
AppSec [baseline] (54.33 ms) : 0, 54330
AppSec [candidate] (53.316 ms) : 0, 53316
Debugger [baseline] (6.161 ms) : 0, 6161
Debugger [candidate] (6.202 ms) : 0, 6202
Remote Config [baseline] (665.463 µs) : 0, 665
Remote Config [candidate] (659.046 µs) : 0, 659
Telemetry [baseline] (8.082 ms) : 0, 8082
Telemetry [candidate] (8.101 ms) : 0, 8101
ProfilingAgent [baseline] (103.531 ms) : 0, 103531
ProfilingAgent [candidate] (103.982 ms) : 0, 103982
Profiling [baseline] (103.557 ms) : 0, 103557
Profiling [candidate] (104.008 ms) : 0, 104008
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 18 unstable metrics. Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.49.0-SNAPSHOT~77cb569538, baseline=1.49.0-SNAPSHOT~44de9a3b51
dateFormat X
axisFormat %s
section baseline
no_agent (1.364 ms) : 1344, 1383
. : milestone, 1364,
appsec (1.733 ms) : 1709, 1757
. : milestone, 1733,
appsec_no_iast (1.732 ms) : 1708, 1756
. : milestone, 1732,
code_origins (1.679 ms) : 1653, 1705
. : milestone, 1679,
iast (1.518 ms) : 1494, 1543
. : milestone, 1518,
profiling (1.507 ms) : 1483, 1530
. : milestone, 1507,
tracing (1.49 ms) : 1466, 1514
. : milestone, 1490,
section candidate
no_agent (1.355 ms) : 1336, 1375
. : milestone, 1355,
appsec (1.733 ms) : 1710, 1757
. : milestone, 1733,
appsec_no_iast (1.72 ms) : 1697, 1744
. : milestone, 1720,
code_origins (1.689 ms) : 1661, 1716
. : milestone, 1689,
iast (1.523 ms) : 1499, 1546
. : milestone, 1523,
profiling (1.497 ms) : 1473, 1522
. : milestone, 1497,
tracing (1.503 ms) : 1478, 1528
. : milestone, 1503,
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.49.0-SNAPSHOT~77cb569538, baseline=1.49.0-SNAPSHOT~44de9a3b51
dateFormat X
axisFormat %s
section baseline
no_agent (381.025 µs) : 360, 402
. : milestone, 381,
iast (529.797 µs) : 507, 553
. : milestone, 530,
iast_FULL (730.806 µs) : 708, 754
. : milestone, 731,
iast_GLOBAL (571.365 µs) : 549, 594
. : milestone, 571,
iast_HARDCODED_SECRET_DISABLED (529.383 µs) : 508, 551
. : milestone, 529,
iast_INACTIVE (467.352 µs) : 445, 490
. : milestone, 467,
iast_TELEMETRY_OFF (513.23 µs) : 490, 536
. : milestone, 513,
tracing (457.074 µs) : 436, 479
. : milestone, 457,
section candidate
no_agent (385.578 µs) : 366, 405
. : milestone, 386,
iast (515.951 µs) : 493, 539
. : milestone, 516,
iast_FULL (732.141 µs) : 709, 755
. : milestone, 732,
iast_GLOBAL (577.26 µs) : 552, 602
. : milestone, 577,
iast_HARDCODED_SECRET_DISABLED (518.995 µs) : 497, 541
. : milestone, 519,
iast_INACTIVE (473.483 µs) : 451, 496
. : milestone, 473,
iast_TELEMETRY_OFF (517.485 µs) : 494, 541
. : milestone, 517,
tracing (461.809 µs) : 440, 483
. : milestone, 462,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 0 unstable metrics. Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.49.0-SNAPSHOT~77cb569538, baseline=1.49.0-SNAPSHOT~44de9a3b51
dateFormat X
axisFormat %s
section baseline
no_agent (14.967 s) : 14967000, 14967000
. : milestone, 14967000,
appsec (15.017 s) : 15017000, 15017000
. : milestone, 15017000,
iast (18.788 s) : 18788000, 18788000
. : milestone, 18788000,
iast_GLOBAL (17.973 s) : 17973000, 17973000
. : milestone, 17973000,
profiling (15.049 s) : 15049000, 15049000
. : milestone, 15049000,
tracing (14.836 s) : 14836000, 14836000
. : milestone, 14836000,
section candidate
no_agent (14.922 s) : 14922000, 14922000
. : milestone, 14922000,
appsec (14.809 s) : 14809000, 14809000
. : milestone, 14809000,
iast (18.442 s) : 18442000, 18442000
. : milestone, 18442000,
iast_GLOBAL (17.819 s) : 17819000, 17819000
. : milestone, 17819000,
profiling (14.976 s) : 14976000, 14976000
. : milestone, 14976000,
tracing (14.922 s) : 14922000, 14922000
. : milestone, 14922000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.49.0-SNAPSHOT~77cb569538, baseline=1.49.0-SNAPSHOT~44de9a3b51
dateFormat X
axisFormat %s
section baseline
no_agent (1.474 ms) : 1462, 1485
. : milestone, 1474,
appsec (2.363 ms) : 2317, 2410
. : milestone, 2363,
iast (2.151 ms) : 2092, 2210
. : milestone, 2151,
iast_GLOBAL (2.188 ms) : 2129, 2248
. : milestone, 2188,
profiling (2.009 ms) : 1961, 2057
. : milestone, 2009,
tracing (1.974 ms) : 1928, 2019
. : milestone, 1974,
section candidate
no_agent (1.47 ms) : 1458, 1481
. : milestone, 1470,
appsec (2.367 ms) : 2320, 2413
. : milestone, 2367,
iast (2.149 ms) : 2090, 2209
. : milestone, 2149,
iast_GLOBAL (2.193 ms) : 2133, 2253
. : milestone, 2193,
profiling (2.022 ms) : 1973, 2071
. : milestone, 2022,
tracing (1.979 ms) : 1933, 2025
. : milestone, 1979,
|
…nsion is installed (#8728) This matches the same setting used by AgentInstaller which avoids spurious test failures in agent-tooling, specifically TypeFactoryForkedTest. This requires raw-types enabled to match the behaviour when installing the tracer with -javaagent. Without this byte-buddy will use dufferent code paths involving generic checks, which can lead to test failures using recent versions of byte-buddy (specifically going between full and outline types, where outlines are always raw-types by their nature.) These failures would not happen when using -javaagent because AgentInstaller forces the use of the raw-types setting. ConfigTransformSpockExtension should therefore do the same. Note we can't set this property in TypeFactoryForkedTest because by then it is too late, byte-buddy is already confgured by ConfigTransformSpockExtension and the raw-types value cannot be changed.
…nsion is installed (#8728) This matches the same setting used by AgentInstaller which avoids spurious test failures in agent-tooling, specifically TypeFactoryForkedTest. This requires raw-types enabled to match the behaviour when installing the tracer with -javaagent. Without this byte-buddy will use dufferent code paths involving generic checks, which can lead to test failures using recent versions of byte-buddy (specifically going between full and outline types, where outlines are always raw-types by their nature.) These failures would not happen when using -javaagent because AgentInstaller forces the use of the raw-types setting. ConfigTransformSpockExtension should therefore do the same. Note we can't set this property in TypeFactoryForkedTest because by then it is too late, byte-buddy is already confgured by ConfigTransformSpockExtension and the raw-types value cannot be changed.
What Does This Do
This matches the same setting used by AgentInstaller which avoids spurious test failures in agent-tooling, specifically TypeFactoryForkedTest. This requires raw-types enabled to match the behaviour when installing the tracer with -javaagent. Without this byte-buddy will use dufferent code paths involving generic checks, which can lead to test failures using recent versions of byte-buddy (specifically going between full and outline types, where outlines are always raw-types by their nature.)
Motivation
These failures would not happen when using -javaagent because AgentInstaller forces the use of the raw-types setting. ConfigTransformSpockExtension should therefore do the same.
Additional Notes
Note we can't set this property in TypeFactoryForkedTest because by then it is too late, byte-buddy is already confgured by ConfigTransformSpockExtension and the raw-types value cannot be changed.
Contributor Checklist
type:
and (comp:
orinst:
) labels in addition to any usefull labelsclose
,fix
or any linking keywords when referencing an issue.Use
solves
instead, and assign the PR milestone to the issueJira ticket: [PROJ-IDENT]