-
Notifications
You must be signed in to change notification settings - Fork 291
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
Fix suspend Kotlin methods instrumentation #8080
Conversation
suspend methods in Kotlin generates a special bytecode for the method with a state machine and could return different objects. for each return branch we need to have a specific return handler to avoid having mismatch stack maps
Debugger benchmarksParameters
See matching parameters
SummaryFound 0 performance improvements and 5 performance regressions! Performance is the same for 2 metrics, 8 unstable metrics.
See unchanged results
Request duration reports for reportsgantt
title reports - request duration [CI 0.99] : candidate=None, baseline=None
dateFormat X
axisFormat %s
section baseline
noprobe (301.699 µs) : 277, 326
. : milestone, 302,
basic (307.617 µs) : 298, 317
. : milestone, 308,
loop (10.379 ms) : 10338, 10420
. : milestone, 10379,
section candidate
noprobe (334.081 µs) : 237, 431
. : milestone, 334,
basic (314.726 µs) : 286, 344
. : milestone, 315,
loop (11.007 ms) : 10979, 11034
. : milestone, 11007,
|
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 53 metrics, 10 unstable metrics. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.44.0-SNAPSHOT~f86bd77ed8, baseline=1.45.0-SNAPSHOT~fd1f40f934
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.093 s) : 0, 1093205
Total [baseline] (8.681 s) : 0, 8680528
Agent [candidate] (1.095 s) : 0, 1094532
Total [candidate] (8.676 s) : 0, 8675721
section iast
Agent [baseline] (1.225 s) : 0, 1224655
Total [baseline] (9.236 s) : 0, 9235867
Agent [candidate] (1.223 s) : 0, 1223092
Total [candidate] (9.217 s) : 0, 9217419
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.224 s) : 0, 1223707
Total [baseline] (9.174 s) : 0, 9173968
Agent [candidate] (1.221 s) : 0, 1220979
Total [candidate] (9.168 s) : 0, 9167545
section iast_TELEMETRY_OFF
Agent [baseline] (1.219 s) : 0, 1219347
Total [baseline] (9.171 s) : 0, 9171090
Agent [candidate] (1.227 s) : 0, 1226714
Total [candidate] (9.2 s) : 0, 9199840
gantt
title insecure-bank - break down per module: candidate=1.44.0-SNAPSHOT~f86bd77ed8, baseline=1.45.0-SNAPSHOT~fd1f40f934
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (696.769 ms) : 0, 696769
BytebuddyAgent [candidate] (696.616 ms) : 0, 696616
GlobalTracer [baseline] (317.529 ms) : 0, 317529
GlobalTracer [candidate] (318.731 ms) : 0, 318731
AppSec [baseline] (54.559 ms) : 0, 54559
AppSec [candidate] (54.255 ms) : 0, 54255
Remote Config [baseline] (681.014 µs) : 0, 681
Remote Config [candidate] (685.029 µs) : 0, 685
Telemetry [baseline] (9.883 ms) : 0, 9883
Telemetry [candidate] (10.469 ms) : 0, 10469
section iast
BytebuddyAgent [baseline] (816.427 ms) : 0, 816427
BytebuddyAgent [candidate] (815.192 ms) : 0, 815192
GlobalTracer [baseline] (306.933 ms) : 0, 306933
GlobalTracer [candidate] (306.41 ms) : 0, 306410
AppSec [baseline] (57.374 ms) : 0, 57374
AppSec [candidate] (57.384 ms) : 0, 57384
Remote Config [baseline] (624.988 µs) : 0, 625
Remote Config [candidate] (640.06 µs) : 0, 640
Telemetry [baseline] (7.515 ms) : 0, 7515
Telemetry [candidate] (7.661 ms) : 0, 7661
IAST [baseline] (22.007 ms) : 0, 22007
IAST [candidate] (21.949 ms) : 0, 21949
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (815.417 ms) : 0, 815417
BytebuddyAgent [candidate] (813.792 ms) : 0, 813792
GlobalTracer [baseline] (306.732 ms) : 0, 306732
GlobalTracer [candidate] (306.224 ms) : 0, 306224
AppSec [baseline] (57.447 ms) : 0, 57447
AppSec [candidate] (57.969 ms) : 0, 57969
Remote Config [baseline] (634.733 µs) : 0, 635
Remote Config [candidate] (650.85 µs) : 0, 651
Telemetry [baseline] (7.515 ms) : 0, 7515
Telemetry [candidate] (7.561 ms) : 0, 7561
IAST [baseline] (22.203 ms) : 0, 22203
IAST [candidate] (20.983 ms) : 0, 20983
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (812.823 ms) : 0, 812823
BytebuddyAgent [candidate] (817.205 ms) : 0, 817205
GlobalTracer [baseline] (306.21 ms) : 0, 306210
GlobalTracer [candidate] (308.178 ms) : 0, 308178
AppSec [baseline] (58.121 ms) : 0, 58121
AppSec [candidate] (57.436 ms) : 0, 57436
Remote Config [baseline] (626.94 µs) : 0, 627
Remote Config [candidate] (644.802 µs) : 0, 645
Telemetry [baseline] (7.337 ms) : 0, 7337
Telemetry [candidate] (7.555 ms) : 0, 7555
IAST [baseline] (20.454 ms) : 0, 20454
IAST [candidate] (21.645 ms) : 0, 21645
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.44.0-SNAPSHOT~f86bd77ed8, baseline=1.45.0-SNAPSHOT~fd1f40f934
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.094 s) : 0, 1094178
Total [baseline] (10.444 s) : 0, 10443696
Agent [candidate] (1.101 s) : 0, 1100566
Total [candidate] (10.529 s) : 0, 10529277
section appsec
Agent [baseline] (1.234 s) : 0, 1233579
Total [baseline] (10.878 s) : 0, 10878164
Agent [candidate] (1.232 s) : 0, 1231995
Total [candidate] (10.713 s) : 0, 10712570
section iast
Agent [baseline] (1.231 s) : 0, 1230867
Total [baseline] (10.993 s) : 0, 10993468
Agent [candidate] (1.231 s) : 0, 1230523
Total [candidate] (11.018 s) : 0, 11017972
section profiling
Agent [baseline] (1.32 s) : 0, 1319587
Total [baseline] (10.821 s) : 0, 10821110
Agent [candidate] (1.319 s) : 0, 1319266
Total [candidate] (10.799 s) : 0, 10799212
gantt
title petclinic - break down per module: candidate=1.44.0-SNAPSHOT~f86bd77ed8, baseline=1.45.0-SNAPSHOT~fd1f40f934
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (695.85 ms) : 0, 695850
BytebuddyAgent [candidate] (701.102 ms) : 0, 701102
GlobalTracer [baseline] (317.75 ms) : 0, 317750
GlobalTracer [candidate] (319.822 ms) : 0, 319822
AppSec [baseline] (54.873 ms) : 0, 54873
AppSec [candidate] (55.091 ms) : 0, 55091
Remote Config [baseline] (674.097 µs) : 0, 674
Remote Config [candidate] (683.783 µs) : 0, 684
Telemetry [baseline] (11.276 ms) : 0, 11276
Telemetry [candidate] (10.002 ms) : 0, 10002
section appsec
BytebuddyAgent [baseline] (716.649 ms) : 0, 716649
BytebuddyAgent [candidate] (716.213 ms) : 0, 716213
GlobalTracer [baseline] (316.815 ms) : 0, 316815
GlobalTracer [candidate] (316.188 ms) : 0, 316188
AppSec [baseline] (167.358 ms) : 0, 167358
AppSec [candidate] (165.842 ms) : 0, 165842
Remote Config [baseline] (653.372 µs) : 0, 653
Remote Config [candidate] (643.486 µs) : 0, 643
Telemetry [baseline] (8.218 ms) : 0, 8218
Telemetry [candidate] (7.79 ms) : 0, 7790
IAST [baseline] (20.16 ms) : 0, 20160
IAST [candidate] (22.963 ms) : 0, 22963
section iast
BytebuddyAgent [baseline] (820.406 ms) : 0, 820406
BytebuddyAgent [candidate] (820.74 ms) : 0, 820740
GlobalTracer [baseline] (308.516 ms) : 0, 308516
GlobalTracer [candidate] (307.903 ms) : 0, 307903
AppSec [baseline] (57.957 ms) : 0, 57957
AppSec [candidate] (57.135 ms) : 0, 57135
Remote Config [baseline] (625.554 µs) : 0, 626
Remote Config [candidate] (640.906 µs) : 0, 641
Telemetry [baseline] (7.542 ms) : 0, 7542
Telemetry [candidate] (7.578 ms) : 0, 7578
IAST [baseline] (22.058 ms) : 0, 22058
IAST [candidate] (22.696 ms) : 0, 22696
section profiling
ProfilingAgent [baseline] (93.612 ms) : 0, 93612
ProfilingAgent [candidate] (94.12 ms) : 0, 94120
BytebuddyAgent [baseline] (690.794 ms) : 0, 690794
BytebuddyAgent [candidate] (690.137 ms) : 0, 690137
GlobalTracer [baseline] (434.012 ms) : 0, 434012
GlobalTracer [candidate] (433.834 ms) : 0, 433834
AppSec [baseline] (53.529 ms) : 0, 53529
AppSec [candidate] (53.633 ms) : 0, 53633
Remote Config [baseline] (676.866 µs) : 0, 677
Remote Config [candidate] (662.234 µs) : 0, 662
Telemetry [baseline] (7.69 ms) : 0, 7690
Telemetry [candidate] (7.713 ms) : 0, 7713
Profiling [baseline] (93.635 ms) : 0, 93635
Profiling [candidate] (94.144 ms) : 0, 94144
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 16 unstable metrics. Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.44.0-SNAPSHOT~f86bd77ed8, baseline=1.45.0-SNAPSHOT~fd1f40f934
dateFormat X
axisFormat %s
section baseline
no_agent (377.145 µs) : 356, 398
. : milestone, 377,
iast (488.898 µs) : 467, 510
. : milestone, 489,
iast_FULL (653.165 µs) : 632, 675
. : milestone, 653,
iast_GLOBAL (528.539 µs) : 506, 551
. : milestone, 529,
iast_HARDCODED_SECRET_DISABLED (494.886 µs) : 473, 517
. : milestone, 495,
iast_INACTIVE (456.931 µs) : 435, 479
. : milestone, 457,
iast_TELEMETRY_OFF (484.426 µs) : 462, 507
. : milestone, 484,
tracing (452.404 µs) : 431, 473
. : milestone, 452,
section candidate
no_agent (374.921 µs) : 355, 395
. : milestone, 375,
iast (489.042 µs) : 468, 510
. : milestone, 489,
iast_FULL (650.846 µs) : 629, 672
. : milestone, 651,
iast_GLOBAL (513.565 µs) : 492, 535
. : milestone, 514,
iast_HARDCODED_SECRET_DISABLED (491.603 µs) : 470, 513
. : milestone, 492,
iast_INACTIVE (457.487 µs) : 435, 480
. : milestone, 457,
iast_TELEMETRY_OFF (482.458 µs) : 461, 504
. : milestone, 482,
tracing (448.076 µs) : 427, 469
. : milestone, 448,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.44.0-SNAPSHOT~f86bd77ed8, baseline=1.45.0-SNAPSHOT~fd1f40f934
dateFormat X
axisFormat %s
section baseline
no_agent (1.357 ms) : 1339, 1376
. : milestone, 1357,
appsec (1.749 ms) : 1725, 1772
. : milestone, 1749,
appsec_no_iast (1.741 ms) : 1715, 1766
. : milestone, 1741,
iast (1.499 ms) : 1476, 1522
. : milestone, 1499,
profiling (1.548 ms) : 1523, 1573
. : milestone, 1548,
tracing (1.482 ms) : 1457, 1507
. : milestone, 1482,
section candidate
no_agent (1.342 ms) : 1321, 1362
. : milestone, 1342,
appsec (1.75 ms) : 1727, 1774
. : milestone, 1750,
appsec_no_iast (1.742 ms) : 1717, 1768
. : milestone, 1742,
iast (1.486 ms) : 1463, 1509
. : milestone, 1486,
profiling (1.523 ms) : 1498, 1548
. : milestone, 1523,
tracing (1.49 ms) : 1465, 1515
. : milestone, 1490,
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.44.0-SNAPSHOT~f86bd77ed8, baseline=1.45.0-SNAPSHOT~fd1f40f934
dateFormat X
axisFormat %s
section baseline
no_agent (1.47 ms) : 1458, 1481
. : milestone, 1470,
appsec (2.362 ms) : 2320, 2404
. : milestone, 2362,
iast (2.099 ms) : 2046, 2152
. : milestone, 2099,
iast_GLOBAL (2.135 ms) : 2082, 2188
. : milestone, 2135,
profiling (1.951 ms) : 1909, 1993
. : milestone, 1951,
tracing (1.931 ms) : 1890, 1971
. : milestone, 1931,
section candidate
no_agent (1.467 ms) : 1456, 1478
. : milestone, 1467,
appsec (2.347 ms) : 2306, 2389
. : milestone, 2347,
iast (2.095 ms) : 2043, 2148
. : milestone, 2095,
iast_GLOBAL (2.141 ms) : 2088, 2194
. : milestone, 2141,
profiling (1.956 ms) : 1914, 1998
. : milestone, 1956,
tracing (1.93 ms) : 1889, 1970
. : milestone, 1930,
Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.44.0-SNAPSHOT~f86bd77ed8, baseline=1.45.0-SNAPSHOT~fd1f40f934
dateFormat X
axisFormat %s
section baseline
no_agent (15.172 s) : 15172000, 15172000
. : milestone, 15172000,
appsec (15.181 s) : 15181000, 15181000
. : milestone, 15181000,
iast (19.066 s) : 19066000, 19066000
. : milestone, 19066000,
iast_GLOBAL (18.019 s) : 18019000, 18019000
. : milestone, 18019000,
profiling (15.321 s) : 15321000, 15321000
. : milestone, 15321000,
tracing (14.992 s) : 14992000, 14992000
. : milestone, 14992000,
section candidate
no_agent (14.949 s) : 14949000, 14949000
. : milestone, 14949000,
appsec (14.759 s) : 14759000, 14759000
. : milestone, 14759000,
iast (19.705 s) : 19705000, 19705000
. : milestone, 19705000,
iast_GLOBAL (18.048 s) : 18048000, 18048000
. : milestone, 18048000,
profiling (15.158 s) : 15158000, 15158000
. : milestone, 15158000,
tracing (14.981 s) : 14981000, 14981000
. : milestone, 14981000,
|
enable only hoisting for java language
| Package | Type | Package file | Manager | Update | Change | |---|---|---|---|---|---| | [com.google.api.grpc:proto-google-common-protos](https://github.com/googleapis/sdk-platform-java) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.50.0` -> `2.50.1` | | [com.google.cloud:google-cloud-core-http](https://github.com/googleapis/sdk-platform-java) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.49.0` -> `2.49.1` | | [com.google.cloud:google-cloud-core](https://github.com/googleapis/sdk-platform-java) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.49.0` -> `2.49.1` | | [com.google.api:gax](https://github.com/googleapis/sdk-platform-java) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.59.0` -> `2.59.1` | | [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.44.1` -> `1.45.0` | | [com.datadoghq:dd-trace-ot](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.44.1` -> `1.45.0` | | [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.29.47` -> `2.29.48` | | [software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.29.47` -> `2.29.48` | | [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.29.47` -> `2.29.48` | | [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.29.47` -> `2.29.48` | | [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.29.47` -> `2.29.48` | | [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.29.47` -> `2.29.48` | --- ### Release Notes <details> <summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary> ### [`v1.45.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.45.0): 1.45.0 ##### Breaking changes > \[!WARNING]\ > Support for custom scope manager using OpenTelemetry tracer artifact (`dd-trace-ot`) is dropped. > Tracing with OpenTracing API and custom scope manager will continue to work on 1.44.x releases. ##### Components ##### Application Security Management (IAST) - ✨ Add propagation to URI#toURL method ([#​8146](DataDog/dd-trace-java#8146) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Increase IAST propagation to StringBuilder setLength ([#​8119](DataDog/dd-trace-java#8119) - [@​Mariovido](https://github.com/Mariovido)) - ✨ Increase IAST propagation to StringBuffer append ([#​8082](DataDog/dd-trace-java#8082) - [@​Mariovido](https://github.com/Mariovido)) - ✨ Handle IAST security controls custom validation and sanitization methods ([#​7997](DataDog/dd-trace-java#7997) - [@​jandro996](https://github.com/jandro996)) ##### Application Security Management (WAF) - ✨ Update user lifecycle tracking to V3 ([#​8108](DataDog/dd-trace-java#8108) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Exploit prevention for Shell Injection / Command Injection ([#​7615](DataDog/dd-trace-java#7615) - [@​jandro996](https://github.com/jandro996)) ##### Build & Tooling - 💡 Support instrumentation of repackaged libraries ([#​8153](DataDog/dd-trace-java#8153) - [@​mcculls](https://github.com/mcculls)) - ✨ Configure native image build setting for JDK-22 based GraalVM ([#​8092](DataDog/dd-trace-java#8092) - [@​MattAlp](https://github.com/MattAlp)) ##### Database Monitoring - ✨ Add full APM/DBM mode for Oracle ([#​8090](DataDog/dd-trace-java#8090) - [@​nenadnoveljic](https://github.com/nenadnoveljic)) ##### Dynamic Instrumentation - 🐛 make local var hoisting disabled by default ([#​8158](DataDog/dd-trace-java#8158) - [@​jpbempel](https://github.com/jpbempel)) - 🐛 Fix var hoisting issue when no previous store ([#​8122](DataDog/dd-trace-java#8122) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Only decorate spans without code origin information ([#​8105](DataDog/dd-trace-java#8105) - [@​evanchooly](https://github.com/evanchooly)) - 🐛 Fix suspend Kotlin methods instrumentation ([#​8080](DataDog/dd-trace-java#8080) - [@​jpbempel](https://github.com/jpbempel)) - 🐛 Fix class file version detection ([#​8057](DataDog/dd-trace-java#8057) - [@​jpbempel](https://github.com/jpbempel)) ##### GraalVM native-image - ✨ Configure native image build setting for JDK-22 based GraalVM ([#​8092](DataDog/dd-trace-java#8092) - [@​MattAlp](https://github.com/MattAlp)) ##### ML Observability (LLMObs) - ✨🧪 Add LLMObs configuration ([#​8076](DataDog/dd-trace-java#8076) - [@​gary-huang](https://github.com/gary-huang)) ##### Metrics - Bump integrations-core submodule to 7.60.0 ([#​8098](DataDog/dd-trace-java#8098) - [@​mcculls](https://github.com/mcculls)) - Upgrade to java-dogstatsd-client v4.4.3 ([#​8096](DataDog/dd-trace-java#8096) - [@​mcculls](https://github.com/mcculls)) ##### OpenTracing -⚠️ 🧹 Remove custom scope manager support ([#​8164](DataDog/dd-trace-java#8164) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) ##### Telemetry - ✨ Retry telemetry requests if CI Visibility is enabled ([#​8147](DataDog/dd-trace-java#8147) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Add configurable Dependency service resolution period ([#​8079](DataDog/dd-trace-java#8079) - [@​jandro996](https://github.com/jandro996)) ##### Testing - 🐛 Remove restriction to not run vertx4 latest tests on java 17 ([#​8133](DataDog/dd-trace-java#8133) - [@​vandonr](https://github.com/vandonr)) ##### Tracer core - ✨ Defer remote components to avoid OkHttp class-loading side-effects ([#​8131](DataDog/dd-trace-java#8131) - [@​mcculls](https://github.com/mcculls)) - ✨ Improve Context API null handling and Javadoc ([#​8129](DataDog/dd-trace-java#8129) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - 🐛⚡ Avoid performing blocking I/O operation on application thread ([#​8120](DataDog/dd-trace-java#8120) - [@​mcculls](https://github.com/mcculls)) - 💡 Introduce a shared context component, independent of tracing ([#​8117](DataDog/dd-trace-java#8117) - [@​mcculls](https://github.com/mcculls)) - ✨ Improves ServiceNameCollector ([#​8109](DataDog/dd-trace-java#8109) - [@​amarziali](https://github.com/amarziali)) - Upgrade to ASM 9.7.1 (adds new constant for Java 24) ([#​8097](DataDog/dd-trace-java#8097) - [@​mcculls](https://github.com/mcculls)) - 🐛 Dynamically evaluate service name for message consumers ([#​8088](DataDog/dd-trace-java#8088) - [@​amarziali](https://github.com/amarziali)) ##### Serverless - 🐛 Add avoid double instrumenting lambda non-streaming handlers. ([#​8073](DataDog/dd-trace-java#8073) - [@​purple4reina](https://github.com/purple4reina)) ##### Instrumentations ##### AWS SDK instrumentation - 💡 Instrument EMR's relocated AWS SDK ([#​8157](DataDog/dd-trace-java#8157) - [@​mcculls](https://github.com/mcculls)) ##### Eclipse Vert.x instrumentation - 🐛 Remove restriction to not run vertx4 latest tests on java 17 ([#​8133](DataDog/dd-trace-java#8133) - [@​vandonr](https://github.com/vandonr)) ##### JDBC instrumentation - ✨ Add full APM/DBM mode for Oracle ([#​8090](DataDog/dd-trace-java#8090) - [@​nenadnoveljic](https://github.com/nenadnoveljic)) ##### Jetty instrumentation - 🐛 Ensure jetty 12 has servlet.path starting with / ([#​8093](DataDog/dd-trace-java#8093) - [@​github-actions](https://github.com/github-actions)\[bot]) ##### JMS instrumentation - 🧹 Re-use `javax` JMS module for `jakarta` namespace ([#​8155](DataDog/dd-trace-java#8155) - [@​mcculls](https://github.com/mcculls)) - 🧹 Group `javax.jms` instrumentations under a single module ([#​8154](DataDog/dd-trace-java#8154) - [@​mcculls](https://github.com/mcculls)) ##### Reactor instrumentation - 🐛 Reactor: early propagate span in context when subscribing ([#​8166](DataDog/dd-trace-java#8166) - [@​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**: Whenever PR becomes conflicted, 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: ba2355aa4e2e39ab1fee27319cc4176238efd90b
What Does This Do
suspend methods in Kotlin generates a special bytecode for the method with a state machine and could return different objects. for each return branch we need to have a specific return handler to avoid having mismatch stack maps.
Add new config parameter
DD_DYNAMIC_INSTRUMENTATION_HOIST_LOCALVARS_ENABLED
to be able to disable local var hoisting that can be problematic in some situations.Detects language and only enable hoisting for Java.
Motivation
support
suspend
Kotlin methodsAdditional 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: DEBUG-3229