-
Notifications
You must be signed in to change notification settings - Fork 277
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
Check target super-class implements FieldBackedContextAccessor
before delegating to it
#6950
Merged
Conversation
This file contains 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
mcculls
added
comp: core
Tracer core
tag: performance
Performance related changes
labels
Apr 26, 2024
mcculls
force-pushed
the
mcculls/superstore-check-assignable
branch
from
April 26, 2024 11:19
e0ed9a8
to
cb2f8b3
Compare
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 48 metrics, 15 unstable metrics. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.34.0-SNAPSHOT~25357f3dd9, baseline=1.34.0-SNAPSHOT~2a8627d103
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.073 s) : 0, 1072688
Total [baseline] (8.535 s) : 0, 8534938
Agent [candidate] (1.076 s) : 0, 1076496
Total [candidate] (8.545 s) : 0, 8545230
section iast
Agent [baseline] (1.211 s) : 0, 1211174
Total [baseline] (9.035 s) : 0, 9035453
Agent [candidate] (1.2 s) : 0, 1199957
Total [candidate] (8.999 s) : 0, 8999025
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.202 s) : 0, 1201742
Total [baseline] (9.041 s) : 0, 9041034
Agent [candidate] (1.201 s) : 0, 1200675
Total [candidate] (8.945 s) : 0, 8944616
section iast_TELEMETRY_OFF
Agent [baseline] (1.207 s) : 0, 1207332
Total [baseline] (9.041 s) : 0, 9040513
Agent [candidate] (1.197 s) : 0, 1197227
Total [candidate] (9.002 s) : 0, 9002276
gantt
title insecure-bank - break down per module: candidate=1.34.0-SNAPSHOT~25357f3dd9, baseline=1.34.0-SNAPSHOT~2a8627d103
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (672.07 ms) : 0, 672070
BytebuddyAgent [candidate] (674.46 ms) : 0, 674460
GlobalTracer [baseline] (308.657 ms) : 0, 308657
GlobalTracer [candidate] (309.96 ms) : 0, 309960
AppSec [baseline] (49.478 ms) : 0, 49478
AppSec [candidate] (49.453 ms) : 0, 49453
Remote Config [baseline] (656.427 µs) : 0, 656
Remote Config [candidate] (657.928 µs) : 0, 658
Telemetry [baseline] (7.532 ms) : 0, 7532
Telemetry [candidate] (7.63 ms) : 0, 7630
section iast
BytebuddyAgent [baseline] (801.79 ms) : 0, 801790
BytebuddyAgent [candidate] (794.413 ms) : 0, 794413
GlobalTracer [baseline] (291.806 ms) : 0, 291806
GlobalTracer [candidate] (288.425 ms) : 0, 288425
AppSec [baseline] (50.854 ms) : 0, 50854
AppSec [candidate] (50.451 ms) : 0, 50451
IAST [baseline] (24.275 ms) : 0, 24275
IAST [candidate] (25.125 ms) : 0, 25125
Remote Config [baseline] (579.048 µs) : 0, 579
Remote Config [candidate] (595.111 µs) : 0, 595
Telemetry [baseline] (7.327 ms) : 0, 7327
Telemetry [candidate] (6.604 ms) : 0, 6604
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (794.644 ms) : 0, 794644
BytebuddyAgent [candidate] (794.972 ms) : 0, 794972
GlobalTracer [baseline] (289.484 ms) : 0, 289484
GlobalTracer [candidate] (288.324 ms) : 0, 288324
AppSec [baseline] (51.666 ms) : 0, 51666
AppSec [candidate] (52.902 ms) : 0, 52902
IAST [baseline] (24.156 ms) : 0, 24156
IAST [candidate] (22.754 ms) : 0, 22754
Remote Config [baseline] (632.131 µs) : 0, 632
Remote Config [candidate] (574.896 µs) : 0, 575
Telemetry [baseline] (6.61 ms) : 0, 6610
Telemetry [candidate] (6.723 ms) : 0, 6723
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (799.491 ms) : 0, 799491
BytebuddyAgent [candidate] (792.005 ms) : 0, 792005
GlobalTracer [baseline] (289.716 ms) : 0, 289716
GlobalTracer [candidate] (288.434 ms) : 0, 288434
AppSec [baseline] (48.842 ms) : 0, 48842
AppSec [candidate] (49.066 ms) : 0, 49066
IAST [baseline] (26.446 ms) : 0, 26446
IAST [candidate] (25.397 ms) : 0, 25397
Remote Config [baseline] (591.44 µs) : 0, 591
Remote Config [candidate] (588.448 µs) : 0, 588
Telemetry [baseline] (7.416 ms) : 0, 7416
Telemetry [candidate] (7.371 ms) : 0, 7371
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.34.0-SNAPSHOT~25357f3dd9, baseline=1.34.0-SNAPSHOT~2a8627d103
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.078 s) : 0, 1077992
Total [baseline] (10.437 s) : 0, 10436761
Agent [candidate] (1.083 s) : 0, 1083298
Total [candidate] (10.423 s) : 0, 10422603
section appsec
Agent [baseline] (1.192 s) : 0, 1191978
Total [baseline] (10.466 s) : 0, 10465786
Agent [candidate] (1.194 s) : 0, 1194446
Total [candidate] (10.493 s) : 0, 10493280
section iast
Agent [baseline] (1.208 s) : 0, 1208164
Total [baseline] (10.685 s) : 0, 10685458
Agent [candidate] (1.202 s) : 0, 1202193
Total [candidate] (10.853 s) : 0, 10853366
section profiling
Agent [baseline] (1.276 s) : 0, 1275840
Total [baseline] (10.622 s) : 0, 10621549
Agent [candidate] (1.268 s) : 0, 1267831
Total [candidate] (10.558 s) : 0, 10557509
gantt
title petclinic - break down per module: candidate=1.34.0-SNAPSHOT~25357f3dd9, baseline=1.34.0-SNAPSHOT~2a8627d103
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (674.218 ms) : 0, 674218
BytebuddyAgent [candidate] (678.839 ms) : 0, 678839
GlobalTracer [baseline] (311.403 ms) : 0, 311403
GlobalTracer [candidate] (311.79 ms) : 0, 311790
AppSec [baseline] (49.784 ms) : 0, 49784
AppSec [candidate] (49.785 ms) : 0, 49785
Remote Config [baseline] (663.364 µs) : 0, 663
Remote Config [candidate] (665.517 µs) : 0, 666
Telemetry [baseline] (7.62 ms) : 0, 7620
Telemetry [candidate] (7.624 ms) : 0, 7624
section appsec
BytebuddyAgent [baseline] (697.603 ms) : 0, 697603
BytebuddyAgent [candidate] (700.329 ms) : 0, 700329
GlobalTracer [baseline] (292.326 ms) : 0, 292326
GlobalTracer [candidate] (292.307 ms) : 0, 292307
AppSec [baseline] (149.339 ms) : 0, 149339
AppSec [candidate] (148.799 ms) : 0, 148799
Remote Config [baseline] (625.87 µs) : 0, 626
Remote Config [candidate] (617.464 µs) : 0, 617
Telemetry [baseline] (7.919 ms) : 0, 7919
Telemetry [candidate] (8.144 ms) : 0, 8144
IAST [baseline] (19.199 ms) : 0, 19199
IAST [candidate] (19.238 ms) : 0, 19238
section iast
BytebuddyAgent [baseline] (800.493 ms) : 0, 800493
BytebuddyAgent [candidate] (795.719 ms) : 0, 795719
GlobalTracer [baseline] (289.635 ms) : 0, 289635
GlobalTracer [candidate] (288.751 ms) : 0, 288751
AppSec [baseline] (50.026 ms) : 0, 50026
AppSec [candidate] (49.323 ms) : 0, 49323
Remote Config [baseline] (1.294 ms) : 0, 1294
Remote Config [candidate] (583.378 µs) : 0, 583
Telemetry [baseline] (7.519 ms) : 0, 7519
Telemetry [candidate] (8.26 ms) : 0, 8260
IAST [baseline] (24.581 ms) : 0, 24581
IAST [candidate] (25.018 ms) : 0, 25018
section profiling
BytebuddyAgent [baseline] (682.233 ms) : 0, 682233
BytebuddyAgent [candidate] (677.639 ms) : 0, 677639
GlobalTracer [baseline] (382.189 ms) : 0, 382189
GlobalTracer [candidate] (380.279 ms) : 0, 380279
AppSec [baseline] (50.59 ms) : 0, 50590
AppSec [candidate] (49.988 ms) : 0, 49988
Remote Config [baseline] (712.633 µs) : 0, 713
Remote Config [candidate] (703.852 µs) : 0, 704
Telemetry [baseline] (7.522 ms) : 0, 7522
Telemetry [candidate] (7.459 ms) : 0, 7459
ProfilingAgent [baseline] (95.768 ms) : 0, 95768
ProfilingAgent [candidate] (95.325 ms) : 0, 95325
Profiling [baseline] (95.793 ms) : 0, 95793
Profiling [candidate] (95.349 ms) : 0, 95349
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 16 unstable metrics. Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.34.0-SNAPSHOT~25357f3dd9, baseline=1.34.0-SNAPSHOT~2a8627d103
dateFormat X
axisFormat %s
section baseline
no_agent (1.341 ms) : 1320, 1361
. : milestone, 1341,
appsec (1.728 ms) : 1704, 1752
. : milestone, 1728,
appsec_no_iast (1.716 ms) : 1692, 1740
. : milestone, 1716,
iast (1.473 ms) : 1451, 1496
. : milestone, 1473,
profiling (1.521 ms) : 1495, 1547
. : milestone, 1521,
tracing (1.477 ms) : 1453, 1500
. : milestone, 1477,
section candidate
no_agent (1.352 ms) : 1333, 1371
. : milestone, 1352,
appsec (1.703 ms) : 1679, 1728
. : milestone, 1703,
appsec_no_iast (1.736 ms) : 1712, 1760
. : milestone, 1736,
iast (1.489 ms) : 1466, 1512
. : milestone, 1489,
profiling (1.507 ms) : 1483, 1531
. : milestone, 1507,
tracing (1.49 ms) : 1465, 1514
. : milestone, 1490,
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.34.0-SNAPSHOT~25357f3dd9, baseline=1.34.0-SNAPSHOT~2a8627d103
dateFormat X
axisFormat %s
section baseline
no_agent (363.686 µs) : 344, 383
. : milestone, 364,
iast (472.791 µs) : 452, 494
. : milestone, 473,
iast_FULL (538.48 µs) : 517, 560
. : milestone, 538,
iast_GLOBAL (490.316 µs) : 470, 511
. : milestone, 490,
iast_HARDCODED_SECRET_DISABLED (473.282 µs) : 451, 495
. : milestone, 473,
iast_INACTIVE (443.8 µs) : 423, 464
. : milestone, 444,
iast_TELEMETRY_OFF (468.526 µs) : 447, 490
. : milestone, 469,
tracing (445.01 µs) : 424, 466
. : milestone, 445,
section candidate
no_agent (365.688 µs) : 346, 385
. : milestone, 366,
iast (472.9 µs) : 452, 494
. : milestone, 473,
iast_FULL (542.45 µs) : 522, 563
. : milestone, 542,
iast_GLOBAL (492.702 µs) : 472, 514
. : milestone, 493,
iast_HARDCODED_SECRET_DISABLED (472.384 µs) : 451, 494
. : milestone, 472,
iast_INACTIVE (437.228 µs) : 417, 457
. : milestone, 437,
iast_TELEMETRY_OFF (470.632 µs) : 449, 492
. : milestone, 471,
tracing (440.243 µs) : 420, 461
. : milestone, 440,
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 tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.34.0-SNAPSHOT~25357f3dd9, baseline=1.34.0-SNAPSHOT~2a8627d103
dateFormat X
axisFormat %s
section baseline
no_agent (1.46 ms) : 1449, 1472
. : milestone, 1460,
appsec (2.193 ms) : 2159, 2226
. : milestone, 2193,
iast (1.879 ms) : 1843, 1914
. : milestone, 1879,
iast_GLOBAL (1.906 ms) : 1872, 1941
. : milestone, 1906,
profiling (1.832 ms) : 1799, 1866
. : milestone, 1832,
tracing (1.824 ms) : 1792, 1855
. : milestone, 1824,
section candidate
no_agent (1.462 ms) : 1450, 1473
. : milestone, 1462,
appsec (2.186 ms) : 2153, 2220
. : milestone, 2186,
iast (1.872 ms) : 1837, 1907
. : milestone, 1872,
iast_GLOBAL (1.906 ms) : 1871, 1941
. : milestone, 1906,
profiling (1.837 ms) : 1805, 1870
. : milestone, 1837,
tracing (1.826 ms) : 1794, 1858
. : milestone, 1826,
Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.34.0-SNAPSHOT~25357f3dd9, baseline=1.34.0-SNAPSHOT~2a8627d103
dateFormat X
axisFormat %s
section baseline
no_agent (15.033 s) : 15033000, 15033000
. : milestone, 15033000,
appsec (15.058 s) : 15058000, 15058000
. : milestone, 15058000,
iast (18.468 s) : 18468000, 18468000
. : milestone, 18468000,
iast_GLOBAL (18.018 s) : 18018000, 18018000
. : milestone, 18018000,
profiling (15.143 s) : 15143000, 15143000
. : milestone, 15143000,
tracing (14.919 s) : 14919000, 14919000
. : milestone, 14919000,
section candidate
no_agent (14.844 s) : 14844000, 14844000
. : milestone, 14844000,
appsec (14.768 s) : 14768000, 14768000
. : milestone, 14768000,
iast (19.242 s) : 19242000, 19242000
. : milestone, 19242000,
iast_GLOBAL (17.757 s) : 17757000, 17757000
. : milestone, 17757000,
profiling (15.115 s) : 15115000, 15115000
. : milestone, 15115000,
tracing (14.846 s) : 14846000, 14846000
. : milestone, 14846000,
|
mcculls
force-pushed
the
mcculls/superstore-check-assignable
branch
7 times, most recently
from
April 27, 2024 13:00
25357f3
to
160360d
Compare
…re delegating to it This avoids the need to create (and catch) `NoSuchMethodError`s when we fail to inject the super-class. For example starting the profiler before byte-buddy can trigger loading of various JDK concurrent classes that we would usually inject context into.
mcculls
force-pushed
the
mcculls/superstore-check-assignable
branch
from
April 27, 2024 13:02
160360d
to
06d5777
Compare
dougqh
approved these changes
Apr 29, 2024
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.
Motivation
This avoids the need to create (and catch)
NoSuchMethodError
s when we fail to inject the super-class.For example starting the profiler before byte-buddy can trigger loading of various JDK concurrent classes that we would usually inject context into. This is more noticeable on Java 22+ where more of these JDK classes are sub-classed.