-
Notifications
You must be signed in to change notification settings - Fork 317
CSI plugin use too configuration classpath #9955
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
The `generateCallSiteJava` task can fail when trying to resolve dependencies that have constraints, that can be set by the constraints DSL or by Dependency Locking (lockfile). Indeed `CallSiteInstrumentationPlugin`'s `getProgramClasspath()` method is collecting classpaths from **all** `AbstractCompile` tasks, including `compileLatestDepForkedTestJava` and `compileLatestDepTestJava`, which can have conflicting version constraints E.g. in javax-servlet-3.0 - testImplementation required strictly 8.2.0.v20160908 - latestDepTestImplementation wanted 9.+ - Dependency locking enforced 9.4.58.v20250814 for latestDepForkedTestCompileClasspath,latestDepForkedTestRuntimeClasspath,latestDepTestCompileClasspath,latestDepTestRuntimeClasspath
|
🎯 Code Coverage 🔗 Commit SHA: 96a04e9 | Docs | Datadog PR Page | Was this helpful? Give us feedback! |
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 57 metrics, 8 unstable metrics. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.56.0-SNAPSHOT~96a04e9dce, baseline=1.56.0-SNAPSHOT~b6d4e4fc4a
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.097 s) : 0, 1097290
Total [baseline] (8.811 s) : 0, 8811051
Agent [candidate] (1.097 s) : 0, 1097375
Total [candidate] (8.833 s) : 0, 8832628
section iast
Agent [baseline] (1.235 s) : 0, 1235023
Total [baseline] (9.543 s) : 0, 9543143
Agent [candidate] (1.235 s) : 0, 1235357
Total [candidate] (9.515 s) : 0, 9515059
gantt
title insecure-bank - break down per module: candidate=1.56.0-SNAPSHOT~96a04e9dce, baseline=1.56.0-SNAPSHOT~b6d4e4fc4a
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.466 ms) : 0, 1466
crashtracking [candidate] (1.449 ms) : 0, 1449
BytebuddyAgent [baseline] (705.171 ms) : 0, 705171
BytebuddyAgent [candidate] (705.2 ms) : 0, 705200
GlobalTracer [baseline] (247.772 ms) : 0, 247772
GlobalTracer [candidate] (247.971 ms) : 0, 247971
AppSec [baseline] (32.352 ms) : 0, 32352
AppSec [candidate] (32.087 ms) : 0, 32087
Debugger [baseline] (63.235 ms) : 0, 63235
Debugger [candidate] (63.541 ms) : 0, 63541
Remote Config [baseline] (633.302 µs) : 0, 633
Remote Config [candidate] (629.019 µs) : 0, 629
Telemetry [baseline] (8.162 ms) : 0, 8162
Telemetry [candidate] (8.084 ms) : 0, 8084
Flare Poller [baseline] (3.666 ms) : 0, 3666
Flare Poller [candidate] (3.665 ms) : 0, 3665
section iast
crashtracking [baseline] (1.444 ms) : 0, 1444
crashtracking [candidate] (1.459 ms) : 0, 1459
BytebuddyAgent [baseline] (828.283 ms) : 0, 828283
BytebuddyAgent [candidate] (828.776 ms) : 0, 828776
GlobalTracer [baseline] (236.964 ms) : 0, 236964
GlobalTracer [candidate] (237.471 ms) : 0, 237471
IAST [baseline] (26.668 ms) : 0, 26668
IAST [candidate] (28.369 ms) : 0, 28369
AppSec [baseline] (34.925 ms) : 0, 34925
AppSec [candidate] (32.747 ms) : 0, 32747
Debugger [baseline] (60.114 ms) : 0, 60114
Debugger [candidate] (60.033 ms) : 0, 60033
Remote Config [baseline] (549.872 µs) : 0, 550
Remote Config [candidate] (563.581 µs) : 0, 564
Telemetry [baseline] (7.676 ms) : 0, 7676
Telemetry [candidate] (7.589 ms) : 0, 7589
Flare Poller [baseline] (3.452 ms) : 0, 3452
Flare Poller [candidate] (3.478 ms) : 0, 3478
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.56.0-SNAPSHOT~96a04e9dce, baseline=1.56.0-SNAPSHOT~b6d4e4fc4a
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.1 s) : 0, 1100181
Total [baseline] (10.781 s) : 0, 10781409
Agent [candidate] (1.107 s) : 0, 1107476
Total [candidate] (10.787 s) : 0, 10787067
section appsec
Agent [baseline] (1.285 s) : 0, 1284721
Total [baseline] (11.073 s) : 0, 11072970
Agent [candidate] (1.286 s) : 0, 1286330
Total [candidate] (11.027 s) : 0, 11027030
section iast
Agent [baseline] (1.247 s) : 0, 1246587
Total [baseline] (11.389 s) : 0, 11389407
Agent [candidate] (1.248 s) : 0, 1248138
Total [candidate] (11.301 s) : 0, 11301001
section profiling
Agent [baseline] (1.229 s) : 0, 1229405
Total [baseline] (10.94 s) : 0, 10940345
Agent [candidate] (1.231 s) : 0, 1230987
Total [candidate] (11.101 s) : 0, 11100950
gantt
title petclinic - break down per module: candidate=1.56.0-SNAPSHOT~96a04e9dce, baseline=1.56.0-SNAPSHOT~b6d4e4fc4a
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.445 ms) : 0, 1445
crashtracking [candidate] (1.472 ms) : 0, 1472
BytebuddyAgent [baseline] (706.966 ms) : 0, 706966
BytebuddyAgent [candidate] (712.816 ms) : 0, 712816
GlobalTracer [baseline] (247.767 ms) : 0, 247767
GlobalTracer [candidate] (249.386 ms) : 0, 249386
AppSec [baseline] (32.52 ms) : 0, 32520
AppSec [candidate] (32.387 ms) : 0, 32387
Debugger [baseline] (64.112 ms) : 0, 64112
Debugger [candidate] (64.057 ms) : 0, 64057
Remote Config [baseline] (627.316 µs) : 0, 627
Remote Config [candidate] (613.017 µs) : 0, 613
Telemetry [baseline] (8.217 ms) : 0, 8217
Telemetry [candidate] (8.067 ms) : 0, 8067
Flare Poller [baseline] (3.716 ms) : 0, 3716
Flare Poller [candidate] (3.609 ms) : 0, 3609
section appsec
crashtracking [baseline] (1.462 ms) : 0, 1462
crashtracking [candidate] (1.486 ms) : 0, 1486
BytebuddyAgent [baseline] (733.715 ms) : 0, 733715
BytebuddyAgent [candidate] (734.585 ms) : 0, 734585
GlobalTracer [baseline] (241.218 ms) : 0, 241218
GlobalTracer [candidate] (241.496 ms) : 0, 241496
IAST [baseline] (25.137 ms) : 0, 25137
IAST [candidate] (25.158 ms) : 0, 25158
AppSec [baseline] (174.263 ms) : 0, 174263
AppSec [candidate] (174.448 ms) : 0, 174448
Debugger [baseline] (60.96 ms) : 0, 60960
Debugger [candidate] (61.069 ms) : 0, 61069
Remote Config [baseline] (744.125 µs) : 0, 744
Remote Config [candidate] (679.377 µs) : 0, 679
Telemetry [baseline] (8.242 ms) : 0, 8242
Telemetry [candidate] (8.342 ms) : 0, 8342
Flare Poller [baseline] (3.834 ms) : 0, 3834
Flare Poller [candidate] (3.99 ms) : 0, 3990
section iast
crashtracking [baseline] (1.456 ms) : 0, 1456
crashtracking [candidate] (1.462 ms) : 0, 1462
BytebuddyAgent [baseline] (835.573 ms) : 0, 835573
BytebuddyAgent [candidate] (836.067 ms) : 0, 836067
GlobalTracer [baseline] (238.642 ms) : 0, 238642
GlobalTracer [candidate] (239.907 ms) : 0, 239907
IAST [baseline] (27.661 ms) : 0, 27661
IAST [candidate] (28.589 ms) : 0, 28589
AppSec [baseline] (34.544 ms) : 0, 34544
AppSec [candidate] (33.38 ms) : 0, 33380
Debugger [baseline] (61.695 ms) : 0, 61695
Debugger [candidate] (61.788 ms) : 0, 61788
Remote Config [baseline] (560.316 µs) : 0, 560
Remote Config [candidate] (549.762 µs) : 0, 550
Telemetry [baseline] (7.831 ms) : 0, 7831
Telemetry [candidate] (7.815 ms) : 0, 7815
Flare Poller [baseline] (3.55 ms) : 0, 3550
Flare Poller [candidate] (3.531 ms) : 0, 3531
section profiling
crashtracking [baseline] (1.454 ms) : 0, 1454
crashtracking [candidate] (1.451 ms) : 0, 1451
BytebuddyAgent [baseline] (731.904 ms) : 0, 731904
BytebuddyAgent [candidate] (733.043 ms) : 0, 733043
GlobalTracer [baseline] (222.138 ms) : 0, 222138
GlobalTracer [candidate] (222.063 ms) : 0, 222063
AppSec [baseline] (32.232 ms) : 0, 32232
AppSec [candidate] (32.179 ms) : 0, 32179
Debugger [baseline] (63.047 ms) : 0, 63047
Debugger [candidate] (63.045 ms) : 0, 63045
Remote Config [baseline] (659.988 µs) : 0, 660
Remote Config [candidate] (651.463 µs) : 0, 651
Telemetry [baseline] (8.002 ms) : 0, 8002
Telemetry [candidate] (7.956 ms) : 0, 7956
Flare Poller [baseline] (3.782 ms) : 0, 3782
Flare Poller [candidate] (3.741 ms) : 0, 3741
ProfilingAgent [baseline] (96.437 ms) : 0, 96437
ProfilingAgent [candidate] (96.904 ms) : 0, 96904
Profiling [baseline] (97.027 ms) : 0, 97027
Profiling [candidate] (97.484 ms) : 0, 97484
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 4 performance regressions! Performance is the same for 16 metrics, 16 unstable metrics.
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.56.0-SNAPSHOT~96a04e9dce, baseline=1.56.0-SNAPSHOT~b6d4e4fc4a
dateFormat X
axisFormat %s
section baseline
no_agent (1.177 ms) : 1166, 1189
. : milestone, 1177,
iast (3.262 ms) : 3220, 3304
. : milestone, 3262,
iast_FULL (5.7 ms) : 5645, 5755
. : milestone, 5700,
iast_GLOBAL (3.54 ms) : 3439, 3641
. : milestone, 3540,
profiling (1.981 ms) : 1964, 1998
. : milestone, 1981,
tracing (1.783 ms) : 1769, 1798
. : milestone, 1783,
section candidate
no_agent (1.197 ms) : 1184, 1209
. : milestone, 1197,
iast (3.301 ms) : 3237, 3365
. : milestone, 3301,
iast_FULL (5.744 ms) : 5686, 5801
. : milestone, 5744,
iast_GLOBAL (3.616 ms) : 3563, 3668
. : milestone, 3616,
profiling (2.164 ms) : 2142, 2186
. : milestone, 2164,
tracing (1.802 ms) : 1786, 1817
. : milestone, 1802,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.56.0-SNAPSHOT~96a04e9dce, baseline=1.56.0-SNAPSHOT~b6d4e4fc4a
dateFormat X
axisFormat %s
section baseline
no_agent (19.16 ms) : 18961, 19359
. : milestone, 19160,
appsec (18.632 ms) : 18443, 18820
. : milestone, 18632,
code_origins (17.743 ms) : 17565, 17921
. : milestone, 17743,
iast (17.806 ms) : 17630, 17982
. : milestone, 17806,
profiling (18.705 ms) : 18516, 18893
. : milestone, 18705,
tracing (17.748 ms) : 17574, 17923
. : milestone, 17748,
section candidate
no_agent (18.07 ms) : 17887, 18253
. : milestone, 18070,
appsec (18.723 ms) : 18533, 18914
. : milestone, 18723,
code_origins (17.677 ms) : 17500, 17853
. : milestone, 17677,
iast (17.766 ms) : 17588, 17945
. : milestone, 17766,
profiling (19.675 ms) : 19475, 19875
. : milestone, 19675,
tracing (17.913 ms) : 17736, 18090
. : milestone, 17913,
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.56.0-SNAPSHOT~96a04e9dce, baseline=1.56.0-SNAPSHOT~b6d4e4fc4a
dateFormat X
axisFormat %s
section baseline
no_agent (15.327 s) : 15327000, 15327000
. : milestone, 15327000,
appsec (14.98 s) : 14980000, 14980000
. : milestone, 14980000,
iast (18.32 s) : 18320000, 18320000
. : milestone, 18320000,
iast_GLOBAL (17.697 s) : 17697000, 17697000
. : milestone, 17697000,
profiling (14.829 s) : 14829000, 14829000
. : milestone, 14829000,
tracing (14.576 s) : 14576000, 14576000
. : milestone, 14576000,
section candidate
no_agent (15.079 s) : 15079000, 15079000
. : milestone, 15079000,
appsec (14.988 s) : 14988000, 14988000
. : milestone, 14988000,
iast (18.725 s) : 18725000, 18725000
. : milestone, 18725000,
iast_GLOBAL (17.921 s) : 17921000, 17921000
. : milestone, 17921000,
profiling (14.821 s) : 14821000, 14821000
. : milestone, 14821000,
tracing (15.027 s) : 15027000, 15027000
. : milestone, 15027000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.56.0-SNAPSHOT~96a04e9dce, baseline=1.56.0-SNAPSHOT~b6d4e4fc4a
dateFormat X
axisFormat %s
section baseline
no_agent (1.468 ms) : 1457, 1480
. : milestone, 1468,
appsec (2.45 ms) : 2399, 2502
. : milestone, 2450,
iast (2.209 ms) : 2145, 2273
. : milestone, 2209,
iast_GLOBAL (2.241 ms) : 2176, 2305
. : milestone, 2241,
profiling (2.047 ms) : 1995, 2098
. : milestone, 2047,
tracing (2.03 ms) : 1979, 2080
. : milestone, 2030,
section candidate
no_agent (1.47 ms) : 1459, 1482
. : milestone, 1470,
appsec (3.616 ms) : 3402, 3831
. : milestone, 3616,
iast (2.209 ms) : 2145, 2274
. : milestone, 2209,
iast_GLOBAL (2.251 ms) : 2187, 2316
. : milestone, 2251,
profiling (2.064 ms) : 2010, 2117
. : milestone, 2064,
tracing (2.03 ms) : 1980, 2080
. : milestone, 2030,
|
046f8eb to
39eef9c
Compare
What Does This Do
Makes CSI plugin not collecting every classpath.
I'm thinking about a different implementation of the plugin, where instead of looking at every tasks of certain type, the CSI config can be done by setting up default configurations, non standard would be explicitly configured as-needed.
If the bug is not visible it's because we don't use the constraints DSL yet. However given the
latestDepconfigurations are a bit unpredictable as they are open-ended by design, I believe they should not be pass in the CSI plugin classpath.Note, this workaround PR should unblock #9752, but a cleaner approach is worked under
Motivation
The
generateCallSiteJavatask can fail when trying to resolve dependencies that have constraints, that can be set by the constraints DSL or by Dependency Locking (lockfile).Indeed
CallSiteInstrumentationPlugin'sgetProgramClasspath()method is collecting classpaths from allAbstractCompiletasks, includingcompileLatestDepForkedTestJavaandcompileLatestDepTestJava, which can have conflicting version constraintsE.g. in javax-servlet-3.0
Additional Notes
This code exists since the CSI plugin landing in this repository :
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]