-
Notifications
You must be signed in to change notification settings - Fork 312
Avoid race conditions and multiple agent discovery feature states #9135
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
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 45 metrics, 8 unstable metrics. Startup time reports for petclinicgantt
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
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
Startup time reports for insecure-bankgantt
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
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
LoadParameters
See matching parameters
SummaryFound 3 performance improvements and 0 performance regressions! Performance is the same for 9 metrics, 12 unstable metrics.
Request duration reports for petclinicgantt
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,
Request duration reports for insecure-bankgantt
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,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 0 unstable metrics. Execution time for tomcatgantt
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,
Execution time for biojavagantt
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,
|
a60b5ec
to
7578162
Compare
7578162
to
bfc6609
Compare
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.
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 👍
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.
+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
) (cherry picked from commit 956f570)
| 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 ([#​4222](redis/jedis#4222)) - Clarify why new stream entries aren't deleted with XDELEX ([#​4218](redis/jedis#4218)) - Add support for new stream commands ([#​4211](redis/jedis#4211)) - Add Support for New BITOP Operations in Redis 8.2 ([#​4188](redis/jedis#4188)) ([#​4190](redis/jedis#4190)) - Add binary stream support for XREAD and XREADGROUP ([#​3566](redis/jedis#3566)) ([#​4152](redis/jedis#4152)) - Run pipeline in current thread if all the keys on same node ([#​4149](redis/jedis#4149)) #### 🐛 Bug Fixes - Restore binary compatibility of SetParams ([#​4225](redis/jedis#4225)) - Fix memory leak in JedisClusterInfoCache - replica nodes not cleared ([#​4205](redis/jedis#4205)) - Fix:JedisCluster throws NullPointerException when maxAttempts is set to 0 ([#​4186](redis/jedis#4186)) #### 🧰 Maintenance - DOC-5471 time series doc examples ([#​4210](redis/jedis#4210)) - Bump jackson.version from 2.19.1 to 2.19.2 ([#​4208](redis/jedis#4208)) - Fix flaky test ClientCommandsTest.killSkipmeYesNo ([#​4206](redis/jedis#4206)) - Bump org.junit:junit-bom from 5.13.2 to 5.13.3 ([#​4198](redis/jedis#4198)) - Migrate publishing to Maven Central Portal ([#​4199](redis/jedis#4199)) - Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.7 to 3.2.8 ([#​4197](redis/jedis#4197)) - Bump org.junit:junit-bom from 5.13.1 to 5.13.2 ([#​4192](redis/jedis#4192)) - DOC-5227 added probabilistic data type examples ([#​4184](redis/jedis#4184)) - Bump jackson.version from 2.19.0 to 2.19.1 ([#​4180](redis/jedis#4180)) - Update test infra to use latest Redis ([#​4179](redis/jedis#4179)) - Bump org.junit:junit-bom from 5.13.0-RC1 to 5.13.1 ([#​4174](redis/jedis#4174)) - Bump org.json:json from [`2025010`](redis/jedis@20250107) to [`2025051`](redis/jedis@20250517) ([#​4171](redis/jedis#4171)) - Bump org.apache.httpcomponents.client5:httpclient5-fluent from 5.4.4 to 5.5 ([#​4170](redis/jedis#4170)) - Fix flaky tests in DocumentTest ([#​3617](redis/jedis#3617)) - Add retryable command execution example ([#​3780](redis/jedis#3780)) - Bump jackson.version from 2.18.3 to 2.19.0 ([#​4160](redis/jedis#4160)) - Bump com.google.code.gson:gson from 2.12.1 to 2.13.1 ([#​4161](redis/jedis#4161)) #### Contributors We'd like to thank all the contributors who worked on this release! [@​219sansim](https://github.com/219sansim), [@​YoHanKi](https://github.com/YoHanKi), [@​andy-stark-redis](https://github.com/andy-stark-redis), [@​ggivo](https://github.com/ggivo), [@​jujn](https://github.com/jujn), [@​thachlp](https://github.com/thachlp), [@​uglide](https://github.com/uglide) and [@​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 ([#​3829](googleapis/sdk-platform-java#3829)) ([025c84c](googleapis/sdk-platform-java@025c84c)) ##### Dependencies - update google auth library dependencies to v1.37.1 ([#​3846](googleapis/sdk-platform-java#3846)) ([ea1d9e5](googleapis/sdk-platform-java@ea1d9e5)) - update google http client dependencies to v1.47.1 ([#​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` ([#​3354](square/wire#3354)) ##### JVM - Fix: Handle negative hexadecimal in default values ([#​3355](square/wire#3355)) - Optimization: Avoid copying of repeated and map types when mutableTypes are being used ([#​3352](square/wire#3352) by \[Rahul Ravikumar]\[tikurahul]) ##### Swift - Fix: Properly disambiguate OneOf enum if it has the same name as enclosing type ([#​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 ([#​9260](DataDog/dd-trace-java#9260) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - 🐛 Fix NPE in AppSecConfigServiceImpl ([#​9165](DataDog/dd-trace-java#9165) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - 🐛 Fix AppSec play.mvc.StatusHeader instrumentation for play 2.6 ([#​9160](DataDog/dd-trace-java#9160) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) #### Build & Tooling - ✨📖 Automatically register crashtracking via native extensions ([#​8851](DataDog/dd-trace-java#8851) - [@​MattAlp](https://github.com/MattAlp)) #### Configuration at Runtime - ✨ Create activation origin config for telemetry ([#​9064](DataDog/dd-trace-java#9064) - [@​sezen-datadog](https://github.com/sezen-datadog)) #### Continuous Integration Visibility - ✨ Update GitLab provided tags ([#​9275](DataDog/dd-trace-java#9275) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - 🐛 Fix base branch SHA usage in GitHub Actions ([#​9257](DataDog/dd-trace-java#9257) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Add `ci.job.id` tag ([#​9256](DataDog/dd-trace-java#9256) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Add new org to Weaver instrumentation ([#​9235](DataDog/dd-trace-java#9235) - [@​daniel-mohedano](https://github.com/daniel-mohedano) - thanks for the contribution!) - ✨ Improve Git commit info building ([#​9210](DataDog/dd-trace-java#9210) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Update Attempt to Fix to v5 ([#​9145](DataDog/dd-trace-java#9145) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) #### Crash tracking - ✨📖 Automatically register crashtracking via native extensions ([#​8851](DataDog/dd-trace-java#8851) - [@​MattAlp](https://github.com/MattAlp)) #### Data Streams Monitoring - ✨ Reduce DSM CPU overheard ([#​9151](DataDog/dd-trace-java#9151) - [@​kr-igor](https://github.com/kr-igor)) - ✨⚡ DSM optimizations for high throughput scenarios ([#​9137](DataDog/dd-trace-java#9137) - [@​kr-igor](https://github.com/kr-igor)) #### Database Monitoring - 🐛 Fix duplicate trace injection for SQL Server and Oracle DBM full propagation mode ([#​9224](DataDog/dd-trace-java#9224) - [@​lu-zhengda](https://github.com/lu-zhengda)) #### Dynamic Instrumentation - 🐛 Add URI in string primitives ([#​9285](DataDog/dd-trace-java#9285) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Increase SourceFile tracking max queue size ([#​9271](DataDog/dd-trace-java#9271) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add capping on SourceFile tracking queue ([#​9245](DataDog/dd-trace-java#9245) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add third-party filtering in SourceFile tracking ([#​9205](DataDog/dd-trace-java#9205) - [@​jpbempel](https://github.com/jpbempel)) #### ML Observability (LLMObs) - ✨ Add methods to capture embedding and retrieval spans ([#​9297](DataDog/dd-trace-java#9297) - [@​nayeem-kamal](https://github.com/nayeem-kamal)) #### Metrics - ✨ Change primary client stats configuration key ([#​9196](DataDog/dd-trace-java#9196) - [@​amarziali](https://github.com/amarziali)) - ✨ Calculate client stats also if the span kind is eligible ([#​9157](DataDog/dd-trace-java#9157) - [@​amarziali](https://github.com/amarziali)) - ✨ Backpropagate peer tags ([#​9144](DataDog/dd-trace-java#9144) - [@​bric3](https://github.com/bric3)) - 🐛 Make client stats reliable in case of downgrade ([#​9136](DataDog/dd-trace-java#9136) - [@​amarziali](https://github.com/amarziali)) #### Platform components - 🐛 Fix VM options parsing from /proc/fs ([#​9255](DataDog/dd-trace-java#9255) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) #### Profiling - ✨ Switch profile compression to zstd default ([#​9293](DataDog/dd-trace-java#9293) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Bump ddprof to 1.29.0 ([#​9262](DataDog/dd-trace-java#9262) - [@​zhengyu123](https://github.com/zhengyu123)) - Potential memory leak and race with the JVMTI wallclock sampler by [@​zhengyu123](https://github.com/zhengyu123) in DataDog/java-profiler#234 - Downport async-profiler no-allocation changes by [@​zhengyu123](https://github.com/zhengyu123) in DataDog/java-profiler#245 - Adopt openjdk safefetch by [@​zhengyu123](https://github.com/zhengyu123) in DataDog/java-profiler#246 - Safe fetch 64-bit value and pointer by [@​zhengyu123](https://github.com/zhengyu123) in DataDog/java-profiler#247 - Rebase on Async-Profiler 4.1 by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#252 - Patch upstream stackWalker.cpp not to fail on unaligned access by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#218 - Remap thread id to avoid bitmap contention by [@​zhengyu123](https://github.com/zhengyu123) in DataDog/java-profiler#229 - Improve performance using Unsafe to activate/deactivate thread filter by [@​zhengyu123](https://github.com/zhengyu123) in DataDog/java-profiler#230 - Unify context propagation by [@​zhengyu123](https://github.com/zhengyu123) in DataDog/java-profiler#231 - 🐛 Fix the profiler stackdepth setting propagation in recent (22+) Java versions ([#​9130](DataDog/dd-trace-java#9130) - [@​jbachorik](https://github.com/jbachorik)) #### Realtime User Monitoring - ✨ Wrap servlet original PrintWriter on rum injector ([#​9146](DataDog/dd-trace-java#9146) - [@​amarziali](https://github.com/amarziali)) #### Telemetry - ✨ Create activation origin config for telemetry ([#​9064](DataDog/dd-trace-java#9064) - [@​sezen-datadog](https://github.com/sezen-datadog)) #### Tracer core - ✨⚡ Reduce span construction overhead by switching to optimized TagMap ([#​8589](DataDog/dd-trace-java#8589) - [@​dougqh](https://github.com/dougqh)) - 🐛 Match Hands Off Config selectors on process\_arguments value ([#​9201](DataDog/dd-trace-java#9201) - [@​paullegranddc](https://github.com/paullegranddc)) - ✨ Move JSON generation to sender thread to improve startup time. ([#​9197](DataDog/dd-trace-java#9197) - [@​AlexeyKuznetsov-DD](https://github.com/AlexeyKuznetsov-DD)) - ✨ Improve agent to avoid loading global config on main thread ([#​9190](DataDog/dd-trace-java#9190) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - ✨ add injection metadata fields to telemetry forwarder ([#​9185](DataDog/dd-trace-java#9185) - [@​sydney-tung](https://github.com/sydney-tung)) - 🐛 Avoid race conditions on feature discovery during Writer creation ([#​9173](DataDog/dd-trace-java#9173) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Surface potential root cause when agent initialization errors ([#​9170](DataDog/dd-trace-java#9170) - [@​AlexeyKuznetsov-DD](https://github.com/AlexeyKuznetsov-DD)) - 💡 Support adding W3C baggage as span tags ([#​9169](DataDog/dd-trace-java#9169) - [@​rachelyangdog](https://github.com/rachelyangdog)) - ✨⚡ Align our default classloader excludes with OTel ([#​9161](DataDog/dd-trace-java#9161) - [@​mcculls](https://github.com/mcculls)) - ✨ Backpropagate container tags hash coming from the info endpoint ([#​9156](DataDog/dd-trace-java#9156) - [@​amarziali](https://github.com/amarziali)) - 🐛 Avoid race conditions and multiple agent discovery feature states ([#​9135](DataDog/dd-trace-java#9135) - [@​amarziali](https://github.com/amarziali)) ### Instrumentations #### AWS SDK instrumentation - ✨ Enhance Service Representation for Serverless ([#​9203](DataDog/dd-trace-java#9203) - [@​zarirhamza](https://github.com/zarirhamza)) #### gRPC instrumentation - 🐛 Add check to prevent injection of repeated GRPC headers ([#​9246](DataDog/dd-trace-java#9246) - [@​mhlidd](https://github.com/mhlidd)) #### JDBC instrumentation - 🐛 Fix duplicate trace injection for SQL Server and Oracle DBM full propagation mode ([#​9224](DataDog/dd-trace-java#9224) - [@​lu-zhengda](https://github.com/lu-zhengda)) #### Play Framework instrumentation - 🐛 Fix AppSec play.mvc.StatusHeader instrumentation for play 2.6 ([#​9160](DataDog/dd-trace-java#9160) - [@​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
What Does This Do
If multiple calls are done to
SharedCommunicationObjects.featureDiscovery(..)
it might happen that multipleDDAgentFeatureDiscovery
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
type:
and (comp:
orinst:
) labels in addition to any usefull labelsclose
,fix
or any linking keywords when referencing an issue.Use
solves
instead, and assign the PR milestone to the issueJira ticket: [PROJ-IDENT]