-
Notifications
You must be signed in to change notification settings - Fork 301
Handle reentrant scope cleanup in Akka/Pekko actor instrumentations #8722
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
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…ck mechanism to clean up scopes after async operations. To properly handle reentrant scope checkpointing and rollback we need to use a count in ContinuableScope like referenceCount rather than just a flag. This is necessary because ContinuableScopeManager re-uses scope instances when activating the same span twice.
smola
approved these changes
Apr 23, 2025
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 61 metrics, 10 unstable metrics. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.49.0-SNAPSHOT~8b77a18ede, baseline=1.49.0-SNAPSHOT~6b6cbf6499
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.057 s) : 0, 1056984
Total [baseline] (10.491 s) : 0, 10490880
Agent [candidate] (1.057 s) : 0, 1057455
Total [candidate] (10.483 s) : 0, 10483253
section appsec
Agent [baseline] (1.199 s) : 0, 1199332
Total [baseline] (10.819 s) : 0, 10818773
Agent [candidate] (1.2 s) : 0, 1199682
Total [candidate] (10.83 s) : 0, 10829880
section iast
Agent [baseline] (1.196 s) : 0, 1195746
Total [baseline] (11.092 s) : 0, 11092488
Agent [candidate] (1.188 s) : 0, 1188262
Total [candidate] (11.039 s) : 0, 11038770
section profiling
Agent [baseline] (1.309 s) : 0, 1308552
Total [baseline] (10.904 s) : 0, 10903815
Agent [candidate] (1.313 s) : 0, 1313011
Total [candidate] (10.877 s) : 0, 10877291
gantt
title petclinic - break down per module: candidate=1.49.0-SNAPSHOT~8b77a18ede, baseline=1.49.0-SNAPSHOT~6b6cbf6499
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (722.067 ms) : 0, 722067
BytebuddyAgent [candidate] (722.245 ms) : 0, 722245
GlobalTracer [baseline] (239.441 ms) : 0, 239441
GlobalTracer [candidate] (239.866 ms) : 0, 239866
AppSec [baseline] (54.816 ms) : 0, 54816
AppSec [candidate] (55.512 ms) : 0, 55512
Debugger [baseline] (6.526 ms) : 0, 6526
Debugger [candidate] (5.047 ms) : 0, 5047
Remote Config [baseline] (695.265 µs) : 0, 695
Remote Config [candidate] (686.674 µs) : 0, 687
Telemetry [baseline] (9.983 ms) : 0, 9983
Telemetry [candidate] (10.577 ms) : 0, 10577
section appsec
BytebuddyAgent [baseline] (740.959 ms) : 0, 740959
BytebuddyAgent [candidate] (740.051 ms) : 0, 740051
GlobalTracer [baseline] (235.952 ms) : 0, 235952
GlobalTracer [candidate] (236.272 ms) : 0, 236272
AppSec [baseline] (174.944 ms) : 0, 174944
AppSec [candidate] (175.893 ms) : 0, 175893
Debugger [baseline] (4.203 ms) : 0, 4203
Debugger [candidate] (4.222 ms) : 0, 4222
Remote Config [baseline] (638.76 µs) : 0, 639
Remote Config [candidate] (636.24 µs) : 0, 636
Telemetry [baseline] (8.168 ms) : 0, 8168
Telemetry [candidate] (8.193 ms) : 0, 8193
IAST [baseline] (21.829 ms) : 0, 21829
IAST [candidate] (21.833 ms) : 0, 21833
section iast
BytebuddyAgent [baseline] (848.4 ms) : 0, 848400
BytebuddyAgent [candidate] (842.442 ms) : 0, 842442
GlobalTracer [baseline] (231.218 ms) : 0, 231218
GlobalTracer [candidate] (230.243 ms) : 0, 230243
AppSec [baseline] (53.691 ms) : 0, 53691
AppSec [candidate] (52.822 ms) : 0, 52822
Debugger [baseline] (4.205 ms) : 0, 4205
Debugger [candidate] (4.167 ms) : 0, 4167
Remote Config [baseline] (616.029 µs) : 0, 616
Remote Config [candidate] (620.084 µs) : 0, 620
Telemetry [baseline] (8.756 ms) : 0, 8756
Telemetry [candidate] (8.696 ms) : 0, 8696
IAST [baseline] (23.801 ms) : 0, 23801
IAST [candidate] (22.831 ms) : 0, 22831
section profiling
BytebuddyAgent [baseline] (713.597 ms) : 0, 713597
BytebuddyAgent [candidate] (716.006 ms) : 0, 716006
GlobalTracer [baseline] (375.623 ms) : 0, 375623
GlobalTracer [candidate] (377.257 ms) : 0, 377257
AppSec [baseline] (54.073 ms) : 0, 54073
AppSec [candidate] (53.559 ms) : 0, 53559
Debugger [baseline] (4.376 ms) : 0, 4376
Debugger [candidate] (4.418 ms) : 0, 4418
Remote Config [baseline] (649.863 µs) : 0, 650
Remote Config [candidate] (660.822 µs) : 0, 661
Telemetry [baseline] (8.839 ms) : 0, 8839
Telemetry [candidate] (8.923 ms) : 0, 8923
ProfilingAgent [baseline] (101.222 ms) : 0, 101222
ProfilingAgent [candidate] (101.851 ms) : 0, 101851
Profiling [baseline] (101.247 ms) : 0, 101247
Profiling [candidate] (101.876 ms) : 0, 101876
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.49.0-SNAPSHOT~8b77a18ede, baseline=1.49.0-SNAPSHOT~6b6cbf6499
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.06 s) : 0, 1060346
Total [baseline] (8.719 s) : 0, 8719474
Agent [candidate] (1.064 s) : 0, 1064037
Total [candidate] (8.697 s) : 0, 8697251
section iast
Agent [baseline] (1.194 s) : 0, 1193661
Total [baseline] (9.261 s) : 0, 9260891
Agent [candidate] (1.191 s) : 0, 1191164
Total [candidate] (9.25 s) : 0, 9250347
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.188 s) : 0, 1188373
Total [baseline] (9.247 s) : 0, 9246755
Agent [candidate] (1.193 s) : 0, 1193081
Total [candidate] (9.266 s) : 0, 9266418
section iast_TELEMETRY_OFF
Agent [baseline] (1.187 s) : 0, 1187012
Total [baseline] (9.261 s) : 0, 9261017
Agent [candidate] (1.192 s) : 0, 1191515
Total [candidate] (9.235 s) : 0, 9234778
gantt
title insecure-bank - break down per module: candidate=1.49.0-SNAPSHOT~8b77a18ede, baseline=1.49.0-SNAPSHOT~6b6cbf6499
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (723.405 ms) : 0, 723405
BytebuddyAgent [candidate] (726.447 ms) : 0, 726447
GlobalTracer [baseline] (239.627 ms) : 0, 239627
GlobalTracer [candidate] (241.191 ms) : 0, 241191
AppSec [baseline] (54.519 ms) : 0, 54519
AppSec [candidate] (54.794 ms) : 0, 54794
Debugger [baseline] (5.771 ms) : 0, 5771
Debugger [candidate] (7.309 ms) : 0, 7309
Remote Config [baseline] (690.408 µs) : 0, 690
Remote Config [candidate] (696.163 µs) : 0, 696
Telemetry [baseline] (12.885 ms) : 0, 12885
Telemetry [candidate] (9.965 ms) : 0, 9965
section iast
BytebuddyAgent [baseline] (846.25 ms) : 0, 846250
BytebuddyAgent [candidate] (844.498 ms) : 0, 844498
GlobalTracer [baseline] (230.625 ms) : 0, 230625
GlobalTracer [candidate] (231.011 ms) : 0, 231011
AppSec [baseline] (55.175 ms) : 0, 55175
AppSec [candidate] (50.5 ms) : 0, 50500
Debugger [baseline] (4.252 ms) : 0, 4252
Debugger [candidate] (4.227 ms) : 0, 4227
Remote Config [baseline] (605.188 µs) : 0, 605
Remote Config [candidate] (602.582 µs) : 0, 603
Telemetry [baseline] (8.677 ms) : 0, 8677
Telemetry [candidate] (8.686 ms) : 0, 8686
IAST [baseline] (23.859 ms) : 0, 23859
IAST [candidate] (23.638 ms) : 0, 23638
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (841.888 ms) : 0, 841888
BytebuddyAgent [candidate] (844.425 ms) : 0, 844425
GlobalTracer [baseline] (230.149 ms) : 0, 230149
GlobalTracer [candidate] (231.722 ms) : 0, 231722
AppSec [baseline] (53.978 ms) : 0, 53978
AppSec [candidate] (53.419 ms) : 0, 53419
Debugger [baseline] (4.25 ms) : 0, 4250
Debugger [candidate] (4.25 ms) : 0, 4250
Remote Config [baseline] (606.826 µs) : 0, 607
Remote Config [candidate] (603.512 µs) : 0, 604
Telemetry [baseline] (8.659 ms) : 0, 8659
Telemetry [candidate] (8.835 ms) : 0, 8835
IAST [baseline] (23.131 ms) : 0, 23131
IAST [candidate] (23.28 ms) : 0, 23280
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (840.048 ms) : 0, 840048
BytebuddyAgent [candidate] (845.241 ms) : 0, 845241
GlobalTracer [baseline] (230.895 ms) : 0, 230895
GlobalTracer [candidate] (231.056 ms) : 0, 231056
AppSec [baseline] (56.633 ms) : 0, 56633
AppSec [candidate] (55.968 ms) : 0, 55968
Debugger [baseline] (4.199 ms) : 0, 4199
Debugger [candidate] (4.154 ms) : 0, 4154
Remote Config [baseline] (621.334 µs) : 0, 621
Remote Config [candidate] (601.621 µs) : 0, 602
Telemetry [baseline] (8.683 ms) : 0, 8683
Telemetry [candidate] (8.556 ms) : 0, 8556
IAST [baseline] (22.622 ms) : 0, 22622
IAST [candidate] (22.421 ms) : 0, 22421
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 14 metrics, 16 unstable metrics. Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.49.0-SNAPSHOT~8b77a18ede, baseline=1.49.0-SNAPSHOT~6b6cbf6499
dateFormat X
axisFormat %s
section baseline
no_agent (384.713 µs) : 364, 405
. : milestone, 385,
iast (526.859 µs) : 504, 549
. : milestone, 527,
iast_FULL (740.585 µs) : 719, 763
. : milestone, 741,
iast_GLOBAL (565.219 µs) : 543, 587
. : milestone, 565,
iast_HARDCODED_SECRET_DISABLED (520.84 µs) : 499, 542
. : milestone, 521,
iast_INACTIVE (468.191 µs) : 447, 490
. : milestone, 468,
iast_TELEMETRY_OFF (508.482 µs) : 486, 531
. : milestone, 508,
tracing (464.129 µs) : 443, 485
. : milestone, 464,
section candidate
no_agent (385.961 µs) : 366, 406
. : milestone, 386,
iast (518.994 µs) : 497, 541
. : milestone, 519,
iast_FULL (738.863 µs) : 717, 761
. : milestone, 739,
iast_GLOBAL (568.344 µs) : 546, 591
. : milestone, 568,
iast_HARDCODED_SECRET_DISABLED (522.02 µs) : 500, 544
. : milestone, 522,
iast_INACTIVE (466.586 µs) : 446, 488
. : milestone, 467,
iast_TELEMETRY_OFF (507.493 µs) : 486, 529
. : milestone, 507,
tracing (458.111 µs) : 438, 478
. : milestone, 458,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.49.0-SNAPSHOT~8b77a18ede, baseline=1.49.0-SNAPSHOT~6b6cbf6499
dateFormat X
axisFormat %s
section baseline
no_agent (1.367 ms) : 1347, 1387
. : milestone, 1367,
appsec (1.745 ms) : 1723, 1768
. : milestone, 1745,
appsec_no_iast (1.75 ms) : 1725, 1776
. : milestone, 1750,
code_origins (1.719 ms) : 1693, 1745
. : milestone, 1719,
iast (1.544 ms) : 1521, 1568
. : milestone, 1544,
profiling (1.604 ms) : 1579, 1629
. : milestone, 1604,
tracing (1.523 ms) : 1499, 1547
. : milestone, 1523,
section candidate
no_agent (1.359 ms) : 1339, 1378
. : milestone, 1359,
appsec (1.742 ms) : 1719, 1765
. : milestone, 1742,
appsec_no_iast (1.762 ms) : 1739, 1785
. : milestone, 1762,
code_origins (1.711 ms) : 1685, 1738
. : milestone, 1711,
iast (1.526 ms) : 1501, 1551
. : milestone, 1526,
profiling (1.559 ms) : 1534, 1584
. : milestone, 1559,
tracing (1.522 ms) : 1498, 1547
. : milestone, 1522,
Dacapo |
svc-squareup-copybara
pushed a commit
to cashapp/misk
that referenced
this pull request
May 7, 2025
| Package | Type | Package file | Manager | Update | Change | |---|---|---|---|---|---| | [com.google.cloud:google-cloud-logging](https://github.com/googleapis/java-logging) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `3.22.2` -> `3.22.3` | | [com.google.cloud:google-cloud-datastore](https://github.com/googleapis/java-datastore) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.28.0` -> `2.28.1` | | [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.48.2` -> `1.49.0` | | [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.36` -> `2.31.37` | | [software.amazon.awssdk:sqs](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.36` -> `2.31.37` | | [software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.36` -> `2.31.37` | | [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.36` -> `2.31.37` | | [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.36` -> `2.31.37` | | [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.36` -> `2.31.37` | | [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.36` -> `2.31.37` | --- ### Release Notes <details> <summary>googleapis/java-logging (com.google.cloud:google-cloud-logging)</summary> ### [`v3.22.3`](https://github.com/googleapis/java-logging/blob/HEAD/CHANGELOG.md#3223-2025-05-06) ##### Bug Fixes - **deps:** Update the Java code generator (gapic-generator-java) to 2.56.3 ([844f4fa](googleapis/java-logging@844f4fa)) ##### Dependencies - Update dependency com.google.cloud:sdk-platform-java-config to v3.46.3 ([#​1801](googleapis/java-logging#1801)) ([d7aa7bc](googleapis/java-logging@d7aa7bc)) - Update dependency com.google.cloud:sdk-platform-java-config to v3.47.0 ([#​1803](googleapis/java-logging#1803)) ([5967ffe](googleapis/java-logging@5967ffe)) - Update googleapis/sdk-platform-java action to v2.57.0 ([#​1804](googleapis/java-logging#1804)) ([e9a27ec](googleapis/java-logging@e9a27ec)) </details> <details> <summary>googleapis/java-datastore (com.google.cloud:google-cloud-datastore)</summary> ### [`v2.28.1`](https://github.com/googleapis/java-datastore/blob/HEAD/CHANGELOG.md#2281-2025-05-06) ##### Dependencies - Update dependency com.google.cloud:sdk-platform-java-config to v3.47.0 ([#​1841](googleapis/java-datastore#1841)) ([ac393e6](googleapis/java-datastore@ac393e6)) - Update googleapis/sdk-platform-java action to v2.57.0 ([#​1842](googleapis/java-datastore#1842)) ([0745906](googleapis/java-datastore@0745906)) </details> <details> <summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary> ### [`v1.49.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.49.0): 1.49.0 ### Components #### Configuration at Runtime - ✨ Add process tags as list to remote config payload ([#​8705](DataDog/dd-trace-java#8705) - [@​amarziali](https://github.com/amarziali)) #### Continuous Integration Visibility - 🐛 Add span propagation for Pekko scheduled tasks ([#​8765](DataDog/dd-trace-java#8765) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Update test.retry_reason to use full name of the feature ([#​8689](DataDog/dd-trace-java#8689) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - 🧹 Remove unused TestEventsHandler methods ([#​8674](DataDog/dd-trace-java#8674) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) #### Dynamic Instrumentation - 🐛 Fix exclude identifiers normalization ([#​8742](DataDog/dd-trace-java#8742) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Make source file tracking asynchronous ([#​8684](DataDog/dd-trace-java#8684) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add scope filtering for symbol extraction ([#​8676](DataDog/dd-trace-java#8676) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add support for [@​key](https://github.com/key) and [@​value](https://github.com/value) for Map filtering ([#​8669](DataDog/dd-trace-java#8669) - [@​jpbempel](https://github.com/jpbempel)) #### Library Injection - ✨ Add system property to force injection of the tracing library even though multiple javaagents have been detected ([#​8697](DataDog/dd-trace-java#8697) - [@​cecile75](https://github.com/cecile75)) #### Metrics - ✨ Allow dogstatsd port to be configurable with DD_DOGSTATSD_PORT ([#​8693](DataDog/dd-trace-java#8693) - [@​randomanderson](https://github.com/randomanderson)) #### Profiling - ✨ Bump ddprof-java to 1.25.1 ([#​8750](DataDog/dd-trace-java#8750) - [@​jbachorik](https://github.com/jbachorik)) - 🐛 Remove cleanup-on-shutdown for temporary files ([#​8746](DataDog/dd-trace-java#8746) - [@​jbachorik](https://github.com/jbachorik)) - ✨⚡ Replace a regex-based SMAP parser with a hand-crafted one ([#​8730](DataDog/dd-trace-java#8730) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Improve error reporting on profiler startup ([#​8714](DataDog/dd-trace-java#8714) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Exclude ProxyLeakTask exception from exception profiling ([#​8666](DataDog/dd-trace-java#8666) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Use jvmstat for JDKs 9+ programmatically ([#​8641](DataDog/dd-trace-java#8641) - [@​MattAlp](https://github.com/MattAlp)) #### Telemetry - ✨ Allow dogstatsd port to be configurable with DD_DOGSTATSD_PORT ([#​8693](DataDog/dd-trace-java#8693) - [@​randomanderson](https://github.com/randomanderson)) - 🐛 Fix appsec.waf.requests telemetry metric ([#​8644](DataDog/dd-trace-java#8644) - [@​jandro996](https://github.com/jandro996)) #### Tracer core - ✨ Exclude jackson afterburner dynamic classes from instrumentation ([#​8747](DataDog/dd-trace-java#8747) - [@​amarziali](https://github.com/amarziali)) - ✨ Introduce Java 8 bytecode bridge for instrumentation API ([#​8736](DataDog/dd-trace-java#8736) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - ⚡🧹 Use byte-buddy classes optimized for Java8+ ([#​8735](DataDog/dd-trace-java#8735) - [@​mcculls](https://github.com/mcculls)) - 🐛 Do not set the hibernate or datanucleus span service name when disabled ([#​8727](DataDog/dd-trace-java#8727) - [@​ygree](https://github.com/ygree)) - ✨ Update bytebuddy and ASM to support JDK 24 ([#​8720](DataDog/dd-trace-java#8720) - [@​sarahchen6](https://github.com/sarahchen6)) - 🐛 Turn off JDK socket support by default ([#​8715](DataDog/dd-trace-java#8715) - [@​mcculls](https://github.com/mcculls)) - 🐛 Log warning when trace buffer overflow occurs ([#​8712](DataDog/dd-trace-java#8712) - [@​ygree](https://github.com/ygree)) - ✨🧪 Introducing an internal integration name ([#​8708](DataDog/dd-trace-java#8708) - [@​amarziali](https://github.com/amarziali)) - ✨ Add process tags to client stats payload ([#​8704](DataDog/dd-trace-java#8704) - [@​amarziali](https://github.com/amarziali)) - ✨ Collect process tags for tracing ([#​8698](DataDog/dd-trace-java#8698) - [@​amarziali](https://github.com/amarziali)) - ✨ Stable Config file: target system properties in process_arguments and support template variables in YamlParser ([#​8690](DataDog/dd-trace-java#8690) - [@​mtoffl01](https://github.com/mtoffl01)) - ✨⚡ Use prefix trie for proxy ignores ([#​8678](DataDog/dd-trace-java#8678) - [@​amarziali](https://github.com/amarziali)) - ✨ Allow agent to be automatically injected when running aside Log4J patch agent ([#​8648](DataDog/dd-trace-java#8648) - [@​paullegranddc](https://github.com/paullegranddc)) - ✨ Use jvmstat for JDKs 9+ programmatically ([#​8641](DataDog/dd-trace-java#8641) - [@​MattAlp](https://github.com/MattAlp)) #### Tracer internal logging - 🐛 Delete print line ([#​8686](DataDog/dd-trace-java#8686) - [@​sarahchen6](https://github.com/sarahchen6)) ### Instrumentations #### Akka instrumentation - 🐛 Handle reentrant scope cleanup in Akka/Pekko actor instrumentations ([#​8722](DataDog/dd-trace-java#8722) - [@​mcculls](https://github.com/mcculls)) #### Apache Spark instrumentation - ✨ Use OpenLineage root parent information to generate trace id ([#​8726](DataDog/dd-trace-java#8726) - [@​mobuchowski](https://github.com/mobuchowski)) - ✨ Spark job cancellation no longer marks application as failed ([#​8701](DataDog/dd-trace-java#8701) - [@​paul-laffon-dd](https://github.com/paul-laffon-dd)) #### JDBC instrumentation - 💡 Add support for sybase tds jdbc driver ([#​8764](DataDog/dd-trace-java#8764) - [@​amarziali](https://github.com/amarziali)) #### Kotlin instrumentation - 🐛 Take defensive copy of parent scope stack when closing nested coroutines ([#​8749](DataDog/dd-trace-java#8749) - [@​mcculls](https://github.com/mcculls)) #### Reactor instrumentation - ✨⚡ Do not inspect reactor context when not needed ([#​8745](DataDog/dd-trace-java#8745) - [@​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**: 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: 795f347ae34d056efc1194c2f606cee7bca1beea
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What Does This Do
Akka/Pekko actor instrumentations use the scope checkpoint and rollback mechanism to clean up scopes after async operations. To properly handle reentrant scope checkpointing and rollback we need to use a count in
ContinuableScope
likereferenceCount
rather than just a flag.Motivation
This is necessary because ContinuableScopeManager re-uses scope instances when activating the same span twice.
If scopes weren't re-used in this way then we could use a simple flag per scope.
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]