-
Notifications
You must be signed in to change notification settings - Fork 324
Prepare for JEP 500 #9557
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
base: master
Are you sure you want to change the base?
Prepare for JEP 500 #9557
Conversation
This comment has been minimized.
This comment has been minimized.
d2219bc to
5c24855
Compare
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 64 metrics, 7 unstable metrics. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.54.0-SNAPSHOT~5e40aba082, baseline=1.59.0-SNAPSHOT~78be799166
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.054 s) : 0, 1053871
Total [baseline] (8.71 s) : 0, 8710170
Agent [candidate] (1.06 s) : 0, 1059829
Total [candidate] (8.74 s) : 0, 8740077
section iast
Agent [baseline] (1.226 s) : 0, 1225724
Total [baseline] (9.404 s) : 0, 9404385
Agent [candidate] (1.223 s) : 0, 1222943
Total [candidate] (9.327 s) : 0, 9326723
gantt
title insecure-bank - break down per module: candidate=1.54.0-SNAPSHOT~5e40aba082, baseline=1.59.0-SNAPSHOT~78be799166
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.175 ms) : 0, 1175
crashtracking [candidate] (1.178 ms) : 0, 1178
BytebuddyAgent [baseline] (620.899 ms) : 0, 620899
BytebuddyAgent [candidate] (623.207 ms) : 0, 623207
AgentMeter [baseline] (28.662 ms) : 0, 28662
AgentMeter [candidate] (29.024 ms) : 0, 29024
GlobalTracer [baseline] (256.673 ms) : 0, 256673
GlobalTracer [candidate] (258.419 ms) : 0, 258419
AppSec [baseline] (32.706 ms) : 0, 32706
AppSec [candidate] (33.017 ms) : 0, 33017
Debugger [baseline] (60.878 ms) : 0, 60878
Debugger [candidate] (62.889 ms) : 0, 62889
Remote Config [baseline] (619.887 µs) : 0, 620
Remote Config [candidate] (620.928 µs) : 0, 621
Telemetry [baseline] (9.824 ms) : 0, 9824
Telemetry [candidate] (9.852 ms) : 0, 9852
Flare Poller [baseline] (6.94 ms) : 0, 6940
Flare Poller [candidate] (6.112 ms) : 0, 6112
section iast
crashtracking [baseline] (1.175 ms) : 0, 1175
crashtracking [candidate] (1.176 ms) : 0, 1176
BytebuddyAgent [baseline] (789.958 ms) : 0, 789958
BytebuddyAgent [candidate] (788.616 ms) : 0, 788616
AgentMeter [baseline] (11.164 ms) : 0, 11164
AgentMeter [candidate] (11.126 ms) : 0, 11126
GlobalTracer [baseline] (247.938 ms) : 0, 247938
GlobalTracer [candidate] (247.361 ms) : 0, 247361
IAST [baseline] (26.881 ms) : 0, 26881
IAST [candidate] (26.877 ms) : 0, 26877
AppSec [baseline] (33.423 ms) : 0, 33423
AppSec [candidate] (34.398 ms) : 0, 34398
Debugger [baseline] (67.079 ms) : 0, 67079
Debugger [candidate] (65.498 ms) : 0, 65498
Remote Config [baseline] (540.38 µs) : 0, 540
Remote Config [candidate] (550.531 µs) : 0, 551
Telemetry [baseline] (8.669 ms) : 0, 8669
Telemetry [candidate] (8.558 ms) : 0, 8558
Flare Poller [baseline] (3.493 ms) : 0, 3493
Flare Poller [candidate] (3.447 ms) : 0, 3447
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.54.0-SNAPSHOT~5e40aba082, baseline=1.59.0-SNAPSHOT~78be799166
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.065 s) : 0, 1065339
Total [baseline] (11.013 s) : 0, 11012700
Agent [candidate] (1.056 s) : 0, 1055573
Total [candidate] (10.943 s) : 0, 10943244
section appsec
Agent [baseline] (1.232 s) : 0, 1231954
Total [baseline] (11.065 s) : 0, 11064719
Agent [candidate] (1.244 s) : 0, 1244370
Total [candidate] (11.067 s) : 0, 11066725
section iast
Agent [baseline] (1.235 s) : 0, 1235375
Total [baseline] (11.208 s) : 0, 11208369
Agent [candidate] (1.249 s) : 0, 1248638
Total [candidate] (11.142 s) : 0, 11141851
section profiling
Agent [baseline] (1.184 s) : 0, 1184073
Total [baseline] (10.929 s) : 0, 10928604
Agent [candidate] (1.183 s) : 0, 1183004
Total [candidate] (10.92 s) : 0, 10919565
gantt
title petclinic - break down per module: candidate=1.54.0-SNAPSHOT~5e40aba082, baseline=1.59.0-SNAPSHOT~78be799166
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.185 ms) : 0, 1185
crashtracking [candidate] (1.176 ms) : 0, 1176
BytebuddyAgent [baseline] (627.382 ms) : 0, 627382
BytebuddyAgent [candidate] (621.884 ms) : 0, 621884
AgentMeter [baseline] (29.034 ms) : 0, 29034
AgentMeter [candidate] (28.633 ms) : 0, 28633
GlobalTracer [baseline] (259.301 ms) : 0, 259301
GlobalTracer [candidate] (256.885 ms) : 0, 256885
AppSec [baseline] (33.396 ms) : 0, 33396
AppSec [candidate] (32.8 ms) : 0, 32800
Debugger [baseline] (62.855 ms) : 0, 62855
Debugger [candidate] (63.816 ms) : 0, 63816
Remote Config [baseline] (635.466 µs) : 0, 635
Remote Config [candidate] (616.793 µs) : 0, 617
Telemetry [baseline] (9.182 ms) : 0, 9182
Telemetry [candidate] (9.166 ms) : 0, 9166
Flare Poller [baseline] (6.797 ms) : 0, 6797
Flare Poller [candidate] (5.305 ms) : 0, 5305
section appsec
crashtracking [baseline] (1.185 ms) : 0, 1185
crashtracking [candidate] (1.192 ms) : 0, 1192
BytebuddyAgent [baseline] (651.774 ms) : 0, 651774
BytebuddyAgent [candidate] (659.915 ms) : 0, 659915
AgentMeter [baseline] (11.791 ms) : 0, 11791
AgentMeter [candidate] (11.97 ms) : 0, 11970
GlobalTracer [baseline] (257.528 ms) : 0, 257528
GlobalTracer [candidate] (259.779 ms) : 0, 259779
AppSec [baseline] (167.637 ms) : 0, 167637
AppSec [candidate] (168.573 ms) : 0, 168573
Debugger [baseline] (67.747 ms) : 0, 67747
Debugger [candidate] (67.914 ms) : 0, 67914
Remote Config [baseline] (680.335 µs) : 0, 680
Remote Config [candidate] (677.864 µs) : 0, 678
Telemetry [baseline] (9.333 ms) : 0, 9333
Telemetry [candidate] (9.373 ms) : 0, 9373
Flare Poller [baseline] (3.67 ms) : 0, 3670
Flare Poller [candidate] (3.713 ms) : 0, 3713
IAST [baseline] (25.284 ms) : 0, 25284
IAST [candidate] (25.808 ms) : 0, 25808
section iast
crashtracking [baseline] (1.187 ms) : 0, 1187
crashtracking [candidate] (1.212 ms) : 0, 1212
BytebuddyAgent [baseline] (796.736 ms) : 0, 796736
BytebuddyAgent [candidate] (807.949 ms) : 0, 807949
AgentMeter [baseline] (11.266 ms) : 0, 11266
AgentMeter [candidate] (11.713 ms) : 0, 11713
GlobalTracer [baseline] (249.351 ms) : 0, 249351
GlobalTracer [candidate] (251.162 ms) : 0, 251162
AppSec [baseline] (34.022 ms) : 0, 34022
AppSec [candidate] (34.139 ms) : 0, 34139
Debugger [baseline] (67.392 ms) : 0, 67392
Debugger [candidate] (66.729 ms) : 0, 66729
Remote Config [baseline] (561.323 µs) : 0, 561
Remote Config [candidate] (547.925 µs) : 0, 548
Telemetry [baseline] (8.655 ms) : 0, 8655
Telemetry [candidate] (8.533 ms) : 0, 8533
Flare Poller [baseline] (3.521 ms) : 0, 3521
Flare Poller [candidate] (3.457 ms) : 0, 3457
IAST [baseline] (27.127 ms) : 0, 27127
IAST [candidate] (27.358 ms) : 0, 27358
section profiling
ProfilingAgent [baseline] (99.211 ms) : 0, 99211
ProfilingAgent [candidate] (99.01 ms) : 0, 99010
crashtracking [baseline] (1.223 ms) : 0, 1223
crashtracking [candidate] (1.21 ms) : 0, 1210
BytebuddyAgent [baseline] (675.959 ms) : 0, 675959
BytebuddyAgent [candidate] (674.983 ms) : 0, 674983
AgentMeter [baseline] (8.628 ms) : 0, 8628
AgentMeter [candidate] (8.637 ms) : 0, 8637
GlobalTracer [baseline] (216.369 ms) : 0, 216369
GlobalTracer [candidate] (216.383 ms) : 0, 216383
AppSec [baseline] (32.319 ms) : 0, 32319
AppSec [candidate] (32.275 ms) : 0, 32275
Debugger [baseline] (67.515 ms) : 0, 67515
Debugger [candidate] (67.716 ms) : 0, 67716
Remote Config [baseline] (579.747 µs) : 0, 580
Remote Config [candidate] (590.966 µs) : 0, 591
Telemetry [baseline] (8.714 ms) : 0, 8714
Telemetry [candidate] (8.64 ms) : 0, 8640
Flare Poller [baseline] (3.744 ms) : 0, 3744
Flare Poller [candidate] (3.791 ms) : 0, 3791
Profiling [baseline] (99.776 ms) : 0, 99776
Profiling [candidate] (99.578 ms) : 0, 99578
LoadParameters
See matching parameters
SummaryFound 2 performance improvements and 0 performance regressions! Performance is the same for 19 metrics, 15 unstable metrics.
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.54.0-SNAPSHOT~5e40aba082, baseline=1.59.0-SNAPSHOT~78be799166
dateFormat X
axisFormat %s
section baseline
no_agent (18.976 ms) : 18782, 19170
. : milestone, 18976,
appsec (18.515 ms) : 18327, 18703
. : milestone, 18515,
code_origins (18.763 ms) : 18576, 18951
. : milestone, 18763,
iast (17.822 ms) : 17644, 17999
. : milestone, 17822,
profiling (18.324 ms) : 18143, 18506
. : milestone, 18324,
tracing (17.494 ms) : 17319, 17668
. : milestone, 17494,
section candidate
no_agent (18.037 ms) : 17850, 18223
. : milestone, 18037,
appsec (18.729 ms) : 18539, 18920
. : milestone, 18729,
code_origins (17.723 ms) : 17547, 17899
. : milestone, 17723,
iast (17.556 ms) : 17382, 17731
. : milestone, 17556,
profiling (18.504 ms) : 18321, 18688
. : milestone, 18504,
tracing (17.897 ms) : 17718, 18076
. : milestone, 17897,
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.54.0-SNAPSHOT~5e40aba082, baseline=1.59.0-SNAPSHOT~78be799166
dateFormat X
axisFormat %s
section baseline
no_agent (1.191 ms) : 1180, 1203
. : milestone, 1191,
iast (3.23 ms) : 3184, 3275
. : milestone, 3230,
iast_FULL (5.836 ms) : 5777, 5895
. : milestone, 5836,
iast_GLOBAL (3.599 ms) : 3548, 3650
. : milestone, 3599,
profiling (2.057 ms) : 2039, 2075
. : milestone, 2057,
tracing (1.805 ms) : 1790, 1819
. : milestone, 1805,
section candidate
no_agent (1.201 ms) : 1189, 1213
. : milestone, 1201,
iast (3.192 ms) : 3153, 3231
. : milestone, 3192,
iast_FULL (5.912 ms) : 5854, 5971
. : milestone, 5912,
iast_GLOBAL (3.687 ms) : 3636, 3738
. : milestone, 3687,
profiling (1.963 ms) : 1947, 1979
. : milestone, 1963,
tracing (1.797 ms) : 1783, 1811
. : milestone, 1797,
DacapoParameters
See matching parameters
SummaryFound 1 performance improvements and 0 performance regressions! Performance is the same for 10 metrics, 1 unstable metrics.
Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.54.0-SNAPSHOT~5e40aba082, baseline=1.59.0-SNAPSHOT~78be799166
dateFormat X
axisFormat %s
section baseline
no_agent (15.515 s) : 15515000, 15515000
. : milestone, 15515000,
appsec (14.799 s) : 14799000, 14799000
. : milestone, 14799000,
iast (18.422 s) : 18422000, 18422000
. : milestone, 18422000,
iast_GLOBAL (17.802 s) : 17802000, 17802000
. : milestone, 17802000,
profiling (14.983 s) : 14983000, 14983000
. : milestone, 14983000,
tracing (14.619 s) : 14619000, 14619000
. : milestone, 14619000,
section candidate
no_agent (15.688 s) : 15688000, 15688000
. : milestone, 15688000,
appsec (14.854 s) : 14854000, 14854000
. : milestone, 14854000,
iast (18.42 s) : 18420000, 18420000
. : milestone, 18420000,
iast_GLOBAL (17.608 s) : 17608000, 17608000
. : milestone, 17608000,
profiling (15.118 s) : 15118000, 15118000
. : milestone, 15118000,
tracing (14.709 s) : 14709000, 14709000
. : milestone, 14709000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.54.0-SNAPSHOT~5e40aba082, baseline=1.59.0-SNAPSHOT~78be799166
dateFormat X
axisFormat %s
section baseline
no_agent (1.471 ms) : 1459, 1482
. : milestone, 1471,
appsec (3.671 ms) : 3457, 3886
. : milestone, 3671,
iast (2.245 ms) : 2176, 2314
. : milestone, 2245,
iast_GLOBAL (2.288 ms) : 2218, 2357
. : milestone, 2288,
profiling (2.473 ms) : 2318, 2627
. : milestone, 2473,
tracing (2.053 ms) : 2000, 2106
. : milestone, 2053,
section candidate
no_agent (1.472 ms) : 1460, 1483
. : milestone, 1472,
appsec (2.491 ms) : 2437, 2546
. : milestone, 2491,
iast (2.244 ms) : 2176, 2313
. : milestone, 2244,
iast_GLOBAL (2.29 ms) : 2221, 2359
. : milestone, 2290,
profiling (2.131 ms) : 2073, 2189
. : milestone, 2131,
tracing (2.059 ms) : 2006, 2113
. : milestone, 2059,
|
5c24855 to
d906b86
Compare
d906b86 to
5ad4f5e
Compare
|
Will we be forbidding |
|
We won't. Quick quote from my doc about the topic:
|
|
Going back to draft to carefully evaluate and document each calls. |
|
This pull request has been marked as stale because it has not had activity over the past quarter. It will be closed in 7 days if no further activity occurs. Feel free to reopen the PR if you are still working on it. |
|
Let see if it makes the Q1 planning |
Debugger benchmarksParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 9 metrics, 6 unstable metrics. See unchanged results
Request duration reports for reportsgantt
title reports - request duration [CI 0.99] : candidate=None, baseline=None
dateFormat X
axisFormat %s
section baseline
noprobe (313.328 µs) : 287, 340
. : milestone, 313,
basic (280.541 µs) : 274, 287
. : milestone, 281,
loop (8.966 ms) : 8962, 8970
. : milestone, 8966,
section candidate
noprobe (322.156 µs) : 279, 365
. : milestone, 322,
basic (277.335 µs) : 271, 284
. : milestone, 277,
loop (8.962 ms) : 8957, 8966
. : milestone, 8962,
|
| return listener; | ||
| } | ||
|
|
||
| // TODO: JEP 500 - avoid mutating final fields |
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.
question: Is it possible to log such usage ?
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.
Hm good idea. I've already started trying to get rid of mutations as a whole (#10440), but we could log when final fields are detected in the meantime.
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.
Let me know if there's a cleaner way to approach the logging 😅 . Otherwise, the next steps after this PR are to rework the three cases of final field mutation
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.
Is it possible to log such usage ?
I would not add log about it as it should not impact customers.
This PR should only be a first step to mark the usages to get rid of, and warn contributors about the future limitation. The follow PRs of this task is to get rid of all those calls.
If you want logging about it, just use the JVM flag for 😉
What Does This Do
This PR adds methods that may mutate final fields to the list of ForbiddenAPIs. It also identifies current use-cases of these methods and whether or not the usage will need to be changed.
Motivation
Let's "Prepare to Make Final Mean Final". Starting in Java 26, mutating final fields will emit warnings, and in a future release, this behavior will result in exceptions.
Additional Notes
Contributor Checklist
type:and (comp:orinst:) labels in addition to any usefull labelsclose,fixor any linking keywords when referencing an issue.Use
solvesinstead, and assign the PR milestone to the issueJira ticket: APMLP-594