Add a jpms opener for HostNameResolver cache#11095
Conversation
|
Hi! 👋 Thanks for your pull request! 🎉 To help us review it, please make sure to:
If you need help, please check our contributing guidelines. |
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 58 metrics, 13 unstable metrics. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.62.0-SNAPSHOT~3e2826006c, baseline=1.62.0-SNAPSHOT~d451bbdb1f
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.059 s) : 0, 1058675
Total [baseline] (11.036 s) : 0, 11036362
Agent [candidate] (1.058 s) : 0, 1058403
Total [candidate] (11.1 s) : 0, 11100442
section appsec
Agent [baseline] (1.248 s) : 0, 1248270
Total [baseline] (11.165 s) : 0, 11164812
Agent [candidate] (1.261 s) : 0, 1261045
Total [candidate] (11.181 s) : 0, 11181321
section iast
Agent [baseline] (1.222 s) : 0, 1222085
Total [baseline] (11.384 s) : 0, 11384156
Agent [candidate] (1.237 s) : 0, 1237230
Total [candidate] (11.368 s) : 0, 11367945
section profiling
Agent [baseline] (1.183 s) : 0, 1182533
Total [baseline] (11.173 s) : 0, 11173328
Agent [candidate] (1.192 s) : 0, 1191703
Total [candidate] (10.908 s) : 0, 10907902
gantt
title petclinic - break down per module: candidate=1.62.0-SNAPSHOT~3e2826006c, baseline=1.62.0-SNAPSHOT~d451bbdb1f
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.221 ms) : 0, 1221
crashtracking [candidate] (1.228 ms) : 0, 1228
BytebuddyAgent [baseline] (633.857 ms) : 0, 633857
BytebuddyAgent [candidate] (631.062 ms) : 0, 631062
AgentMeter [baseline] (29.501 ms) : 0, 29501
AgentMeter [candidate] (29.238 ms) : 0, 29238
GlobalTracer [baseline] (249.403 ms) : 0, 249403
GlobalTracer [candidate] (248.64 ms) : 0, 248640
AppSec [baseline] (32.136 ms) : 0, 32136
AppSec [candidate] (32.779 ms) : 0, 32779
Debugger [baseline] (60.19 ms) : 0, 60190
Debugger [candidate] (60.243 ms) : 0, 60243
Remote Config [baseline] (602.897 µs) : 0, 603
Remote Config [candidate] (605.525 µs) : 0, 606
Telemetry [baseline] (8.139 ms) : 0, 8139
Telemetry [candidate] (8.932 ms) : 0, 8932
Flare Poller [baseline] (7.533 ms) : 0, 7533
Flare Poller [candidate] (9.807 ms) : 0, 9807
section appsec
crashtracking [baseline] (1.218 ms) : 0, 1218
crashtracking [candidate] (1.231 ms) : 0, 1231
BytebuddyAgent [baseline] (661.79 ms) : 0, 661790
BytebuddyAgent [candidate] (670.343 ms) : 0, 670343
AgentMeter [baseline] (12.1 ms) : 0, 12100
AgentMeter [candidate] (12.132 ms) : 0, 12132
GlobalTracer [baseline] (249.277 ms) : 0, 249277
GlobalTracer [candidate] (251.708 ms) : 0, 251708
IAST [baseline] (24.569 ms) : 0, 24569
IAST [candidate] (25.458 ms) : 0, 25458
AppSec [baseline] (184.174 ms) : 0, 184174
AppSec [candidate] (185.352 ms) : 0, 185352
Debugger [baseline] (65.801 ms) : 0, 65801
Debugger [candidate] (66.017 ms) : 0, 66017
Remote Config [baseline] (619.136 µs) : 0, 619
Remote Config [candidate] (644.797 µs) : 0, 645
Telemetry [baseline] (8.719 ms) : 0, 8719
Telemetry [candidate] (8.317 ms) : 0, 8317
Flare Poller [baseline] (3.589 ms) : 0, 3589
Flare Poller [candidate] (3.57 ms) : 0, 3570
section iast
crashtracking [baseline] (1.216 ms) : 0, 1216
crashtracking [candidate] (1.255 ms) : 0, 1255
BytebuddyAgent [baseline] (799.69 ms) : 0, 799690
BytebuddyAgent [candidate] (817.15 ms) : 0, 817150
AgentMeter [baseline] (11.348 ms) : 0, 11348
AgentMeter [candidate] (11.422 ms) : 0, 11422
GlobalTracer [baseline] (238.974 ms) : 0, 238974
GlobalTracer [candidate] (237.593 ms) : 0, 237593
IAST [baseline] (25.778 ms) : 0, 25778
IAST [candidate] (31.287 ms) : 0, 31287
AppSec [baseline] (30.983 ms) : 0, 30983
AppSec [candidate] (28.245 ms) : 0, 28245
Debugger [baseline] (60.619 ms) : 0, 60619
Debugger [candidate] (60.971 ms) : 0, 60971
Remote Config [baseline] (531.069 µs) : 0, 531
Remote Config [candidate] (526.067 µs) : 0, 526
Telemetry [baseline] (13.136 ms) : 0, 13136
Telemetry [candidate] (9.201 ms) : 0, 9201
Flare Poller [baseline] (3.444 ms) : 0, 3444
Flare Poller [candidate] (3.576 ms) : 0, 3576
section profiling
crashtracking [baseline] (1.179 ms) : 0, 1179
crashtracking [candidate] (1.197 ms) : 0, 1197
BytebuddyAgent [baseline] (689.972 ms) : 0, 689972
BytebuddyAgent [candidate] (696.923 ms) : 0, 696923
AgentMeter [baseline] (9.159 ms) : 0, 9159
AgentMeter [candidate] (9.12 ms) : 0, 9120
GlobalTracer [baseline] (207.151 ms) : 0, 207151
GlobalTracer [candidate] (207.918 ms) : 0, 207918
AppSec [baseline] (32.472 ms) : 0, 32472
AppSec [candidate] (32.577 ms) : 0, 32577
Debugger [baseline] (65.65 ms) : 0, 65650
Debugger [candidate] (66.2 ms) : 0, 66200
Remote Config [baseline] (571.479 µs) : 0, 571
Remote Config [candidate] (570.333 µs) : 0, 570
Telemetry [baseline] (7.798 ms) : 0, 7798
Telemetry [candidate] (7.818 ms) : 0, 7818
Flare Poller [baseline] (3.598 ms) : 0, 3598
Flare Poller [candidate] (3.62 ms) : 0, 3620
ProfilingAgent [baseline] (93.776 ms) : 0, 93776
ProfilingAgent [candidate] (94.361 ms) : 0, 94361
Profiling [baseline] (94.355 ms) : 0, 94355
Profiling [candidate] (94.918 ms) : 0, 94918
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.62.0-SNAPSHOT~3e2826006c, baseline=1.62.0-SNAPSHOT~d451bbdb1f
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.065 s) : 0, 1064871
Total [baseline] (8.848 s) : 0, 8847998
Agent [candidate] (1.065 s) : 0, 1065377
Total [candidate] (8.845 s) : 0, 8844531
section iast
Agent [baseline] (1.222 s) : 0, 1222140
Total [baseline] (9.574 s) : 0, 9574046
Agent [candidate] (1.23 s) : 0, 1229781
Total [candidate] (9.516 s) : 0, 9515979
gantt
title insecure-bank - break down per module: candidate=1.62.0-SNAPSHOT~3e2826006c, baseline=1.62.0-SNAPSHOT~d451bbdb1f
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.241 ms) : 0, 1241
crashtracking [candidate] (1.244 ms) : 0, 1244
BytebuddyAgent [baseline] (637.988 ms) : 0, 637988
BytebuddyAgent [candidate] (637.055 ms) : 0, 637055
AgentMeter [baseline] (29.611 ms) : 0, 29611
AgentMeter [candidate] (29.475 ms) : 0, 29475
GlobalTracer [baseline] (250.714 ms) : 0, 250714
GlobalTracer [candidate] (250.015 ms) : 0, 250015
AppSec [baseline] (32.252 ms) : 0, 32252
AppSec [candidate] (32.879 ms) : 0, 32879
Debugger [baseline] (59.774 ms) : 0, 59774
Debugger [candidate] (59.387 ms) : 0, 59387
Remote Config [baseline] (621.638 µs) : 0, 622
Remote Config [candidate] (590.651 µs) : 0, 591
Telemetry [baseline] (8.15 ms) : 0, 8150
Telemetry [candidate] (8.863 ms) : 0, 8863
Flare Poller [baseline] (8.221 ms) : 0, 8221
Flare Poller [candidate] (9.713 ms) : 0, 9713
section iast
crashtracking [baseline] (1.229 ms) : 0, 1229
crashtracking [candidate] (1.224 ms) : 0, 1224
BytebuddyAgent [baseline] (799.485 ms) : 0, 799485
BytebuddyAgent [candidate] (810.577 ms) : 0, 810577
AgentMeter [baseline] (11.355 ms) : 0, 11355
AgentMeter [candidate] (11.31 ms) : 0, 11310
GlobalTracer [baseline] (239.139 ms) : 0, 239139
GlobalTracer [candidate] (237.326 ms) : 0, 237326
IAST [baseline] (26.615 ms) : 0, 26615
IAST [candidate] (31.488 ms) : 0, 31488
AppSec [baseline] (30.357 ms) : 0, 30357
AppSec [candidate] (28.134 ms) : 0, 28134
Debugger [baseline] (61.567 ms) : 0, 61567
Debugger [candidate] (60.364 ms) : 0, 60364
Remote Config [baseline] (541.318 µs) : 0, 541
Remote Config [candidate] (525.174 µs) : 0, 525
Telemetry [baseline] (12.046 ms) : 0, 12046
Telemetry [candidate] (9.279 ms) : 0, 9279
Flare Poller [baseline] (3.595 ms) : 0, 3595
Flare Poller [candidate] (3.572 ms) : 0, 3572
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 1 performance regressions! Performance is the same for 17 metrics, 18 unstable metrics.
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.62.0-SNAPSHOT~3e2826006c, baseline=1.62.0-SNAPSHOT~d451bbdb1f
dateFormat X
axisFormat %s
section baseline
no_agent (1.244 ms) : 1233, 1255
. : milestone, 1244,
iast (3.257 ms) : 3210, 3305
. : milestone, 3257,
iast_FULL (6.209 ms) : 6144, 6274
. : milestone, 6209,
iast_GLOBAL (3.662 ms) : 3600, 3724
. : milestone, 3662,
profiling (2.217 ms) : 2196, 2237
. : milestone, 2217,
tracing (1.954 ms) : 1937, 1971
. : milestone, 1954,
section candidate
no_agent (1.245 ms) : 1233, 1257
. : milestone, 1245,
iast (3.39 ms) : 3341, 3439
. : milestone, 3390,
iast_FULL (5.969 ms) : 5909, 6030
. : milestone, 5969,
iast_GLOBAL (3.688 ms) : 3631, 3745
. : milestone, 3688,
profiling (2.221 ms) : 2199, 2243
. : milestone, 2221,
tracing (1.87 ms) : 1854, 1885
. : milestone, 1870,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.62.0-SNAPSHOT~3e2826006c, baseline=1.62.0-SNAPSHOT~d451bbdb1f
dateFormat X
axisFormat %s
section baseline
no_agent (19.598 ms) : 19398, 19798
. : milestone, 19598,
appsec (18.841 ms) : 18655, 19027
. : milestone, 18841,
code_origins (17.865 ms) : 17691, 18040
. : milestone, 17865,
iast (18.283 ms) : 18099, 18467
. : milestone, 18283,
profiling (18.326 ms) : 18143, 18510
. : milestone, 18326,
tracing (17.966 ms) : 17785, 18148
. : milestone, 17966,
section candidate
no_agent (18.628 ms) : 18437, 18819
. : milestone, 18628,
appsec (18.69 ms) : 18500, 18881
. : milestone, 18690,
code_origins (17.939 ms) : 17761, 18118
. : milestone, 17939,
iast (18.171 ms) : 17993, 18349
. : milestone, 18171,
profiling (18.397 ms) : 18215, 18580
. : milestone, 18397,
tracing (18.021 ms) : 17841, 18201
. : milestone, 18021,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 1 unstable metrics. Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.62.0-SNAPSHOT~3e2826006c, baseline=1.62.0-SNAPSHOT~d451bbdb1f
dateFormat X
axisFormat %s
section baseline
no_agent (14.953 s) : 14953000, 14953000
. : milestone, 14953000,
appsec (14.71 s) : 14710000, 14710000
. : milestone, 14710000,
iast (18.677 s) : 18677000, 18677000
. : milestone, 18677000,
iast_GLOBAL (18.195 s) : 18195000, 18195000
. : milestone, 18195000,
profiling (14.918 s) : 14918000, 14918000
. : milestone, 14918000,
tracing (14.966 s) : 14966000, 14966000
. : milestone, 14966000,
section candidate
no_agent (15.763 s) : 15763000, 15763000
. : milestone, 15763000,
appsec (14.882 s) : 14882000, 14882000
. : milestone, 14882000,
iast (18.327 s) : 18327000, 18327000
. : milestone, 18327000,
iast_GLOBAL (17.849 s) : 17849000, 17849000
. : milestone, 17849000,
profiling (14.901 s) : 14901000, 14901000
. : milestone, 14901000,
tracing (14.912 s) : 14912000, 14912000
. : milestone, 14912000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.62.0-SNAPSHOT~3e2826006c, baseline=1.62.0-SNAPSHOT~d451bbdb1f
dateFormat X
axisFormat %s
section baseline
no_agent (1.491 ms) : 1479, 1503
. : milestone, 1491,
appsec (2.541 ms) : 2486, 2596
. : milestone, 2541,
iast (2.296 ms) : 2227, 2366
. : milestone, 2296,
iast_GLOBAL (2.329 ms) : 2259, 2399
. : milestone, 2329,
profiling (2.103 ms) : 2048, 2158
. : milestone, 2103,
tracing (2.105 ms) : 2050, 2159
. : milestone, 2105,
section candidate
no_agent (1.489 ms) : 1478, 1501
. : milestone, 1489,
appsec (3.865 ms) : 3641, 4089
. : milestone, 3865,
iast (2.288 ms) : 2219, 2357
. : milestone, 2288,
iast_GLOBAL (2.33 ms) : 2260, 2400
. : milestone, 2330,
profiling (2.111 ms) : 2056, 2166
. : milestone, 2111,
tracing (2.096 ms) : 2043, 2150
. : milestone, 2096,
|
|
|
||
| static String getAlreadyResolvedHostName(InetAddress address) { | ||
| if (HOLDER_GET == null) { | ||
| tryInitialize(); |
There was a problem hiding this comment.
Would this get called continually if there's a genuine issue creating the handle? If so can we avoid repeated attempts from this code path? (I'd like to avoid a flood of exceptions being created in such a case)
Say maybe InetAddressHolder gets renamed, or a different vendor implements it another way...
What Does This Do
Enable using the HostNameResolver cache also under jpms enforcement. This PR instrument java.net specific classes in order to open the module from inside.
The same kind of trick has been previously done with mule instrumentation
Solves #11088
Motivation
Additional Notes
Contributor Checklist
type:and (comp:orinst:) labels in addition to any other useful labelsclose,fix, or any linking keywords when referencing an issueUse
solvesinstead, and assign the PR milestone to the issueJira ticket: [PROJ-IDENT]
Note: Once your PR is ready to merge, add it to the merge queue by commenting
/merge./merge -ccancels the queue request./merge -f --reason "reason"skips all merge queue checks; please use this judiciously, as some checks do not run at the PR-level. For more information, see this doc.