Skip to content

Conversation

amarziali
Copy link
Contributor

What Does This Do

If multiple calls are done to SharedCommunicationObjects.featureDiscovery(..) it might happen that multiple DDAgentFeatureDiscovery instances are created.
This discovery instance must be unique in order to ensure that, tracer-wise, we keep the same vision of the state of the agent.

This PR just add a synchronized block around that creation

Motivation

Additional Notes

Contributor Checklist

Jira ticket: [PROJ-IDENT]

@amarziali amarziali requested a review from a team as a code owner July 9, 2025 16:09
@amarziali amarziali requested a review from PerfectSlayer July 9, 2025 16:09
Copy link
Contributor

github-actions bot commented Jul 9, 2025

Hi! 👋 Thanks for your pull request! 🎉

To help us review it, please make sure to:

  • Add at least one type, and one component or instrumentation label to the pull request

If you need help, please check our contributing guidelines.

@amarziali amarziali added type: bug Bug report and fix comp: core Tracer core labels Jul 9, 2025
@pr-commenter
Copy link

pr-commenter bot commented Jul 9, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master andrea.marziali/css2
git_commit_date 1752084850 1752131308
git_commit_sha 89e92d5 005f711
release_version 1.52.0-SNAPSHOT~89e92d59f6 1.52.0-SNAPSHOT~005f71100e
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1752133201 1752133201
ci_job_id 1022164490 1022164490
ci_pipeline_id 70137463 70137463
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-uq7utqhf 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-uq7utqhf 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
module Agent Agent
parent None None

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 45 metrics, 8 unstable metrics.

Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.52.0-SNAPSHOT~005f71100e, baseline=1.52.0-SNAPSHOT~89e92d59f6

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (994.491 ms) : 0, 994491
Total [baseline] (10.638 s) : 0, 10637758
Agent [candidate] (1.0 s) : 0, 1000018
Total [candidate] (10.645 s) : 0, 10645284
section appsec
Agent [baseline] (1.181 s) : 0, 1181351
Total [baseline] (10.736 s) : 0, 10735641
Agent [candidate] (1.181 s) : 0, 1181497
Total [candidate] (10.763 s) : 0, 10763327
section iast
Agent [baseline] (1.139 s) : 0, 1139116
Total [baseline] (10.828 s) : 0, 10827583
Agent [candidate] (1.129 s) : 0, 1129040
Total [candidate] (10.788 s) : 0, 10787651
section profiling
Agent [baseline] (1.243 s) : 0, 1243476
Total [baseline] (10.896 s) : 0, 10895741
Agent [candidate] (1.254 s) : 0, 1254173
Total [candidate] (11.019 s) : 0, 11018573
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 994.491 ms -
Agent appsec 1.181 s 186.86 ms (18.8%)
Agent iast 1.139 s 144.624 ms (14.5%)
Agent profiling 1.243 s 248.984 ms (25.0%)
Total tracing 10.638 s -
Total appsec 10.736 s 97.883 ms (0.9%)
Total iast 10.828 s 189.825 ms (1.8%)
Total profiling 10.896 s 257.982 ms (2.4%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.0 s -
Agent appsec 1.181 s 181.479 ms (18.1%)
Agent iast 1.129 s 129.022 ms (12.9%)
Agent profiling 1.254 s 254.155 ms (25.4%)
Total tracing 10.645 s -
Total appsec 10.763 s 118.043 ms (1.1%)
Total iast 10.788 s 142.367 ms (1.3%)
Total profiling 11.019 s 373.289 ms (3.5%)
gantt
    title petclinic - break down per module: candidate=1.52.0-SNAPSHOT~005f71100e, baseline=1.52.0-SNAPSHOT~89e92d59f6

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (686.58 ms) : 0, 686580
BytebuddyAgent [candidate] (690.854 ms) : 0, 690854
GlobalTracer [baseline] (241.93 ms) : 0, 241930
GlobalTracer [candidate] (243.021 ms) : 0, 243021
AppSec [baseline] (30.313 ms) : 0, 30313
AppSec [candidate] (30.351 ms) : 0, 30351
Debugger [baseline] (5.944 ms) : 0, 5944
Debugger [candidate] (6.028 ms) : 0, 6028
Remote Config [baseline] (685.513 µs) : 0, 686
Remote Config [candidate] (675.11 µs) : 0, 675
Telemetry [baseline] (8.201 ms) : 0, 8201
Telemetry [candidate] (8.272 ms) : 0, 8272
section appsec
BytebuddyAgent [baseline] (714.436 ms) : 0, 714436
BytebuddyAgent [candidate] (714.217 ms) : 0, 714217
GlobalTracer [baseline] (236.135 ms) : 0, 236135
GlobalTracer [candidate] (236.857 ms) : 0, 236857
AppSec [baseline] (171.757 ms) : 0, 171757
AppSec [candidate] (171.458 ms) : 0, 171458
Debugger [baseline] (5.725 ms) : 0, 5725
Debugger [candidate] (5.692 ms) : 0, 5692
Remote Config [baseline] (609.997 µs) : 0, 610
Remote Config [candidate] (599.28 µs) : 0, 599
Telemetry [baseline] (8.117 ms) : 0, 8117
Telemetry [candidate] (8.115 ms) : 0, 8115
IAST [baseline] (23.579 ms) : 0, 23579
IAST [candidate] (23.588 ms) : 0, 23588
section iast
BytebuddyAgent [baseline] (812.86 ms) : 0, 812860
BytebuddyAgent [candidate] (805.233 ms) : 0, 805233
GlobalTracer [baseline] (232.991 ms) : 0, 232991
GlobalTracer [candidate] (231.565 ms) : 0, 231565
AppSec [baseline] (28.524 ms) : 0, 28524
AppSec [candidate] (30.56 ms) : 0, 30560
Debugger [baseline] (5.768 ms) : 0, 5768
Debugger [candidate] (5.676 ms) : 0, 5676
Remote Config [baseline] (583.746 µs) : 0, 584
Remote Config [candidate] (575.697 µs) : 0, 576
Telemetry [baseline] (7.953 ms) : 0, 7953
Telemetry [candidate] (7.833 ms) : 0, 7833
IAST [baseline] (29.589 ms) : 0, 29589
IAST [candidate] (26.914 ms) : 0, 26914
section profiling
ProfilingAgent [baseline] (103.537 ms) : 0, 103537
ProfilingAgent [candidate] (106.617 ms) : 0, 106617
BytebuddyAgent [baseline] (676.143 ms) : 0, 676143
BytebuddyAgent [candidate] (682.253 ms) : 0, 682253
GlobalTracer [baseline] (361.955 ms) : 0, 361955
GlobalTracer [candidate] (363.788 ms) : 0, 363788
AppSec [baseline] (33.294 ms) : 0, 33294
AppSec [candidate] (34.615 ms) : 0, 34615
Debugger [baseline] (8.426 ms) : 0, 8426
Debugger [candidate] (7.673 ms) : 0, 7673
Remote Config [baseline] (662.731 µs) : 0, 663
Remote Config [candidate] (675.726 µs) : 0, 676
Telemetry [baseline] (10.961 ms) : 0, 10961
Telemetry [candidate] (9.641 ms) : 0, 9641
Profiling [baseline] (103.562 ms) : 0, 103562
Profiling [candidate] (106.641 ms) : 0, 106641
Loading
Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.52.0-SNAPSHOT~005f71100e, baseline=1.52.0-SNAPSHOT~89e92d59f6

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (996.811 ms) : 0, 996811
Total [baseline] (8.597 s) : 0, 8597451
Agent [candidate] (994.097 ms) : 0, 994097
Total [candidate] (8.53 s) : 0, 8530272
section iast
Agent [baseline] (1.132 s) : 0, 1131799
Total [baseline] (9.297 s) : 0, 9297338
Agent [candidate] (1.13 s) : 0, 1130076
Total [candidate] (9.275 s) : 0, 9274818
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 996.811 ms -
Agent iast 1.132 s 134.987 ms (13.5%)
Total tracing 8.597 s -
Total iast 9.297 s 699.887 ms (8.1%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 994.097 ms -
Agent iast 1.13 s 135.979 ms (13.7%)
Total tracing 8.53 s -
Total iast 9.275 s 744.546 ms (8.7%)
gantt
    title insecure-bank - break down per module: candidate=1.52.0-SNAPSHOT~005f71100e, baseline=1.52.0-SNAPSHOT~89e92d59f6

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (688.619 ms) : 0, 688619
BytebuddyAgent [candidate] (686.07 ms) : 0, 686070
GlobalTracer [baseline] (242.235 ms) : 0, 242235
GlobalTracer [candidate] (242.272 ms) : 0, 242272
AppSec [baseline] (30.342 ms) : 0, 30342
AppSec [candidate] (30.12 ms) : 0, 30120
Debugger [baseline] (5.974 ms) : 0, 5974
Debugger [candidate] (5.992 ms) : 0, 5992
Remote Config [baseline] (682.396 µs) : 0, 682
Remote Config [candidate] (684.461 µs) : 0, 684
Telemetry [baseline] (8.188 ms) : 0, 8188
Telemetry [candidate] (8.251 ms) : 0, 8251
section iast
BytebuddyAgent [baseline] (807.531 ms) : 0, 807531
BytebuddyAgent [candidate] (805.994 ms) : 0, 805994
GlobalTracer [baseline] (231.779 ms) : 0, 231779
GlobalTracer [candidate] (231.648 ms) : 0, 231648
AppSec [baseline] (30.699 ms) : 0, 30699
AppSec [candidate] (27.994 ms) : 0, 27994
Debugger [baseline] (5.685 ms) : 0, 5685
Debugger [candidate] (6.661 ms) : 0, 6661
Remote Config [baseline] (568.729 µs) : 0, 569
Remote Config [candidate] (584.125 µs) : 0, 584
Telemetry [baseline] (7.899 ms) : 0, 7899
Telemetry [candidate] (7.914 ms) : 0, 7914
IAST [baseline] (26.923 ms) : 0, 26923
IAST [candidate] (28.627 ms) : 0, 28627
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master andrea.marziali/css2
git_commit_date 1752084850 1752131308
git_commit_sha 89e92d5 005f711
release_version 1.52.0-SNAPSHOT~89e92d59f6 1.52.0-SNAPSHOT~005f71100e
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1752132882 1752132882
ci_job_id 1022164491 1022164491
ci_pipeline_id 70137463 70137463
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-7c7oovqr 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-7c7oovqr 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

Found 3 performance improvements and 0 performance regressions! Performance is the same for 9 metrics, 12 unstable metrics.

scenario Δ mean http_req_duration Δ mean throughput candidate mean http_req_duration candidate mean throughput baseline mean http_req_duration baseline mean throughput
scenario:load:insecure-bank:tracing:high_load better
[-585.732µs; -344.149µs] or [-7.414%; -4.356%]
unstable
[-40.418op/s; +112.793op/s] or [-6.891%; +19.232%]
7.436ms 622.688op/s 7.900ms 586.500op/s
scenario:load:insecure-bank:iast:high_load better
[-551.834µs; -209.762µs] or [-5.798%; -2.204%]
unstable
[-44.100op/s; +83.850op/s] or [-9.036%; +17.180%]
9.137ms 507.938op/s 9.518ms 488.062op/s
scenario:load:petclinic:appsec:high_load better
[-2.555ms; -1.614ms] or [-5.076%; -3.205%]
unstable
[-3.271op/s; +11.296op/s] or [-3.517%; +12.144%]
48.254ms 97.025op/s 50.339ms 93.013op/s
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.52.0-SNAPSHOT~005f71100e, baseline=1.52.0-SNAPSHOT~89e92d59f6
    dateFormat X
    axisFormat %s
section baseline
no_agent (36.044 ms) : 35744, 36343
.   : milestone, 36044,
appsec (50.339 ms) : 49881, 50796
.   : milestone, 50339,
code_origins (44.832 ms) : 44460, 45204
.   : milestone, 44832,
iast (42.755 ms) : 42397, 43113
.   : milestone, 42755,
profiling (46.558 ms) : 46088, 47027
.   : milestone, 46558,
tracing (43.663 ms) : 43306, 44020
.   : milestone, 43663,
section candidate
no_agent (36.514 ms) : 36218, 36811
.   : milestone, 36514,
appsec (48.254 ms) : 47838, 48670
.   : milestone, 48254,
code_origins (44.508 ms) : 44136, 44880
.   : milestone, 44508,
iast (42.819 ms) : 42464, 43175
.   : milestone, 42819,
profiling (46.494 ms) : 46067, 46922
.   : milestone, 46494,
tracing (44.014 ms) : 43652, 44375
.   : milestone, 44014,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 36.044 ms [35.744 ms, 36.343 ms] -
appsec 50.339 ms [49.881 ms, 50.796 ms] 14.295 ms (39.7%)
code_origins 44.832 ms [44.46 ms, 45.204 ms] 8.788 ms (24.4%)
iast 42.755 ms [42.397 ms, 43.113 ms] 6.711 ms (18.6%)
profiling 46.558 ms [46.088 ms, 47.027 ms] 10.514 ms (29.2%)
tracing 43.663 ms [43.306 ms, 44.02 ms] 7.619 ms (21.1%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 36.514 ms [36.218 ms, 36.811 ms] -
appsec 48.254 ms [47.838 ms, 48.67 ms] 11.74 ms (32.2%)
code_origins 44.508 ms [44.136 ms, 44.88 ms] 7.994 ms (21.9%)
iast 42.819 ms [42.464 ms, 43.175 ms] 6.305 ms (17.3%)
profiling 46.494 ms [46.067 ms, 46.922 ms] 9.98 ms (27.3%)
tracing 44.014 ms [43.652 ms, 44.375 ms] 7.5 ms (20.5%)
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.52.0-SNAPSHOT~005f71100e, baseline=1.52.0-SNAPSHOT~89e92d59f6
    dateFormat X
    axisFormat %s
section baseline
no_agent (4.316 ms) : 4267, 4365
.   : milestone, 4316,
iast (9.518 ms) : 9351, 9685
.   : milestone, 9518,
iast_FULL (13.79 ms) : 13513, 14067
.   : milestone, 13790,
iast_GLOBAL (9.987 ms) : 9810, 10165
.   : milestone, 9987,
profiling (8.865 ms) : 8718, 9012
.   : milestone, 8865,
tracing (7.9 ms) : 7787, 8014
.   : milestone, 7900,
section candidate
no_agent (4.371 ms) : 4323, 4420
.   : milestone, 4371,
iast (9.137 ms) : 8986, 9287
.   : milestone, 9137,
iast_FULL (13.731 ms) : 13461, 14001
.   : milestone, 13731,
iast_GLOBAL (10.362 ms) : 10181, 10544
.   : milestone, 10362,
profiling (8.699 ms) : 8556, 8843
.   : milestone, 8699,
tracing (7.436 ms) : 7324, 7547
.   : milestone, 7436,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 4.316 ms [4.267 ms, 4.365 ms] -
iast 9.518 ms [9.351 ms, 9.685 ms] 5.202 ms (120.5%)
iast_FULL 13.79 ms [13.513 ms, 14.067 ms] 9.474 ms (219.5%)
iast_GLOBAL 9.987 ms [9.81 ms, 10.165 ms] 5.671 ms (131.4%)
profiling 8.865 ms [8.718 ms, 9.012 ms] 4.549 ms (105.4%)
tracing 7.9 ms [7.787 ms, 8.014 ms] 3.584 ms (83.1%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 4.371 ms [4.323 ms, 4.42 ms] -
iast 9.137 ms [8.986 ms, 9.287 ms] 4.766 ms (109.0%)
iast_FULL 13.731 ms [13.461 ms, 14.001 ms] 9.36 ms (214.1%)
iast_GLOBAL 10.362 ms [10.181 ms, 10.544 ms] 5.991 ms (137.1%)
profiling 8.699 ms [8.556 ms, 8.843 ms] 4.328 ms (99.0%)
tracing 7.436 ms [7.324 ms, 7.547 ms] 3.064 ms (70.1%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master andrea.marziali/css2
git_commit_date 1752084850 1752131308
git_commit_sha 89e92d5 005f711
release_version 1.52.0-SNAPSHOT~89e92d59f6 1.52.0-SNAPSHOT~005f71100e
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1752133385 1752133385
ci_job_id 1022164492 1022164492
ci_pipeline_id 70137463 70137463
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-606p4how 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-606p4how 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 0 unstable metrics.

Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.52.0-SNAPSHOT~005f71100e, baseline=1.52.0-SNAPSHOT~89e92d59f6
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.478 ms) : 1466, 1489
.   : milestone, 1478,
appsec (2.42 ms) : 2369, 2470
.   : milestone, 2420,
iast (2.198 ms) : 2134, 2261
.   : milestone, 2198,
iast_GLOBAL (2.25 ms) : 2187, 2313
.   : milestone, 2250,
profiling (2.068 ms) : 2016, 2120
.   : milestone, 2068,
tracing (2.024 ms) : 1975, 2073
.   : milestone, 2024,
section candidate
no_agent (1.478 ms) : 1466, 1489
.   : milestone, 1478,
appsec (2.426 ms) : 2375, 2476
.   : milestone, 2426,
iast (2.197 ms) : 2134, 2260
.   : milestone, 2197,
iast_GLOBAL (2.251 ms) : 2188, 2314
.   : milestone, 2251,
profiling (2.051 ms) : 2000, 2103
.   : milestone, 2051,
tracing (2.023 ms) : 1975, 2072
.   : milestone, 2023,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.478 ms [1.466 ms, 1.489 ms] -
appsec 2.42 ms [2.369 ms, 2.47 ms] 941.855 µs (63.7%)
iast 2.198 ms [2.134 ms, 2.261 ms] 720.121 µs (48.7%)
iast_GLOBAL 2.25 ms [2.187 ms, 2.313 ms] 772.201 µs (52.3%)
profiling 2.068 ms [2.016 ms, 2.12 ms] 590.129 µs (39.9%)
tracing 2.024 ms [1.975 ms, 2.073 ms] 546.465 µs (37.0%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.478 ms [1.466 ms, 1.489 ms] -
appsec 2.426 ms [2.375 ms, 2.476 ms] 948.399 µs (64.2%)
iast 2.197 ms [2.134 ms, 2.26 ms] 719.586 µs (48.7%)
iast_GLOBAL 2.251 ms [2.188 ms, 2.314 ms] 773.281 µs (52.3%)
profiling 2.051 ms [2.0 ms, 2.103 ms] 573.661 µs (38.8%)
tracing 2.023 ms [1.975 ms, 2.072 ms] 545.947 µs (37.0%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.52.0-SNAPSHOT~005f71100e, baseline=1.52.0-SNAPSHOT~89e92d59f6
    dateFormat X
    axisFormat %s
section baseline
no_agent (14.928 s) : 14928000, 14928000
.   : milestone, 14928000,
appsec (15.079 s) : 15079000, 15079000
.   : milestone, 15079000,
iast (18.546 s) : 18546000, 18546000
.   : milestone, 18546000,
iast_GLOBAL (18.246 s) : 18246000, 18246000
.   : milestone, 18246000,
profiling (15.116 s) : 15116000, 15116000
.   : milestone, 15116000,
tracing (14.677 s) : 14677000, 14677000
.   : milestone, 14677000,
section candidate
no_agent (14.889 s) : 14889000, 14889000
.   : milestone, 14889000,
appsec (15.026 s) : 15026000, 15026000
.   : milestone, 15026000,
iast (18.385 s) : 18385000, 18385000
.   : milestone, 18385000,
iast_GLOBAL (18.232 s) : 18232000, 18232000
.   : milestone, 18232000,
profiling (15.317 s) : 15317000, 15317000
.   : milestone, 15317000,
tracing (14.878 s) : 14878000, 14878000
.   : milestone, 14878000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.928 s [14.928 s, 14.928 s] -
appsec 15.079 s [15.079 s, 15.079 s] 151.0 ms (1.0%)
iast 18.546 s [18.546 s, 18.546 s] 3.618 s (24.2%)
iast_GLOBAL 18.246 s [18.246 s, 18.246 s] 3.318 s (22.2%)
profiling 15.116 s [15.116 s, 15.116 s] 188.0 ms (1.3%)
tracing 14.677 s [14.677 s, 14.677 s] -251.0 ms (-1.7%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.889 s [14.889 s, 14.889 s] -
appsec 15.026 s [15.026 s, 15.026 s] 137.0 ms (0.9%)
iast 18.385 s [18.385 s, 18.385 s] 3.496 s (23.5%)
iast_GLOBAL 18.232 s [18.232 s, 18.232 s] 3.343 s (22.5%)
profiling 15.317 s [15.317 s, 15.317 s] 428.0 ms (2.9%)
tracing 14.878 s [14.878 s, 14.878 s] -11.0 ms (-0.1%)

@amarziali amarziali enabled auto-merge (squash) July 9, 2025 18:14
@amarziali amarziali force-pushed the andrea.marziali/css2 branch from a60b5ec to 7578162 Compare July 9, 2025 18:25
@amarziali amarziali force-pushed the andrea.marziali/css2 branch from 7578162 to bfc6609 Compare July 9, 2025 21:52
Copy link
Contributor

@PerfectSlayer PerfectSlayer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would have gone with the holder pattern as doubled-check locking is definitely to easy to get wrong. But it should be better than the current implementation 👍

Copy link
Contributor

@mcculls mcculls left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1

re. holder pattern - since this construction takes arguments it's hard to apply the holder pattern, so in this case double-check locking makes sense

@amarziali amarziali merged commit 956f570 into master Jul 10, 2025
507 checks passed
@amarziali amarziali deleted the andrea.marziali/css2 branch July 10, 2025 08:47
@github-actions github-actions bot added this to the 1.52.0 milestone Jul 10, 2025
daniel-mohedano pushed a commit that referenced this pull request Jul 15, 2025
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request Aug 5, 2025
| Package | Type | Package file | Manager | Update | Change |
|---|---|---|---|---|---|
| [redis.clients:jedis](https://github.com/redis/jedis) | dependencies |
misk/gradle/libs.versions.toml | gradle | minor | `6.0.0` -> `6.1.0` |
|
[com.google.api.grpc:proto-google-common-protos](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`2.59.2` -> `2.60.0` |
|
[com.google.cloud:google-cloud-core-http](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`2.58.2` -> `2.59.0` |
|
[com.google.cloud:google-cloud-core](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`2.58.2` -> `2.59.0` |
| [com.google.api:gax](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`2.68.2` -> `2.69.0` |
| [com.squareup.wire](https://github.com/square/wire) | plugin |
misk/gradle/libs.versions.toml | gradle | patch | `5.3.5` -> `5.3.6` |
| [com.squareup.wire:wire-schema](https://github.com/square/wire) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5`
-> `5.3.6` |
| [com.squareup.wire:wire-runtime](https://github.com/square/wire) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5`
-> `5.3.6` |
| [com.squareup.wire:wire-reflector](https://github.com/square/wire) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5`
-> `5.3.6` |
| [com.squareup.wire:wire-moshi-adapter](https://github.com/square/wire)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`5.3.5` -> `5.3.6` |
| [com.squareup.wire:wire-grpc-client](https://github.com/square/wire) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5`
-> `5.3.6` |
| [com.squareup.wire:wire-bom](https://github.com/square/wire) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.5`
-> `5.3.6` |
| [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.51.2` -> `1.52.0` |
| [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.32.14` -> `2.32.15` |
| [software.amazon.awssdk:sqs](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.32.14` -> `2.32.15` |
| [software.amazon.awssdk:regions](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.32.14` -> `2.32.15` |
|
[software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.32.14` -> `2.32.15` |
| [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.32.14` -> `2.32.15` |
| [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.32.14` -> `2.32.15` |
| [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.32.14` -> `2.32.15` |
| [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.32.14` -> `2.32.15` |

---

### Release Notes

<details>
<summary>redis/jedis (redis.clients:jedis)</summary>

### [`v6.1.0`](https://github.com/redis/jedis/releases/tag/v6.1.0):
6.1.0

### Changes

#### 🚀 New Features

- Add support for SVS-VAMANA vector indexing
([#&#8203;4222](redis/jedis#4222))
- Clarify why new stream entries aren't deleted with XDELEX
([#&#8203;4218](redis/jedis#4218))
- Add support for new stream commands
([#&#8203;4211](redis/jedis#4211))
- Add Support for New BITOP Operations in Redis 8.2
([#&#8203;4188](redis/jedis#4188))
([#&#8203;4190](redis/jedis#4190))
- Add binary stream support for XREAD and XREADGROUP
([#&#8203;3566](redis/jedis#3566))
([#&#8203;4152](redis/jedis#4152))
- Run pipeline in current thread if all the keys on same node
([#&#8203;4149](redis/jedis#4149))

#### 🐛 Bug Fixes

- Restore binary compatibility of SetParams
([#&#8203;4225](redis/jedis#4225))
- Fix memory leak in JedisClusterInfoCache - replica nodes not cleared
([#&#8203;4205](redis/jedis#4205))
- Fix:JedisCluster throws NullPointerException when maxAttempts is set
to 0 ([#&#8203;4186](redis/jedis#4186))

#### 🧰 Maintenance

- DOC-5471 time series doc examples
([#&#8203;4210](redis/jedis#4210))
- Bump jackson.version from 2.19.1 to 2.19.2
([#&#8203;4208](redis/jedis#4208))
- Fix flaky test ClientCommandsTest.killSkipmeYesNo
([#&#8203;4206](redis/jedis#4206))
- Bump org.junit:junit-bom from 5.13.2 to 5.13.3
([#&#8203;4198](redis/jedis#4198))
- Migrate publishing to Maven Central Portal
([#&#8203;4199](redis/jedis#4199))
- Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.7 to 3.2.8
([#&#8203;4197](redis/jedis#4197))
- Bump org.junit:junit-bom from 5.13.1 to 5.13.2
([#&#8203;4192](redis/jedis#4192))
- DOC-5227 added probabilistic data type examples
([#&#8203;4184](redis/jedis#4184))
- Bump jackson.version from 2.19.0 to 2.19.1
([#&#8203;4180](redis/jedis#4180))
- Update test infra to use latest Redis
([#&#8203;4179](redis/jedis#4179))
- Bump org.junit:junit-bom from 5.13.0-RC1 to 5.13.1
([#&#8203;4174](redis/jedis#4174))
- Bump org.json:json from
[`2025010`](redis/jedis@20250107) to
[`2025051`](redis/jedis@20250517)
([#&#8203;4171](redis/jedis#4171))
- Bump org.apache.httpcomponents.client5:httpclient5-fluent from 5.4.4
to 5.5 ([#&#8203;4170](redis/jedis#4170))
- Fix flaky tests in DocumentTest
([#&#8203;3617](redis/jedis#3617))
- Add retryable command execution example
([#&#8203;3780](redis/jedis#3780))
- Bump jackson.version from 2.18.3 to 2.19.0
([#&#8203;4160](redis/jedis#4160))
- Bump com.google.code.gson:gson from 2.12.1 to 2.13.1
([#&#8203;4161](redis/jedis#4161))

#### Contributors

We'd like to thank all the contributors who worked on this release!

[@&#8203;219sansim](https://github.com/219sansim),
[@&#8203;YoHanKi](https://github.com/YoHanKi),
[@&#8203;andy-stark-redis](https://github.com/andy-stark-redis),
[@&#8203;ggivo](https://github.com/ggivo),
[@&#8203;jujn](https://github.com/jujn),
[@&#8203;thachlp](https://github.com/thachlp),
[@&#8203;uglide](https://github.com/uglide) and
[@&#8203;xrayw](https://github.com/xrayw)

</details>

<details>
<summary>googleapis/sdk-platform-java
(com.google.api.grpc:proto-google-common-protos)</summary>

###
[`v2.60.0`](https://github.com/googleapis/sdk-platform-java/blob/HEAD/CHANGELOG.md#2600-2025-06-23)

##### Features

- handle auto pagination for BigQuery v2
([#&#8203;3829](googleapis/sdk-platform-java#3829))
([025c84c](googleapis/sdk-platform-java@025c84c))

##### Dependencies

- update google auth library dependencies to v1.37.1
([#&#8203;3846](googleapis/sdk-platform-java#3846))
([ea1d9e5](googleapis/sdk-platform-java@ea1d9e5))
- update google http client dependencies to v1.47.1
([#&#8203;3848](googleapis/sdk-platform-java#3848))
([a9a39d7](googleapis/sdk-platform-java@a9a39d7))

</details>

<details>
<summary>square/wire (com.squareup.wire)</summary>

###
[`v5.3.6`](https://github.com/square/wire/blob/HEAD/CHANGELOG.md#Version-536)

[Compare Source](square/wire@5.3.5...5.3.6)

*2025-08-05*

##### CLI

- New CLI option `--ignore_unused_roots_and_prunes`
([#&#8203;3354](square/wire#3354))

##### JVM

- Fix: Handle negative hexadecimal in default values
([#&#8203;3355](square/wire#3355))
- Optimization: Avoid copying of repeated and map types when
mutableTypes are being used
([#&#8203;3352](square/wire#3352) by \[Rahul
Ravikumar]\[tikurahul])

##### Swift

- Fix: Properly disambiguate OneOf enum if it has the same name as
enclosing type
([#&#8203;3350](square/wire#3350) by
\[Dimitris Koutsogiorgas]\[dnkoutso])

</details>

<details>
<summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary>

###
[`v1.52.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.52.0):
1.52.0

### Components

#### Application Security Management (WAF)

- ✨ Only report ASM\_DD, ASM\_DATA and ASM capabilities when
AppSec is enabled
([#&#8203;9260](DataDog/dd-trace-java#9260) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- 🐛 Fix NPE in AppSecConfigServiceImpl
([#&#8203;9165](DataDog/dd-trace-java#9165) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- 🐛 Fix AppSec play.mvc.StatusHeader instrumentation for play 2.6
([#&#8203;9160](DataDog/dd-trace-java#9160) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))

#### Build & Tooling

- ✨📖 Automatically register crashtracking via native
extensions
([#&#8203;8851](DataDog/dd-trace-java#8851) -
[@&#8203;MattAlp](https://github.com/MattAlp))

#### Configuration at Runtime

- ✨ Create activation origin config for telemetry
([#&#8203;9064](DataDog/dd-trace-java#9064) -
[@&#8203;sezen-datadog](https://github.com/sezen-datadog))

#### Continuous Integration Visibility

- ✨ Update GitLab provided tags
([#&#8203;9275](DataDog/dd-trace-java#9275) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- 🐛 Fix base branch SHA usage in GitHub Actions
([#&#8203;9257](DataDog/dd-trace-java#9257) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Add `ci.job.id` tag
([#&#8203;9256](DataDog/dd-trace-java#9256) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Add new org to Weaver instrumentation
([#&#8203;9235](DataDog/dd-trace-java#9235) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano) - thanks
for the contribution!)
- ✨ Improve Git commit info building
([#&#8203;9210](DataDog/dd-trace-java#9210) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Update Attempt to Fix to v5
([#&#8203;9145](DataDog/dd-trace-java#9145) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))

#### Crash tracking

- ✨📖 Automatically register crashtracking via native
extensions
([#&#8203;8851](DataDog/dd-trace-java#8851) -
[@&#8203;MattAlp](https://github.com/MattAlp))

#### Data Streams Monitoring

- ✨ Reduce DSM CPU overheard
([#&#8203;9151](DataDog/dd-trace-java#9151) -
[@&#8203;kr-igor](https://github.com/kr-igor))
- ✨⚡ DSM optimizations for high throughput scenarios
([#&#8203;9137](DataDog/dd-trace-java#9137) -
[@&#8203;kr-igor](https://github.com/kr-igor))

#### Database Monitoring

- 🐛 Fix duplicate trace injection for SQL Server and Oracle DBM full
propagation mode
([#&#8203;9224](DataDog/dd-trace-java#9224) -
[@&#8203;lu-zhengda](https://github.com/lu-zhengda))

#### Dynamic Instrumentation

- 🐛 Add URI in string primitives
([#&#8203;9285](DataDog/dd-trace-java#9285) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Increase SourceFile tracking max queue size
([#&#8203;9271](DataDog/dd-trace-java#9271) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Add capping on SourceFile tracking queue
([#&#8203;9245](DataDog/dd-trace-java#9245) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Add third-party filtering in SourceFile tracking
([#&#8203;9205](DataDog/dd-trace-java#9205) -
[@&#8203;jpbempel](https://github.com/jpbempel))

#### ML Observability (LLMObs)

- ✨ Add methods to capture embedding and retrieval spans
([#&#8203;9297](DataDog/dd-trace-java#9297) -
[@&#8203;nayeem-kamal](https://github.com/nayeem-kamal))

#### Metrics

- ✨ Change primary client stats configuration key
([#&#8203;9196](DataDog/dd-trace-java#9196) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Calculate client stats also if the span kind is eligible
([#&#8203;9157](DataDog/dd-trace-java#9157) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Backpropagate peer tags
([#&#8203;9144](DataDog/dd-trace-java#9144) -
[@&#8203;bric3](https://github.com/bric3))
- 🐛 Make client stats reliable in case of downgrade
([#&#8203;9136](DataDog/dd-trace-java#9136) -
[@&#8203;amarziali](https://github.com/amarziali))

#### Platform components

- 🐛 Fix VM options parsing from /proc/fs
([#&#8203;9255](DataDog/dd-trace-java#9255) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))

#### Profiling

- ✨ Switch profile compression to zstd default
([#&#8203;9293](DataDog/dd-trace-java#9293) -
[@&#8203;jbachorik](https://github.com/jbachorik))

- ✨ Bump ddprof to 1.29.0
([#&#8203;9262](DataDog/dd-trace-java#9262) -
[@&#8203;zhengyu123](https://github.com/zhengyu123))
- Potential memory leak and race with the JVMTI wallclock sampler by
[@&#8203;zhengyu123](https://github.com/zhengyu123) in
DataDog/java-profiler#234
- Downport async-profiler no-allocation changes by
[@&#8203;zhengyu123](https://github.com/zhengyu123) in
DataDog/java-profiler#245
- Adopt openjdk safefetch by
[@&#8203;zhengyu123](https://github.com/zhengyu123) in
DataDog/java-profiler#246
- Safe fetch 64-bit value and pointer by
[@&#8203;zhengyu123](https://github.com/zhengyu123) in
DataDog/java-profiler#247
- Rebase on Async-Profiler 4.1 by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#252
- Patch upstream stackWalker.cpp not to fail on unaligned access by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#218
- Remap thread id to avoid bitmap contention by
[@&#8203;zhengyu123](https://github.com/zhengyu123) in
DataDog/java-profiler#229
- Improve performance using Unsafe to activate/deactivate thread filter
by [@&#8203;zhengyu123](https://github.com/zhengyu123) in
DataDog/java-profiler#230
- Unify context propagation by
[@&#8203;zhengyu123](https://github.com/zhengyu123) in
DataDog/java-profiler#231

- 🐛 Fix the profiler stackdepth setting propagation in recent (22+)
Java versions
([#&#8203;9130](DataDog/dd-trace-java#9130) -
[@&#8203;jbachorik](https://github.com/jbachorik))

#### Realtime User Monitoring

- ✨ Wrap servlet original PrintWriter on rum injector
([#&#8203;9146](DataDog/dd-trace-java#9146) -
[@&#8203;amarziali](https://github.com/amarziali))

#### Telemetry

- ✨ Create activation origin config for telemetry
([#&#8203;9064](DataDog/dd-trace-java#9064) -
[@&#8203;sezen-datadog](https://github.com/sezen-datadog))

#### Tracer core

- ✨⚡ Reduce span construction overhead by switching to
optimized TagMap
([#&#8203;8589](DataDog/dd-trace-java#8589) -
[@&#8203;dougqh](https://github.com/dougqh))
- 🐛 Match Hands Off Config selectors on process\_arguments value
([#&#8203;9201](DataDog/dd-trace-java#9201) -
[@&#8203;paullegranddc](https://github.com/paullegranddc))
- ✨ Move JSON generation to sender thread to improve startup
time.
([#&#8203;9197](DataDog/dd-trace-java#9197) -
[@&#8203;AlexeyKuznetsov-DD](https://github.com/AlexeyKuznetsov-DD))
- ✨ Improve agent to avoid loading global config on main thread
([#&#8203;9190](DataDog/dd-trace-java#9190) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨ add injection metadata fields to telemetry forwarder
([#&#8203;9185](DataDog/dd-trace-java#9185) -
[@&#8203;sydney-tung](https://github.com/sydney-tung))
- 🐛 Avoid race conditions on feature discovery during Writer
creation
([#&#8203;9173](DataDog/dd-trace-java#9173) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Surface potential root cause when agent initialization
errors
([#&#8203;9170](DataDog/dd-trace-java#9170) -
[@&#8203;AlexeyKuznetsov-DD](https://github.com/AlexeyKuznetsov-DD))
- 💡 Support adding W3C baggage as span tags
([#&#8203;9169](DataDog/dd-trace-java#9169) -
[@&#8203;rachelyangdog](https://github.com/rachelyangdog))
- ✨⚡ Align our default classloader excludes with OTel
([#&#8203;9161](DataDog/dd-trace-java#9161) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨ Backpropagate container tags hash coming from the info
endpoint
([#&#8203;9156](DataDog/dd-trace-java#9156) -
[@&#8203;amarziali](https://github.com/amarziali))
- 🐛 Avoid race conditions and multiple agent discovery feature
states
([#&#8203;9135](DataDog/dd-trace-java#9135) -
[@&#8203;amarziali](https://github.com/amarziali))

### Instrumentations

#### AWS SDK instrumentation

- ✨ Enhance Service Representation for Serverless
([#&#8203;9203](DataDog/dd-trace-java#9203) -
[@&#8203;zarirhamza](https://github.com/zarirhamza))

#### gRPC instrumentation

- 🐛 Add check to prevent injection of repeated GRPC headers
([#&#8203;9246](DataDog/dd-trace-java#9246) -
[@&#8203;mhlidd](https://github.com/mhlidd))

#### JDBC instrumentation

- 🐛 Fix duplicate trace injection for SQL Server and Oracle DBM full
propagation mode
([#&#8203;9224](DataDog/dd-trace-java#9224) -
[@&#8203;lu-zhengda](https://github.com/lu-zhengda))

#### Play Framework instrumentation

- 🐛 Fix AppSec play.mvc.StatusHeader instrumentation for play 2.6
([#&#8203;9160](DataDog/dd-trace-java#9160) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 6pm every weekday,before 2am
every weekday" in timezone Australia/Melbourne, Automerge - At any time
(no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Never, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://github.com/renovatebot/renovate).

GitOrigin-RevId: 9da36329ffa552291a640381780b608ef6513e29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
comp: core Tracer core type: bug Bug report and fix
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants