- Notifications
You must be signed in to change notification settings - Fork 313
Prevent before callsites targeting constructors in super calls #8549
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
Prevent before callsites targeting constructors in super calls #8549
Conversation
6923877
to e5bb8b6
Compare e5bb8b6
to ee718ed
Compare BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 59 metrics, 4 unstable metrics. Startup time reports for petclinicgantt title petclinic - global startup overhead: candidate=1.48.0-SNAPSHOT~70c362cff4, baseline=1.48.0-SNAPSHOT~0bc5b2f9a1 dateFormat X axisFormat %s section tracing Agent [baseline] (1.04 s) : 0, 1040087 Total [baseline] (10.413 s) : 0, 10413473 Agent [candidate] (1.056 s) : 0, 1056301 Total [candidate] (10.481 s) : 0, 10481097 section appsec Agent [baseline] (1.184 s) : 0, 1184315 Total [baseline] (10.764 s) : 0, 10764024 Agent [candidate] (1.183 s) : 0, 1182965 Total [candidate] (10.744 s) : 0, 10743895 section iast Agent [baseline] (1.178 s) : 0, 1177853 Total [baseline] (11.041 s) : 0, 11040958 Agent [candidate] (1.172 s) : 0, 1172466 Total [candidate] (10.976 s) : 0, 10975662 section profiling Agent [baseline] (1.258 s) : 0, 1258041 Total [baseline] (10.841 s) : 0, 10841134 Agent [candidate] (1.264 s) : 0, 1263647 Total [candidate] (10.849 s) : 0, 10849124
gantt title petclinic - break down per module: candidate=1.48.0-SNAPSHOT~70c362cff4, baseline=1.48.0-SNAPSHOT~0bc5b2f9a1 dateFormat X axisFormat %s section tracing BytebuddyAgent [baseline] (718.121 ms) : 0, 718121 BytebuddyAgent [candidate] (729.096 ms) : 0, 729096 GlobalTracer [baseline] (239.172 ms) : 0, 239172 GlobalTracer [candidate] (243.299 ms) : 0, 243299 AppSec [baseline] (54.484 ms) : 0, 54484 AppSec [candidate] (55.51 ms) : 0, 55510 Remote Config [baseline] (690.232 µs) : 0, 690 Remote Config [candidate] (704.063 µs) : 0, 704 Telemetry [baseline] (12.342 ms) : 0, 12342 Telemetry [candidate] (12.296 ms) : 0, 12296 section appsec BytebuddyAgent [baseline] (736.352 ms) : 0, 736352 BytebuddyAgent [candidate] (735.28 ms) : 0, 735280 GlobalTracer [baseline] (236.539 ms) : 0, 236539 GlobalTracer [candidate] (236.207 ms) : 0, 236207 AppSec [baseline] (176.527 ms) : 0, 176527 AppSec [candidate] (176.55 ms) : 0, 176550 Remote Config [baseline] (665.284 µs) : 0, 665 Remote Config [candidate] (667.167 µs) : 0, 667 Telemetry [baseline] (8.252 ms) : 0, 8252 Telemetry [candidate] (8.257 ms) : 0, 8257 IAST [baseline] (21.444 ms) : 0, 21444 IAST [candidate] (21.605 ms) : 0, 21605 section iast BytebuddyAgent [baseline] (842.145 ms) : 0, 842145 BytebuddyAgent [candidate] (838.67 ms) : 0, 838670 GlobalTracer [baseline] (231.341 ms) : 0, 231341 GlobalTracer [candidate] (230.307 ms) : 0, 230307 AppSec [baseline] (56.433 ms) : 0, 56433 AppSec [candidate] (56.263 ms) : 0, 56263 Remote Config [baseline] (619.09 µs) : 0, 619 Remote Config [candidate] (606.552 µs) : 0, 607 Telemetry [baseline] (8.847 ms) : 0, 8847 Telemetry [candidate] (8.664 ms) : 0, 8664 IAST [baseline] (23.164 ms) : 0, 23164 IAST [candidate] (22.69 ms) : 0, 22690 section profiling BytebuddyAgent [baseline] (708.791 ms) : 0, 708791 BytebuddyAgent [candidate] (711.217 ms) : 0, 711217 GlobalTracer [baseline] (348.674 ms) : 0, 348674 GlobalTracer [candidate] (351.495 ms) : 0, 351495 AppSec [baseline] (54.261 ms) : 0, 54261 AppSec [candidate] (53.707 ms) : 0, 53707 Remote Config [baseline] (675.667 µs) : 0, 676 Remote Config [candidate] (675.325 µs) : 0, 675 Telemetry [baseline] (8.9 ms) : 0, 8900 Telemetry [candidate] (9.072 ms) : 0, 9072 ProfilingAgent [baseline] (96.019 ms) : 0, 96019 ProfilingAgent [candidate] (96.625 ms) : 0, 96625 Profiling [baseline] (96.044 ms) : 0, 96044 Profiling [candidate] (96.649 ms) : 0, 96649 Startup time reports for insecure-bankgantt title insecure-bank - global startup overhead: candidate=1.48.0-SNAPSHOT~70c362cff4, baseline=1.48.0-SNAPSHOT~0bc5b2f9a1 dateFormat X axisFormat %s section tracing Agent [baseline] (1.04 s) : 0, 1040197 Total [baseline] (8.662 s) : 0, 8661694 Agent [candidate] (1.043 s) : 0, 1042774 Total [candidate] (8.681 s) : 0, 8680524 section iast Agent [baseline] (1.172 s) : 0, 1172172 Total [baseline] (9.247 s) : 0, 9247035 Agent [candidate] (1.175 s) : 0, 1175106 Total [candidate] (9.246 s) : 0, 9245875 section iast_HARDCODED_SECRET_DISABLED Agent [baseline] (1.171 s) : 0, 1170644 Total [baseline] (9.248 s) : 0, 9247567 Agent [candidate] (1.174 s) : 0, 1173558 Total [candidate] (9.211 s) : 0, 9211303 section iast_TELEMETRY_OFF Agent [baseline] (1.165 s) : 0, 1164740 Total [baseline] (9.243 s) : 0, 9243354 Agent [candidate] (1.171 s) : 0, 1170934 Total [candidate] (9.242 s) : 0, 9242290
gantt title insecure-bank - break down per module: candidate=1.48.0-SNAPSHOT~70c362cff4, baseline=1.48.0-SNAPSHOT~0bc5b2f9a1 dateFormat X axisFormat %s section tracing BytebuddyAgent [baseline] (718.509 ms) : 0, 718509 BytebuddyAgent [candidate] (717.457 ms) : 0, 717457 GlobalTracer [baseline] (239.327 ms) : 0, 239327 GlobalTracer [candidate] (240.13 ms) : 0, 240130 AppSec [baseline] (54.265 ms) : 0, 54265 AppSec [candidate] (54.809 ms) : 0, 54809 Remote Config [baseline] (685.297 µs) : 0, 685 Remote Config [candidate] (683.784 µs) : 0, 684 Telemetry [baseline] (12.147 ms) : 0, 12147 Telemetry [candidate] (14.42 ms) : 0, 14420 section iast BytebuddyAgent [baseline] (838.052 ms) : 0, 838052 BytebuddyAgent [candidate] (841.575 ms) : 0, 841575 GlobalTracer [baseline] (230.456 ms) : 0, 230456 GlobalTracer [candidate] (230.029 ms) : 0, 230029 IAST [baseline] (22.796 ms) : 0, 22796 IAST [candidate] (23.707 ms) : 0, 23707 AppSec [baseline] (56.184 ms) : 0, 56184 AppSec [candidate] (55.282 ms) : 0, 55282 Remote Config [baseline] (605.562 µs) : 0, 606 Remote Config [candidate] (624.784 µs) : 0, 625 Telemetry [baseline] (8.761 ms) : 0, 8761 Telemetry [candidate] (8.585 ms) : 0, 8585 section iast_HARDCODED_SECRET_DISABLED BytebuddyAgent [baseline] (836.67 ms) : 0, 836670 BytebuddyAgent [candidate] (839.005 ms) : 0, 839005 GlobalTracer [baseline] (230.29 ms) : 0, 230290 GlobalTracer [candidate] (230.768 ms) : 0, 230768 IAST [baseline] (22.948 ms) : 0, 22948 IAST [candidate] (22.972 ms) : 0, 22972 AppSec [baseline] (56.103 ms) : 0, 56103 AppSec [candidate] (56.157 ms) : 0, 56157 Remote Config [baseline] (608.05 µs) : 0, 608 Remote Config [candidate] (603.569 µs) : 0, 604 Telemetry [baseline] (8.642 ms) : 0, 8642 Telemetry [candidate] (8.714 ms) : 0, 8714 section iast_TELEMETRY_OFF BytebuddyAgent [baseline] (832.413 ms) : 0, 832413 BytebuddyAgent [candidate] (836.731 ms) : 0, 836731 GlobalTracer [baseline] (229.795 ms) : 0, 229795 GlobalTracer [candidate] (230.872 ms) : 0, 230872 IAST [baseline] (22.128 ms) : 0, 22128 IAST [candidate] (22.546 ms) : 0, 22546 AppSec [baseline] (56.07 ms) : 0, 56070 AppSec [candidate] (56.302 ms) : 0, 56302 Remote Config [baseline] (608.47 µs) : 0, 608 Remote Config [candidate] (608.508 µs) : 0, 609 Telemetry [baseline] (8.487 ms) : 0, 8487 Telemetry [candidate] (8.577 ms) : 0, 8577 LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 18 unstable metrics. Request duration reports for insecure-bankgantt title insecure-bank - request duration [CI 0.99] : candidate=1.48.0-SNAPSHOT~70c362cff4, baseline=1.48.0-SNAPSHOT~0bc5b2f9a1 dateFormat X axisFormat %s section baseline no_agent (375.973 µs) : 356, 396 . : milestone, 376, iast (506.209 µs) : 485, 528 . : milestone, 506, iast_FULL (725.863 µs) : 704, 748 . : milestone, 726, iast_GLOBAL (549.198 µs) : 528, 571 . : milestone, 549, iast_HARDCODED_SECRET_DISABLED (505.3 µs) : 483, 527 . : milestone, 505, iast_INACTIVE (457.977 µs) : 437, 479 . : milestone, 458, iast_TELEMETRY_OFF (489.571 µs) : 467, 512 . : milestone, 490, tracing (454.165 µs) : 433, 475 . : milestone, 454, section candidate no_agent (377.554 µs) : 358, 397 . : milestone, 378, iast (514.8 µs) : 493, 537 . : milestone, 515, iast_FULL (720.236 µs) : 698, 742 . : milestone, 720, iast_GLOBAL (552.896 µs) : 531, 574 . : milestone, 553, iast_HARDCODED_SECRET_DISABLED (507.609 µs) : 486, 529 . : milestone, 508, iast_INACTIVE (459.036 µs) : 437, 481 . : milestone, 459, iast_TELEMETRY_OFF (493.639 µs) : 472, 516 . : milestone, 494, tracing (456.244 µs) : 434, 478 . : milestone, 456,
Request duration reports for petclinicgantt title petclinic - request duration [CI 0.99] : candidate=1.48.0-SNAPSHOT~70c362cff4, baseline=1.48.0-SNAPSHOT~0bc5b2f9a1 dateFormat X axisFormat %s section baseline no_agent (1.353 ms) : 1334, 1373 . : milestone, 1353, appsec (1.713 ms) : 1689, 1737 . : milestone, 1713, appsec_no_iast (1.752 ms) : 1729, 1776 . : milestone, 1752, code_origins (1.677 ms) : 1650, 1705 . : milestone, 1677, iast (1.506 ms) : 1482, 1531 . : milestone, 1506, profiling (1.528 ms) : 1502, 1554 . : milestone, 1528, tracing (1.469 ms) : 1444, 1494 . : milestone, 1469, section candidate no_agent (1.355 ms) : 1336, 1374 . : milestone, 1355, appsec (1.72 ms) : 1697, 1744 . : milestone, 1720, appsec_no_iast (1.741 ms) : 1717, 1765 . : milestone, 1741, code_origins (1.677 ms) : 1649, 1704 . : milestone, 1677, iast (1.511 ms) : 1486, 1536 . : milestone, 1511, profiling (1.482 ms) : 1459, 1506 . : milestone, 1482, tracing (1.51 ms) : 1484, 1535 . : milestone, 1510,
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.48.0-SNAPSHOT~70c362cff4, baseline=1.48.0-SNAPSHOT~0bc5b2f9a1 dateFormat X axisFormat %s section baseline no_agent (14.702 s) : 14702000, 14702000 . : milestone, 14702000, appsec (15.107 s) : 15107000, 15107000 . : milestone, 15107000, iast (18.806 s) : 18806000, 18806000 . : milestone, 18806000, iast_GLOBAL (18.152 s) : 18152000, 18152000 . : milestone, 18152000, profiling (15.053 s) : 15053000, 15053000 . : milestone, 15053000, tracing (15.18 s) : 15180000, 15180000 . : milestone, 15180000, section candidate no_agent (14.805 s) : 14805000, 14805000 . : milestone, 14805000, appsec (15.188 s) : 15188000, 15188000 . : milestone, 15188000, iast (18.711 s) : 18711000, 18711000 . : milestone, 18711000, iast_GLOBAL (17.899 s) : 17899000, 17899000 . : milestone, 17899000, profiling (14.918 s) : 14918000, 14918000 . : milestone, 14918000, tracing (14.783 s) : 14783000, 14783000 . : milestone, 14783000,
Execution time for tomcatgantt title tomcat - execution time [CI 0.99] : candidate=1.48.0-SNAPSHOT~70c362cff4, baseline=1.48.0-SNAPSHOT~0bc5b2f9a1 dateFormat X axisFormat %s section baseline no_agent (1.474 ms) : 1462, 1485 . : milestone, 1474, appsec (2.356 ms) : 2311, 2400 . : milestone, 2356, iast (2.132 ms) : 2076, 2188 . : milestone, 2132, iast_GLOBAL (2.166 ms) : 2110, 2222 . : milestone, 2166, profiling (2.451 ms) : 2271, 2630 . : milestone, 2451, tracing (1.948 ms) : 1905, 1990 . : milestone, 1948, section candidate no_agent (1.472 ms) : 1461, 1484 . : milestone, 1472, appsec (2.332 ms) : 2288, 2375 . : milestone, 2332, iast (2.124 ms) : 2068, 2181 . : milestone, 2124, iast_GLOBAL (2.161 ms) : 2105, 2217 . : milestone, 2161, profiling (1.999 ms) : 1954, 2045 . : milestone, 1999, tracing (1.959 ms) : 1916, 2001 . : milestone, 1959,
|
ee718ed
to 5787711
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.
Thanks for the fix! There are system tests failing but I'm not sure it's related to this
Yep, they are failing because of this PR, but the reason is that the tests are not very good, I'm fixing them. |
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.
Thanks!
5787711
to 3710146
Compare dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/csi/CallSiteAdvice.java Outdated Show resolved Hide resolved
...ava-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/csi/Advices.java Show resolved Hide resolved
dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/csi/CallSites.java Show resolved Hide resolved
dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/csi/CallSites.java Show resolved Hide resolved
3710146
to d68298f
Compare dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/csi/CallSites.java Show resolved Hide resolved
Dear all, After some discussion we have agreed to only disable the before advice in calls so super in constructors. We cannot migrate the callsites to after advices due to RASP requiring to be executed before in order to protected the application from an attack. Further work needs to be done in APPSEC-57009 |
d68298f
to f06dbea
Compare dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/csi/CallSites.java Show resolved Hide resolved
f06dbea
to d3c4fc1
Compare d3c4fc1
to 98981cf
Compare 98981cf
to 70c362c
Compare Prevent before callsites targeting calls to super in constructors
| Package | Type | Package file | Manager | Update | Change | |---|---|---|---|---|---| | org.flywaydb.flyway | plugin | misk/gradle/libs.versions.toml | gradle | minor | `11.6.0` -> `11.7.0` | | [com.squareup.okio:okio-fakefilesystem](https://github.com/square/okio) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `3.10.2` -> `3.11.0` | | [com.squareup.okio:okio](https://github.com/square/okio) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `3.10.2` -> `3.11.0` | | [com.autonomousapps.dependency-analysis](https://github.com/autonomousapps/dependency-analysis-android-gradle-plugin) | plugin | misk/gradle/libs.versions.toml | gradle | minor | `2.15.0` -> `2.16.0` | | [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.47.3` -> `1.48.1` | | [com.datadoghq:dd-trace-ot](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.47.3` -> `1.48.1` | | [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:sqs](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | | [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.18` -> `2.31.20` | --- ### Release Notes <details> <summary>square/okio (com.squareup.okio:okio-fakefilesystem)</summary> ### [`v3.11.0`](https://github.com/square/okio/blob/HEAD/CHANGELOG.md#Version-3110) *2025-04-09* - Fix: Clear the deflater's byte array reference - New: Faster implementation of `String.decodeHex()` on Kotlin/JS. - New: Declare `EXACTLY_ONCE` execution for blocks like `Closeable.use {}` and `FileSystem.read {}`. - Upgrade: \[Kotlin 2.1.20]\[kotlin\_2\_1\_20]. </details> <details> <summary>autonomousapps/dependency-analysis-android-gradle-plugin (com.autonomousapps.dependency-analysis)</summary> ### [`v2.16.0`](https://github.com/autonomousapps/dependency-analysis-android-gradle-plugin/blob/HEAD/CHANGELOG.md#Version-2160) - \[Feat]: support `com.android.test` projects. - \[Feat]: support typesafe project accessors with opt-in. ```kotlin dependencyAnalysis { useTypesafeProjectAccessors(true) // false by default } ``` </details> <details> <summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary> ### [`v1.48.1`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.48.1): 1.48.1 ### Components #### Tracer internal logging - 🐛 Remove print line causing unnecessary logs ([#​8687](DataDog/dd-trace-java#8687) - [@​sarahchen6](https://github.com/sarahchen6)) ### [`v1.48.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.48.0): 1.48.0 ### Known Bugs > \[!NOTE] > If you are experiencing issues with spamming timeout logs, please update to the [latest version](https://github.com/DataDog/dd-trace-java/releases/latest) or set [JDK_SOCKET_ENABLED](https://github.com/DataDog/dd-trace-java/blob/33fc3c9a9b7cda3beda88b8b3e5224ae2b10764a/dd-trace-api/src/main/java/datadog/trace/api/config/GeneralConfig.java#L98) to false. ### Components #### Application Security Management (IAST) - ✨ Fix vulnerability location org.jose4j.lang.HashUtil ([#​8610](DataDog/dd-trace-java#8610) - [@​jandro996](https://github.com/jandro996)) - ✨ Fix weak randomness in oracle.ucp.util.OpaqueString ([#​8609](DataDog/dd-trace-java#8609) - [@​jandro996](https://github.com/jandro996)) - ✨ Fix weak hash false positive in oracle.security.o5logon.O5Logon ([#​8608](DataDog/dd-trace-java#8608) - [@​jandro996](https://github.com/jandro996)) - 🐛 Prevent before callsites targeting constructors in super calls ([#​8549](DataDog/dd-trace-java#8549) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) #### Application Security Management (WAF) - ✨ Update login events public SDK to V2 ([#​8620](DataDog/dd-trace-java#8620) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - 🐛 Send RASP LFI capability only when AppSec is statically enabled ([#​8573](DataDog/dd-trace-java#8573) - [@​jandro996](https://github.com/jandro996)) - ✨ Improve detection of missing request end events ([#​8510](DataDog/dd-trace-java#8510) - [@​smola](https://github.com/smola)) - 🧹 Remove remote configuration for API Security sampling rate ([#​8486](DataDog/dd-trace-java#8486) - [@​smola](https://github.com/smola)) - ✨ Add setUser to user monitoring SDK ([#​8482](DataDog/dd-trace-java#8482) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Add missing address for signup event ([#​8469](DataDog/dd-trace-java#8469) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Allow login events SDK to be used with appsec disabled ([#​8464](DataDog/dd-trace-java#8464) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Add support for endpoint discovery in spring mvc ([#​8352](DataDog/dd-trace-java#8352) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ New API Security sampling algorithm ([#​8178](DataDog/dd-trace-java#8178) - [@​ValentinZakharov](https://github.com/ValentinZakharov)) #### Build & Tooling - ✨ Add buffer size customizability to JDK UDS support ([#​8629](DataDog/dd-trace-java#8629) - [@​sarahchen6](https://github.com/sarahchen6)) - ✨ Add JDK built-in support for UDS on Java 16+ ([#​8314](DataDog/dd-trace-java#8314) - [@​sarahchen6](https://github.com/sarahchen6)) #### Configuration at Runtime - 🐛 Send RASP LFI capability only when AppSec is statically enabled ([#​8573](DataDog/dd-trace-java#8573) - [@​jandro996](https://github.com/jandro996)) #### Continuous Integration Visibility - 🐛 Prevent double reporting of Scalatest events when using SBT with test forking ([#​8682](DataDog/dd-trace-java#8682) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Shutdown CI Visibility test event handlers before tracer ([#​8677](DataDog/dd-trace-java#8677) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Do not apply JUnit 4 instrumentation to MUnit runners ([#​8675](DataDog/dd-trace-java#8675), [#​8683](DataDog/dd-trace-java#8683) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Remove error log when source path resolution fails on isModified check ([#​8663](DataDog/dd-trace-java#8663) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Implement tests reordering for JUnit 4 ([#​8650](DataDog/dd-trace-java#8650) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - 🐛 Set default Attempt to Fix retries if none provided from the backend ([#​8615](DataDog/dd-trace-java#8615) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Allow to manually set PR info ([#​8566](DataDog/dd-trace-java#8566) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Fix Test Optimization init when repo root cannot be determined ([#​8533](DataDog/dd-trace-java#8533) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Add capabilities tagging ([#​8499](DataDog/dd-trace-java#8499), [#​8540](DataDog/dd-trace-java#8540) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) #### Crash tracking - 🐛 Remove dependency on bash from crash/oome uploder scripts ([#​8652](DataDog/dd-trace-java#8652) - [@​jbachorik](https://github.com/jbachorik)) #### Data Streams Monitoring - ✨ e2e pipeline configuration when data jobs is enabled ([#​8553](DataDog/dd-trace-java#8553) - [@​kr-igor](https://github.com/kr-igor)) #### Dynamic Instrumentation - 🐛 Fix In-Product when config is empty ([#​8679](DataDog/dd-trace-java#8679) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add support for filtering shaded third-party libs ([#​8612](DataDog/dd-trace-java#8612) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add In-Product Enablement ([#​8587](DataDog/dd-trace-java#8587) - [@​jpbempel](https://github.com/jpbempel)) - ✨⚡ Reduce footprint of SourceFile tracking ([#​8524](DataDog/dd-trace-java#8524) - [@​jpbempel](https://github.com/jpbempel)) - ✨⚡ Optimize the SourceFile tracking ([#​8520](DataDog/dd-trace-java#8520) - [@​jpbempel](https://github.com/jpbempel)) #### OpenTracing - 🧹 Remove activeScope() use in OpenTracing shim ([#​8478](DataDog/dd-trace-java#8478) - [@​mcculls](https://github.com/mcculls)) #### Profiling - ✨ Add profiler env check command to AgentCLI ([#​8671](DataDog/dd-trace-java#8671) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Bump ddprof to 1.23.0 ([#​8668](DataDog/dd-trace-java#8668) - [@​jbachorik](https://github.com/jbachorik)) - Fix a crash related to ElfParser::loadSymbolTable ([#​191](DataDog/dd-trace-java#191)) by [@​yanglong1010](https://github.com/yanglong1010) in DataDog/java-profiler#192 - Unwind String.indexOf intrinsic on AArch64 by [@​MattAlp](https://github.com/MattAlp) in DataDog/java-profiler#193 - Fix Java 24 support by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#194 - A set of fixes related to clang, aarch64 and musl pecularities of vmstructs stack unwinder by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#199 - 🐛 Remove process information from JFR recording ([#​8661](DataDog/dd-trace-java#8661) - [@​r1viollet](https://github.com/r1viollet)) - 🐛 Make TempLocationManager USER aware ([#​8605](DataDog/dd-trace-java#8605) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Extract git tags from embedded git.properties and datadog_git.properties ([#​8561](DataDog/dd-trace-java#8561) - [@​wmouchere](https://github.com/wmouchere)) #### Telemetry - 🐛 Fix appsec.rasp.error and appsec.waf.error telemetry metrics ([#​8624](DataDog/dd-trace-java#8624) - [@​jandro996](https://github.com/jandro996)) - ✨ Create metric: appsec.rasp.rule.skipped ([#​8618](DataDog/dd-trace-java#8618) - [@​jandro996](https://github.com/jandro996)) - ✨ Extract git tags from embedded git.properties and datadog_git.properties ([#​8561](DataDog/dd-trace-java#8561) - [@​wmouchere](https://github.com/wmouchere)) #### Testing - 🧹 Simplify ssi tests one-pipeline ([#​8558](DataDog/dd-trace-java#8558) - [@​robertomonteromiguel](https://github.com/robertomonteromiguel)) - ✨ Add smoke tests for java's concurrent API ([#​8438](DataDog/dd-trace-java#8438) - [@​sarahchen6](https://github.com/sarahchen6)) #### Trace context propagation - ✨ Adding Support for `TRACE_PROPAGATION_BEHAVIOR_EXTRACT` ([#​8535](DataDog/dd-trace-java#8535) - [@​mhlidd](https://github.com/mhlidd)) #### Tracer core - 🐛 Ensure shaded helpers have unique names ([#​8559](DataDog/dd-trace-java#8559) - [@​amarziali](https://github.com/amarziali)) - ✨ Support common config sources for user-provided git info ([#​8547](DataDog/dd-trace-java#8547) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Make the default config sources more robust when a security manager is installed ([#​8544](DataDog/dd-trace-java#8544) - [@​mcculls](https://github.com/mcculls)) - ✨ Support targeting services with configurations in stable configuration file ([#​8526](DataDog/dd-trace-java#8526) - [@​mtoffl01](https://github.com/mtoffl01)) - ✨ Add new parser for `DD_TAGS` and prioritizing `DD_SERVICE` ([#​8296](DataDog/dd-trace-java#8296) - [@​mhlidd](https://github.com/mhlidd)) #### Tracer internal logging - 🐛 Add missing debug log for the cloudPayloadTaggingServices config ([#​8600](DataDog/dd-trace-java#8600) - [@​ygree](https://github.com/ygree)) - ✨ Add the possibility to output the logs of the Java tracer in JSON ([#​8083](DataDog/dd-trace-java#8083) - [@​cecile75](https://github.com/cecile75)) #### Tracer public API - ✨ Introducing `DD_TRACE_EXPERIMENTAL_FEATURES_ENABLED` Config ([#​8536](DataDog/dd-trace-java#8536) - [@​mhlidd](https://github.com/mhlidd)) - ✨ Config Consistency Round 2 ([#​8489](DataDog/dd-trace-java#8489) - [@​mhlidd](https://github.com/mhlidd)) ### Instrumentations #### - 🐛 Fix NPE in getMdcCopy of LoggingEventInstrumentation ([#​8599](DataDog/dd-trace-java#8599) - [@​ygree](https://github.com/ygree)) #### Apache Spark instrumentation - ✨ Instrument Runtime.exit() to finish spark application spans ([#​8572](DataDog/dd-trace-java#8572) - [@​paul-laffon-dd](https://github.com/paul-laffon-dd)) - ✨ Configure OpenLineage if present in Spark instrumentation ([#​8541](DataDog/dd-trace-java#8541) - [@​mobuchowski](https://github.com/mobuchowski)) #### Armeria Instrumentation - ✨ Support armeria grpc 1.32.3 ([#​8606](DataDog/dd-trace-java#8606) - [@​github-actions](https://github.com/github-actions)\[bot]) #### AWS DynamoDB Instrumentation - ✨ Create DynamoDB instrumentation + add span pointers for `updateItem` and `deleteItem` ([#​8490](DataDog/dd-trace-java#8490) - [@​nhulston](https://github.com/nhulston)) #### AWS SDK instrumentation - ✨ Add DynamoDB in DEFAULT_TRACE_CLOUD_PAYLOAD_TAGGING_SERVICES ([#​8595](DataDog/dd-trace-java#8595) - [@​joeyzhao2018](https://github.com/joeyzhao2018)) #### Azure Functions instrumentation - ✨ Enable tracer computed trace metrics by default for Azure Functions ([#​8518](DataDog/dd-trace-java#8518) - [@​duncanpharvey](https://github.com/duncanpharvey)) - 💡 Add azure-functions instrumentation ([#​8432](DataDog/dd-trace-java#8432) - [@​duncanpharvey](https://github.com/duncanpharvey)) #### Core Java language instrumentation - 🐛 Fix ForkJoinPool.execute() instrumentation on Java 21+ ([#​8560](DataDog/dd-trace-java#8560) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) #### Eclipse Vert.x instrumentation - ✨ Add vertx postgresql client instrumentation ([#​8471](DataDog/dd-trace-java#8471) - [@​vandonr](https://github.com/vandonr) - thanks for the contribution!) #### Kafka instrumentation - ✨ Support and test kafka-clients 4 ([#​8581](DataDog/dd-trace-java#8581) - [@​amarziali](https://github.com/amarziali)) #### Kotlin instrumentation - ✨ Avoid disconnected traces when using Kotlin flowOn ([#​8651](DataDog/dd-trace-java#8651) - [@​mcculls](https://github.com/mcculls)) #### OpenTelemetry instrumentation - 🧹 Migrate OtelContext wrapper to new internal Context API ([#​8645](DataDog/dd-trace-java#8645) - [@​mcculls](https://github.com/mcculls)) #### Spring instrumentation - 🐛 Support CompletableFuture on spring webmvc controllers ([#​8659](DataDog/dd-trace-java#8659) - [@​amarziali](https://github.com/amarziali)) - ✨ Add support for endpoint discovery in spring mvc ([#​8352](DataDog/dd-trace-java#8352) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) #### WebSocket Instrumentation - ✨ Instrument Jetty websocket pojo ([#​8562](DataDog/dd-trace-java#8562) - [@​amarziali](https://github.com/amarziali)) - 💡 Instrument Java Websocket API (JSR356) ([#​8440](DataDog/dd-trace-java#8440) - [@​amarziali](https://github.com/amarziali)) #### All other instrumentations - ✨ Introduce cache for peer.hostname lookup ([#​8601](DataDog/dd-trace-java#8601) - [@​mcculls](https://github.com/mcculls)) - ✨ Support pekko http 1.1 ([#​8532](DataDog/dd-trace-java#8532) - [@​amarziali](https://github.com/amarziali)) </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**: Disabled by config. Please merge this manually once you are satisfied. ♻ **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: 331314f71acaced3adc75ea5d7e855c248d593fc
What Does This Do
Disallows the usage of before call sites in calls to super in constructors which is not allowed by the JVM.
Motivation
We got a report from a customer with an issue blocking the startup of a app due to:
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: APPSEC-56992