-
Notifications
You must be signed in to change notification settings - Fork 320
Remove RadixTreeCache for int status and protect httpStatus short cache #10236
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?
Conversation
| } catch (Throwable t) { | ||
| // RadixTreeCache seems to have issues on semeru11 - NPE on AtomicReferenceArray cas | ||
| // skip the cache in those cases and just create a String | ||
| return UTF8BytesString.create(Short.toString(httpStatusCode)); |
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: Will this create too many allocations.
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.
it's not supposed to fail the cache acccess. Note that this method is on the hot path when finish is called on the root span -> write is called. If this throw we might bubble the application code IMO. Better to allocate something than throw
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 the failure constant on Semeru? Or is it sporadic?
If it is constant, we should probably detect the failure and then just bypass the cache there after.
I've started debating using UTF8BytesString for values, since we now have the UTF8 cache. I also have some evidence that some caches are doing more harm than good now.
Long term, I'm hoping that TagMap will provide a more elegant solution to these problems, but unfortunately, I'm not there yet.
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 56 metrics, 9 unstable metrics. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.57.0-SNAPSHOT~3934a156fb, baseline=1.57.0-SNAPSHOT~f5c3f20115
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.084 s) : 0, 1083912
Total [baseline] (8.759 s) : 0, 8758977
Agent [candidate] (1.081 s) : 0, 1080814
Total [candidate] (8.765 s) : 0, 8764952
section iast
Agent [baseline] (1.231 s) : 0, 1230617
Total [baseline] (9.408 s) : 0, 9407748
Agent [candidate] (1.228 s) : 0, 1227798
Total [candidate] (9.407 s) : 0, 9406758
gantt
title insecure-bank - break down per module: candidate=1.57.0-SNAPSHOT~3934a156fb, baseline=1.57.0-SNAPSHOT~f5c3f20115
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.192 ms) : 0, 1192
crashtracking [candidate] (1.184 ms) : 0, 1184
BytebuddyAgent [baseline] (650.002 ms) : 0, 650002
BytebuddyAgent [candidate] (648.397 ms) : 0, 648397
GlobalTracer [baseline] (283.48 ms) : 0, 283480
GlobalTracer [candidate] (282.385 ms) : 0, 282385
AppSec [baseline] (32.479 ms) : 0, 32479
AppSec [candidate] (32.312 ms) : 0, 32312
Debugger [baseline] (67.633 ms) : 0, 67633
Debugger [candidate] (67.654 ms) : 0, 67654
Remote Config [baseline] (628.741 µs) : 0, 629
Remote Config [candidate] (622.069 µs) : 0, 622
Telemetry [baseline] (9.125 ms) : 0, 9125
Telemetry [candidate] (9.035 ms) : 0, 9035
Flare Poller [baseline] (3.734 ms) : 0, 3734
Flare Poller [candidate] (3.663 ms) : 0, 3663
section iast
crashtracking [baseline] (1.204 ms) : 0, 1204
crashtracking [candidate] (1.203 ms) : 0, 1203
BytebuddyAgent [baseline] (796.546 ms) : 0, 796546
BytebuddyAgent [candidate] (795.352 ms) : 0, 795352
GlobalTracer [baseline] (257.189 ms) : 0, 257189
GlobalTracer [candidate] (256.099 ms) : 0, 256099
IAST [baseline] (27.271 ms) : 0, 27271
IAST [candidate] (27.18 ms) : 0, 27180
AppSec [baseline] (33.904 ms) : 0, 33904
AppSec [candidate] (32.878 ms) : 0, 32878
Debugger [baseline] (66.288 ms) : 0, 66288
Debugger [candidate] (66.947 ms) : 0, 66947
Remote Config [baseline] (602.931 µs) : 0, 603
Remote Config [candidate] (584.426 µs) : 0, 584
Telemetry [baseline] (8.441 ms) : 0, 8441
Telemetry [candidate] (8.464 ms) : 0, 8464
Flare Poller [baseline] (3.51 ms) : 0, 3510
Flare Poller [candidate] (3.493 ms) : 0, 3493
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.57.0-SNAPSHOT~3934a156fb, baseline=1.57.0-SNAPSHOT~f5c3f20115
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.094 s) : 0, 1093508
Total [baseline] (10.83 s) : 0, 10830292
Agent [candidate] (1.083 s) : 0, 1082752
Total [candidate] (10.8 s) : 0, 10799550
section appsec
Agent [baseline] (1.275 s) : 0, 1275464
Total [baseline] (11.052 s) : 0, 11051742
Agent [candidate] (1.263 s) : 0, 1262934
Total [candidate] (11.003 s) : 0, 11002600
section iast
Agent [baseline] (1.232 s) : 0, 1231767
Total [baseline] (11.242 s) : 0, 11242313
Agent [candidate] (1.232 s) : 0, 1231550
Total [candidate] (11.298 s) : 0, 11298170
section profiling
Agent [baseline] (1.211 s) : 0, 1211236
Total [baseline] (10.93 s) : 0, 10930481
Agent [candidate] (1.206 s) : 0, 1205932
Total [candidate] (10.93 s) : 0, 10930202
gantt
title petclinic - break down per module: candidate=1.57.0-SNAPSHOT~3934a156fb, baseline=1.57.0-SNAPSHOT~f5c3f20115
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.21 ms) : 0, 1210
crashtracking [candidate] (1.206 ms) : 0, 1206
BytebuddyAgent [baseline] (656.536 ms) : 0, 656536
BytebuddyAgent [candidate] (649.957 ms) : 0, 649957
GlobalTracer [baseline] (285.358 ms) : 0, 285358
GlobalTracer [candidate] (282.453 ms) : 0, 282453
AppSec [baseline] (32.511 ms) : 0, 32511
AppSec [candidate] (32.346 ms) : 0, 32346
Debugger [baseline] (68.639 ms) : 0, 68639
Debugger [candidate] (67.926 ms) : 0, 67926
Remote Config [baseline] (629.824 µs) : 0, 630
Remote Config [candidate] (633.974 µs) : 0, 634
Telemetry [baseline] (9.067 ms) : 0, 9067
Telemetry [candidate] (9.05 ms) : 0, 9050
Flare Poller [baseline] (3.77 ms) : 0, 3770
Flare Poller [candidate] (3.717 ms) : 0, 3717
section appsec
crashtracking [baseline] (1.197 ms) : 0, 1197
crashtracking [candidate] (1.178 ms) : 0, 1178
BytebuddyAgent [baseline] (696.065 ms) : 0, 696065
BytebuddyAgent [candidate] (688.719 ms) : 0, 688719
GlobalTracer [baseline] (261.364 ms) : 0, 261364
GlobalTracer [candidate] (258.34 ms) : 0, 258340
IAST [baseline] (24.921 ms) : 0, 24921
IAST [candidate] (24.61 ms) : 0, 24610
AppSec [baseline] (174.511 ms) : 0, 174511
AppSec [candidate] (172.456 ms) : 0, 172456
Debugger [baseline] (67.901 ms) : 0, 67901
Debugger [candidate] (68.675 ms) : 0, 68675
Remote Config [baseline] (719.225 µs) : 0, 719
Remote Config [candidate] (671.27 µs) : 0, 671
Telemetry [baseline] (9.02 ms) : 0, 9020
Telemetry [candidate] (8.928 ms) : 0, 8928
Flare Poller [baseline] (3.8 ms) : 0, 3800
Flare Poller [candidate] (3.734 ms) : 0, 3734
section iast
crashtracking [baseline] (1.199 ms) : 0, 1199
crashtracking [candidate] (1.21 ms) : 0, 1210
BytebuddyAgent [baseline] (796.745 ms) : 0, 796745
BytebuddyAgent [candidate] (796.985 ms) : 0, 796985
GlobalTracer [baseline] (257.635 ms) : 0, 257635
GlobalTracer [candidate] (257.3 ms) : 0, 257300
IAST [baseline] (27.337 ms) : 0, 27337
IAST [candidate] (27.219 ms) : 0, 27219
AppSec [baseline] (33.921 ms) : 0, 33921
AppSec [candidate] (35.42 ms) : 0, 35420
Debugger [baseline] (66.7 ms) : 0, 66700
Debugger [candidate] (65.241 ms) : 0, 65241
Remote Config [baseline] (583.67 µs) : 0, 584
Remote Config [candidate] (596.787 µs) : 0, 597
Telemetry [baseline] (8.463 ms) : 0, 8463
Telemetry [candidate] (8.451 ms) : 0, 8451
Flare Poller [baseline] (3.538 ms) : 0, 3538
Flare Poller [candidate] (3.5 ms) : 0, 3500
section profiling
crashtracking [baseline] (1.223 ms) : 0, 1223
crashtracking [candidate] (1.21 ms) : 0, 1210
BytebuddyAgent [baseline] (707.282 ms) : 0, 707282
BytebuddyAgent [candidate] (703.35 ms) : 0, 703350
GlobalTracer [baseline] (221.422 ms) : 0, 221422
GlobalTracer [candidate] (220.758 ms) : 0, 220758
AppSec [baseline] (32.188 ms) : 0, 32188
AppSec [candidate] (32.238 ms) : 0, 32238
Debugger [baseline] (68.579 ms) : 0, 68579
Debugger [candidate] (68.239 ms) : 0, 68239
Remote Config [baseline] (628.617 µs) : 0, 629
Remote Config [candidate] (661.179 µs) : 0, 661
Telemetry [baseline] (8.866 ms) : 0, 8866
Telemetry [candidate] (8.925 ms) : 0, 8925
Flare Poller [baseline] (3.755 ms) : 0, 3755
Flare Poller [candidate] (3.769 ms) : 0, 3769
ProfilingAgent [baseline] (97.052 ms) : 0, 97052
ProfilingAgent [candidate] (96.92 ms) : 0, 96920
Profiling [baseline] (97.639 ms) : 0, 97639
Profiling [candidate] (97.498 ms) : 0, 97498
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 20 metrics, 16 unstable metrics. Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.57.0-SNAPSHOT~3934a156fb, baseline=1.57.0-SNAPSHOT~f5c3f20115
dateFormat X
axisFormat %s
section baseline
no_agent (1.192 ms) : 1180, 1203
. : milestone, 1192,
iast (3.286 ms) : 3248, 3325
. : milestone, 3286,
iast_FULL (5.805 ms) : 5746, 5863
. : milestone, 5805,
iast_GLOBAL (3.665 ms) : 3606, 3724
. : milestone, 3665,
profiling (2.077 ms) : 2059, 2095
. : milestone, 2077,
tracing (1.775 ms) : 1760, 1790
. : milestone, 1775,
section candidate
no_agent (1.176 ms) : 1165, 1188
. : milestone, 1176,
iast (3.277 ms) : 3235, 3319
. : milestone, 3277,
iast_FULL (5.839 ms) : 5779, 5898
. : milestone, 5839,
iast_GLOBAL (3.6 ms) : 3547, 3653
. : milestone, 3600,
profiling (2.268 ms) : 2246, 2290
. : milestone, 2268,
tracing (1.791 ms) : 1776, 1806
. : milestone, 1791,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.57.0-SNAPSHOT~3934a156fb, baseline=1.57.0-SNAPSHOT~f5c3f20115
dateFormat X
axisFormat %s
section baseline
no_agent (17.217 ms) : 17045, 17390
. : milestone, 17217,
appsec (18.701 ms) : 18514, 18889
. : milestone, 18701,
code_origins (17.936 ms) : 17758, 18114
. : milestone, 17936,
iast (17.625 ms) : 17450, 17800
. : milestone, 17625,
profiling (18.772 ms) : 18587, 18958
. : milestone, 18772,
tracing (17.723 ms) : 17549, 17898
. : milestone, 17723,
section candidate
no_agent (17.195 ms) : 17021, 17369
. : milestone, 17195,
appsec (18.463 ms) : 18275, 18650
. : milestone, 18463,
code_origins (17.825 ms) : 17651, 18000
. : milestone, 17825,
iast (18.177 ms) : 17996, 18359
. : milestone, 18177,
profiling (18.339 ms) : 18154, 18524
. : milestone, 18339,
tracing (17.671 ms) : 17499, 17843
. : milestone, 17671,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 10 metrics, 2 unstable metrics. Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.57.0-SNAPSHOT~3934a156fb, baseline=1.57.0-SNAPSHOT~f5c3f20115
dateFormat X
axisFormat %s
section baseline
no_agent (15.07 s) : 15070000, 15070000
. : milestone, 15070000,
appsec (14.021 s) : 14021000, 14021000
. : milestone, 14021000,
iast (17.906 s) : 17906000, 17906000
. : milestone, 17906000,
iast_GLOBAL (17.439 s) : 17439000, 17439000
. : milestone, 17439000,
profiling (14.55 s) : 14550000, 14550000
. : milestone, 14550000,
tracing (14.146 s) : 14146000, 14146000
. : milestone, 14146000,
section candidate
no_agent (14.947 s) : 14947000, 14947000
. : milestone, 14947000,
appsec (14.242 s) : 14242000, 14242000
. : milestone, 14242000,
iast (17.633 s) : 17633000, 17633000
. : milestone, 17633000,
iast_GLOBAL (17.207 s) : 17207000, 17207000
. : milestone, 17207000,
profiling (14.357 s) : 14357000, 14357000
. : milestone, 14357000,
tracing (13.969 s) : 13969000, 13969000
. : milestone, 13969000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.57.0-SNAPSHOT~3934a156fb, baseline=1.57.0-SNAPSHOT~f5c3f20115
dateFormat X
axisFormat %s
section baseline
no_agent (1.483 ms) : 1471, 1494
. : milestone, 1483,
appsec (2.792 ms) : 2707, 2876
. : milestone, 2792,
iast (2.583 ms) : 2480, 2685
. : milestone, 2583,
iast_GLOBAL (2.627 ms) : 2525, 2729
. : milestone, 2627,
profiling (2.388 ms) : 2303, 2473
. : milestone, 2388,
tracing (2.367 ms) : 2283, 2450
. : milestone, 2367,
section candidate
no_agent (1.492 ms) : 1481, 1504
. : milestone, 1492,
appsec (4.119 ms) : 3868, 4369
. : milestone, 4119,
iast (2.585 ms) : 2483, 2687
. : milestone, 2585,
iast_GLOBAL (2.628 ms) : 2526, 2730
. : milestone, 2628,
profiling (2.814 ms) : 2637, 2991
. : milestone, 2814,
tracing (2.364 ms) : 2280, 2447
. : milestone, 2364,
|
What Does This Do
Recently, few tests in CI fails with semeru 11 because of:
This PR tries to alleviate this by:
Motivation
Additional Notes
Contributor Checklist
type:and (comp:orinst:) labels in addition to any useful labelsclose,fixor any linking keywords when referencing an issue.Use
solvesinstead, and assign the PR milestone to the issueJira ticket: [PROJ-IDENT]