Skip to content

Add compile-time fault-injection infrastructure for stack-walker recovery paths#661

Merged
gh-worker-dd-mergequeue-cf854d[bot] merged 23 commits into
mainfrom
zgu/fault-injection
Jul 20, 2026
Merged

Add compile-time fault-injection infrastructure for stack-walker recovery paths#661
gh-worker-dd-mergequeue-cf854d[bot] merged 23 commits into
mainfrom
zgu/fault-injection

Conversation

@zhengyu123

@zhengyu123 zhengyu123 commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

What does this PR do?:
Adds a compile-time fault-injection layer that deliberately corrupts pointers at the profiler's real memory-access sites so the existing recovery paths (SafeAccess safefetch and walkVM's setjmp/longjmp) are exercised continuously under test. Entirely gated behind FAULT_INJECTION: when the flag is absent every construct is a strict identity/no-op with zero runtime cost, so production release/debug/asan/tsan builds are unaffected.

To build fault-injected binaries, add -PenableFaultInjection flag to the command line, e.g.

./gradlew -PenableFaultInjection  clean builddebug

This iteration emphasizes on installing the framework, with limited fault injection sites. More injection sites will be added in followup PRs.

Motivation:
Motivation and goal is documented here

Additional Notes:

What's included

  • Core layer (new files)

faultInjection.h — three probability tiers as integer xorshift thresholds (RARE 0.01%, UNLIKELY 0.1%, LIKELY 1%) and the INJECT_FAULT_{ADDRESS,INT,LONG}_{RARE,UNLIKELY,LIKELY} macros. When the flag is off, each macro is a strict identity ((ptr)/(v)).
faultInjection.cpp — PRNG, PROT_NONE guard-region setup, and poisonAddress() (mix of a mmap'd guard-page pointer and random non-canonical addresses).

  • Per-thread PRNG
    threadLocalData.h — per-thread xorshift64 state in ProfiledThread (async-signal-safe), with a global atomic fallback.

  • Injection sites (wrap the dereferenced pointer)
    stackWalker.cpp — walkFP / walkDwarf SafeAccess loads (LIKELY) → safefetch recovery.
    hotspot/hotspotSupport.cpp — walkVM raw derefs (UNLIKELY) → setjmp/longjmp recovery.
    hotspot/vmStructs.h — VMStructs::at() (RARE).
    profiler.cpp — calls faultinj::init() at signal-handler setup.

  • Counters (counters.h, live under -DCOUNTERS)
    safecopy_failed, safefetch_failed, faults_injected, walkvm_longjmp_recovered — instrument the recovery mechanisms so injection activity and each recovery route are observable.

  • Build wiring

-PenableFaultInjection appends -D__FAULT_INJECTION__ to the standard release/debug library builds (so buildDebug/buildRelease produce a fault-injected libjavaProfiler.so) and to the gtest build. Deliberately not applied to asan/tsan/fuzzer, which install their own SIGSEGV interception.

  • Tests
    faultInjection_ut.cpp — disabled-path identity checks (default build) plus enabled-path tier-rate bands and SafeAccess/walkVM recovery tests (-PenableFaultInjection).

How to test the change?:

  • ./gradlew :ddprof-lib:gtestDebug_faultInjection_ut -PenableFaultInjection — 6 enabled cases pass.
  • ./gradlew :ddprof-lib:gtestDebug_faultInjection_ut (default) — 2 identity cases pass.
  • ./gradlew -PenableFaultInjection :ddprof-lib:assembleDebug — verified faultinj::* symbols present (.symtab; hidden visibility, not exported).

For Datadog employees:

  • If this PR touches code that signs or publishes builds or packages, or handles
    credentials of any kind, I've requested a security review (run the dd:platform-security-review
    skill, or file a request via the PSEC review form).
    bewaire also runs automatically on every PR.
  • This PR doesn't touch any of that.
  • JIRA: PROF-15401

Unsure? Have a question? Request a review!

@dd-octo-sts

dd-octo-sts Bot commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

CI Test Results

Run: #29772695686 | Commit: b05a6ca | Duration: 14m 45s (longest job)

All 32 test jobs passed

Status Overview

JDK glibc-aarch64/debug glibc-amd64/debug musl-aarch64/debug musl-amd64/debug
8 - - -
8-ibm - - -
8-j9 - -
8-librca - -
8-orcl - - -
11 - - -
11-j9 - -
11-librca - -
17 - -
17-graal - -
17-j9 - -
17-librca - -
21 - -
21-graal - -
21-librca - -
25 - -
25-graal - -
25-librca - -

Legend: ✅ passed | ❌ failed | ⚪ skipped | 🚫 cancelled

Summary: Total: 32 | Passed: 32 | Failed: 0


Updated: 2026-07-20 19:55:26 UTC

@dd-octo-sts

dd-octo-sts Bot commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Benchmark Results (commit d85f055)

Pipeline: https://gitlab.ddbuild.io/DataDog/apm-reliability/benchmarking-platform/-/pipelines/124877517 Commit: d85f055273e38b3bd9ad5a6913516fca7d60a0f2

⚠️ Significant outliers

  • 🔴 future-genetic (JDK 25): runtime +5.5% (2025→2137 ms)
Runtime details (per benchmark × JDK)
Benchmark JDK Latest Dev Δ (dev vs latest) Issues L/D
akka-uct 21 ✅ 10232 ms (21 iters) ✅ 10166 ms (21 iters) ≈ -0.6% (±11.1%) — / —
akka-uct 25 ✅ 8907 ms (24 iters) ✅ 8929 ms (24 iters) ≈ +0.2% (±9.6%) — / —
finagle-chirper 21 ✅ 5972 ms (33 iters) ✅ 5984 ms (33 iters) ≈ +0.2% (±25.3%) ⚠️ W:3 / ⚠️ W:3
finagle-chirper 25 ✅ 5441 ms (36 iters) ✅ 5530 ms (36 iters) ≈ +1.6% (±25%) ⚠️ W:3 / ⚠️ W:4
fj-kmeans 21 ✅ 2734 ms (69 iters) ✅ 2707 ms (70 iters) ≈ -1% (±2.7%) — / —
fj-kmeans 25 ✅ 2822 ms (66 iters) ✅ 2833 ms (66 iters) ≈ +0.4% (±2.6%) — / —
future-genetic 21 ✅ 2088 ms (89 iters) ✅ 2087 ms (89 iters) ≈ -0% (±2.7%) — / —
future-genetic 25 ✅ 2025 ms (92 iters) ✅ 2137 ms (87 iters) 🔴 +5.5% — / —
naive-bayes 21 ✅ 1286 ms (134 iters) ✅ 1344 ms (128 iters) ≈ +4.5% (±33%) — / —
naive-bayes 25 ✅ 1010 ms (170 iters) ✅ 1027 ms (166 iters) ≈ +1.7% (±32.1%) — / —
reactors 21 ✅ 16543 ms (15 iters) ✅ 16267 ms (15 iters) ≈ -1.7% (±8%) — / —
reactors 25 ✅ 18414 ms (15 iters) ✅ 18374 ms (15 iters) ≈ -0.2% (±4.2%) — / —
Internal counter details (ddprof)

ddprof internal counters, latest / dev (✅ = 0, · = unavailable):

Benchmark JDK Dropped rec Dropped jvmti Dropped trace Skipped WC AGCT fail Unwind fail
akka-uct 21 ✅ / ✅ ✅ / ✅ ✅ / 3 2017 / 2006 ✅ / ✅ ✅ / ✅
akka-uct 25 ✅ / ✅ ✅ / ✅ 1 / 3 2142 / 2423 ✅ / ✅ ✅ / ✅
finagle-chirper 21 ✅ / ✅ ✅ / ✅ 5 / 2 8761 / 8937 ✅ / ✅ ✅ / ✅
finagle-chirper 25 ✅ / ✅ ✅ / ✅ 1 / 4 8332 / 8785 ✅ / ✅ ✅ / ✅
fj-kmeans 21 ✅ / ✅ ✅ / ✅ 2 / 2 1285 / 1288 ✅ / ✅ ✅ / ✅
fj-kmeans 25 ✅ / ✅ ✅ / ✅ 2 / 3 1273 / 1302 ✅ / ✅ ✅ / ✅
future-genetic 21 ✅ / ✅ ✅ / ✅ ✅ / 1 3049 / 3118 ✅ / ✅ ✅ / ✅
future-genetic 25 ✅ / ✅ ✅ / ✅ 1 / 1 2892 / 2926 ✅ / ✅ ✅ / ✅
naive-bayes 21 ✅ / ✅ ✅ / ✅ 3 / 6 3506 / 3515 ✅ / ✅ ✅ / ✅
naive-bayes 25 ✅ / ✅ ✅ / ✅ 4 / 2 3476 / 3495 ✅ / ✅ ✅ / ✅
reactors 21 ✅ / ✅ ✅ / ✅ 2 / ✅ 1758 / 1644 ✅ / ✅ ✅ / ✅
reactors 25 ✅ / ✅ ✅ / ✅ ✅ / 2 1913 / 1843 ✅ / ✅ ✅ / ✅

@dd-octo-sts

dd-octo-sts Bot commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Reliability & Chaos Results

All reliability & chaos checks passed Pipeline: https://gitlab.ddbuild.io/DataDog/java-profiler/-/pipelines/125719157

@zhengyu123 zhengyu123 changed the title Investigate and implement fault injection for Java profiler Add compile-time fault-injection infrastructure for stack-walker recovery paths Jul 15, 2026
@zhengyu123
zhengyu123 requested a review from Copilot July 15, 2026 21:23

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR introduces an opt-in, compile-time fault-injection layer (__FAULT_INJECTION__) to deliberately corrupt pointer/value reads at real profiler memory-access sites, so existing recovery paths (SafeAccess safefetch and walkVM setjmp/longjmp) are continuously exercised under test without affecting production builds.

Changes:

  • Added new fault-injection infrastructure (faultInjection.h/.cpp) with tiered probabilities and a per-thread PRNG seed/state.
  • Wrapped key memory-access sites (stack walker, HotSpot walkVM, VMStructs) with injection macros and added counters to observe injection/recovery activity.
  • Wired -PenableFaultInjection into native build configurations and gtest builds; added a dedicated gtest suite for enabled/disabled behavior.

Reviewed changes

Copilot reviewed 12 out of 12 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
ddprof-lib/src/main/cpp/faultInjection.h New public fault-injection API/macros gated by __FAULT_INJECTION__.
ddprof-lib/src/main/cpp/faultInjection.cpp New implementation: PRNG, guard-region setup, poison address generation, injected int/long values.
ddprof-lib/src/main/cpp/threadLocalData.h Adds per-thread xorshift64 RNG state and accessors under __FAULT_INJECTION__.
ddprof-lib/src/main/cpp/stackWalker.cpp Wraps SafeAccess dereference sites with fault-injection macros.
ddprof-lib/src/main/cpp/hotspot/hotspotSupport.cpp Wraps selected raw walkVM dereferences; increments longjmp recovery counter.
ddprof-lib/src/main/cpp/hotspot/vmStructs.h Injects faults in VMStructs::at() return pointers (rare tier).
ddprof-lib/src/main/cpp/safeAccess.cpp Adds counter increments on safefetch/safecopy recovery paths.
ddprof-lib/src/main/cpp/profiler.cpp Initializes fault-injection guard region during signal-handler setup (when enabled).
ddprof-lib/src/main/cpp/counters.h Adds new counters for safefetch/safecopy failures, injected faults, and walkVM longjmp recovery.
ddprof-lib/src/test/cpp/faultInjection_ut.cpp New unit tests for disabled identity behavior and enabled fault/recovery behavior.
build-logic/conventions/src/main/kotlin/com/datadoghq/native/config/ConfigurationPresets.kt Adds -D__FAULT_INJECTION__ to debug/release when -PenableFaultInjection is set.
build-logic/conventions/src/main/kotlin/com/datadoghq/native/gtest/GtestTaskBuilder.kt Mirrors the fault-injection define into gtest compilation under -PenableFaultInjection.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread ddprof-lib/src/main/cpp/safeAccess.cpp
Comment thread ddprof-lib/src/main/cpp/safeAccess.cpp
Comment thread ddprof-lib/src/main/cpp/faultInjection.cpp
Comment thread ddprof-lib/src/main/cpp/faultInjection.cpp
Comment thread ddprof-lib/src/main/cpp/faultInjection.h Outdated
Comment thread ddprof-lib/src/test/cpp/faultInjection_ut.cpp
zhengyu123 and others added 3 commits July 16, 2026 14:30
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@dd-octo-sts

dd-octo-sts Bot commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

Benchmark Results (commit f1c6dc1)

Pipeline: https://gitlab.ddbuild.io/DataDog/apm-reliability/benchmarking-platform/-/pipelines/124997579 Commit: f1c6dc1111fa56451484355bba2662323b3cd11b

✅ Within expected boundaries

No significant runtime deltas (all within run-to-run noise) and no internal-counter outliers.

Runtime details (per benchmark × JDK)
Benchmark JDK Latest Dev Δ (dev vs latest) Issues L/D
akka-uct 21 ✅ 10321 ms (21 iters) ✅ 10408 ms (21 iters) ≈ +0.8% (±11%) — / —
akka-uct 25 ✅ 8949 ms (24 iters) ✅ 8862 ms (24 iters) ≈ -1% (±10.1%) — / —
finagle-chirper 21 ✅ 5903 ms (33 iters) ✅ 6000 ms (33 iters) ≈ +1.6% (±25%) ⚠️ W:3 / ⚠️ W:4
finagle-chirper 25 ✅ 5459 ms (36 iters) ✅ 5441 ms (36 iters) ≈ -0.3% (±24.4%) ⚠️ W:4 / ⚠️ W:3
fj-kmeans 21 ✅ 2733 ms (68 iters) ✅ 2788 ms (67 iters) ≈ +2% (±2.8%) — / —
fj-kmeans 25 ✅ 2821 ms (66 iters) ✅ 2800 ms (66 iters) ≈ -0.7% (±2.6%) — / —
future-genetic 21 ✅ 2046 ms (90 iters) ✅ 2065 ms (90 iters) ≈ +0.9% (±2.6%) — / —
future-genetic 25 ✅ 2064 ms (90 iters) ✅ 2059 ms (90 iters) ≈ -0.2% (±2.7%) — / —
naive-bayes 21 ✅ 1323 ms (130 iters) ✅ 1300 ms (132 iters) ≈ -1.7% (±32.1%) — / —
naive-bayes 25 ✅ 1013 ms (169 iters) ✅ 1005 ms (169 iters) ≈ -0.8% (±31.7%) — / —
reactors 21 ✅ 16153 ms (15 iters) ✅ 16163 ms (15 iters) ≈ +0.1% (±7.9%) — / —
reactors 25 ✅ 18820 ms (15 iters) ✅ 18126 ms (15 iters) ≈ -3.7% (±3.9%) — / —
Internal counter details (ddprof)

ddprof internal counters, latest / dev (✅ = 0, · = unavailable):

Benchmark JDK Dropped rec Dropped jvmti Dropped trace Skipped WC AGCT fail Unwind fail
akka-uct 21 ✅ / ✅ ✅ / ✅ 1 / 1 1981 / 2028 ✅ / ✅ ✅ / ✅
akka-uct 25 ✅ / ✅ ✅ / ✅ 1 / 1 2179 / 2251 ✅ / ✅ ✅ / ✅
finagle-chirper 21 ✅ / ✅ ✅ / ✅ 2 / 4 8560 / 8427 ✅ / ✅ ✅ / ✅
finagle-chirper 25 ✅ / ✅ ✅ / ✅ 4 / ✅ 8460 / 8385 ✅ / ✅ ✅ / ✅
fj-kmeans 21 ✅ / ✅ ✅ / ✅ ✅ / 3 1270 / 1249 ✅ / ✅ ✅ / ✅
fj-kmeans 25 ✅ / ✅ ✅ / ✅ 3 / 2 1284 / 1263 ✅ / ✅ ✅ / ✅
future-genetic 21 ✅ / ✅ ✅ / ✅ 1 / ✅ 2904 / 2824 ✅ / ✅ ✅ / ✅
future-genetic 25 ✅ / ✅ ✅ / ✅ 2 / 2 2744 / 2801 ✅ / ✅ ✅ / ✅
naive-bayes 21 ✅ / ✅ ✅ / ✅ 6 / 1 3543 / 3493 ✅ / ✅ ✅ / ✅
naive-bayes 25 ✅ / ✅ ✅ / ✅ 7 / 1 3479 / 3487 ✅ / ✅ ✅ / ✅
reactors 21 ✅ / ✅ ✅ / ✅ 2 / ✅ 1698 / 1572 ✅ / ✅ ✅ / ✅
reactors 25 ✅ / ✅ ✅ / ✅ 2 / ✅ 1960 / 1824 ✅ / ✅ ✅ / ✅

@dd-octo-sts

dd-octo-sts Bot commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

Benchmark Results (commit b88f34e)

Pipeline: https://gitlab.ddbuild.io/DataDog/apm-reliability/benchmarking-platform/-/pipelines/125033402 Commit: b88f34ec8edeb4333ba152c49ebc16c24913e4d0

⚠️ Significant outliers

  • 🔴 fj-kmeans (JDK 25): runtime +3.2% (2774→2864 ms)
  • 🔴 future-genetic (JDK 25): runtime +3% (2079→2142 ms)
Runtime details (per benchmark × JDK)
Benchmark JDK Latest Dev Δ (dev vs latest) Issues L/D
akka-uct 21 ✅ 10294 ms (21 iters) ✅ 10207 ms (21 iters) ≈ -0.8% (±11.4%) — / —
akka-uct 25 ✅ 8806 ms (24 iters) ✅ 8847 ms (24 iters) ≈ +0.5% (±10.2%) — / —
finagle-chirper 21 ✅ 5993 ms (33 iters) ✅ 5964 ms (33 iters) ≈ -0.5% (±25.4%) ⚠️ W:3 / ⚠️ W:3
finagle-chirper 25 ✅ 5507 ms (36 iters) ✅ 5410 ms (36 iters) ≈ -1.8% (±23.7%) ⚠️ W:3 / ⚠️ W:3
fj-kmeans 21 ✅ 2746 ms (68 iters) ✅ 2751 ms (68 iters) ≈ +0.2% (±2.7%) — / —
fj-kmeans 25 ✅ 2774 ms (68 iters) ✅ 2864 ms (66 iters) 🔴 +3.2% — / —
future-genetic 21 ✅ 2097 ms (89 iters) ✅ 2095 ms (89 iters) ≈ -0.1% (±2.6%) — / —
future-genetic 25 ✅ 2079 ms (89 iters) ✅ 2142 ms (87 iters) 🔴 +3% — / —
naive-bayes 21 ✅ 1267 ms (135 iters) ✅ 1274 ms (134 iters) ≈ +0.6% (±32.7%) — / —
naive-bayes 25 ✅ 1012 ms (169 iters) ✅ 1007 ms (170 iters) ≈ -0.5% (±31.2%) — / —
reactors 21 ✅ 16315 ms (15 iters) ✅ 16117 ms (15 iters) ≈ -1.2% (±7.6%) — / —
reactors 25 ✅ 18032 ms (15 iters) ✅ 18381 ms (15 iters) ≈ +1.9% (±5.9%) — / —
Internal counter details (ddprof)

ddprof internal counters, latest / dev (✅ = 0, · = unavailable):

Benchmark JDK Dropped rec Dropped jvmti Dropped trace Skipped WC AGCT fail Unwind fail
akka-uct 21 ✅ / ✅ ✅ / ✅ 1 / 1 1961 / 1910 ✅ / ✅ ✅ / ✅
akka-uct 25 ✅ / ✅ ✅ / ✅ 2 / 2 2182 / 2135 ✅ / ✅ ✅ / ✅
finagle-chirper 21 ✅ / ✅ ✅ / ✅ 4 / 2 8807 / 8361 ✅ / ✅ ✅ / ✅
finagle-chirper 25 ✅ / ✅ ✅ / ✅ 2 / ✅ 8192 / 8209 ✅ / ✅ ✅ / ✅
fj-kmeans 21 ✅ / ✅ ✅ / ✅ 3 / ✅ 1255 / 1265 ✅ / ✅ ✅ / ✅
fj-kmeans 25 ✅ / ✅ ✅ / ✅ 4 / 2 1301 / 1285 ✅ / ✅ ✅ / ✅
future-genetic 21 ✅ / ✅ ✅ / ✅ 1 / 3 2941 / 2957 ✅ / ✅ ✅ / ✅
future-genetic 25 ✅ / ✅ ✅ / ✅ 2 / 2 2834 / 2878 ✅ / ✅ ✅ / ✅
naive-bayes 21 ✅ / ✅ ✅ / ✅ ✅ / ✅ ✅ / ✅ ✅ / ✅ ✅ / ✅
naive-bayes 25 ✅ / ✅ ✅ / ✅ 5 / 5 3488 / 3503 ✅ / ✅ ✅ / ✅
reactors 21 ✅ / ✅ ✅ / ✅ 1 / 2 1714 / 1536 ✅ / ✅ ✅ / ✅
reactors 25 ✅ / ✅ ✅ / ✅ ✅ / 1 1876 / 1844 ✅ / ✅ ✅ / ✅

zhengyu123 and others added 3 commits July 16, 2026 18:32
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@datadog-datadog-prod-us1

This comment has been minimized.

@dd-octo-sts

dd-octo-sts Bot commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

Benchmark Results (commit a9371e4)

Pipeline: https://gitlab.ddbuild.io/DataDog/apm-reliability/benchmarking-platform/-/pipelines/125075940 Commit: a9371e44f60581690d72a37bcda992b4c847a551

⚠️ Significant outliers

  • 🔴 future-genetic (JDK 21): runtime +4.5% (2044→2135 ms)
  • 🟢 future-genetic (JDK 25): runtime -3.5% (2094→2020 ms)
Runtime details (per benchmark × JDK)
Benchmark JDK Latest Dev Δ (dev vs latest) Issues L/D
akka-uct 21 ✅ 10288 ms (21 iters) ✅ 10290 ms (21 iters) ≈ +0% (±10.8%) — / —
akka-uct 25 ✅ 8894 ms (24 iters) ✅ 8761 ms (24 iters) ≈ -1.5% (±10%) — / —
finagle-chirper 21 ✅ 5988 ms (33 iters) ✅ 5998 ms (33 iters) ≈ +0.2% (±25.4%) ⚠️ W:3 / ⚠️ W:3
finagle-chirper 25 ✅ 5503 ms (36 iters) ✅ 5442 ms (36 iters) ≈ -1.1% (±24%) ⚠️ W:3 / ⚠️ W:3
fj-kmeans 21 ✅ 2720 ms (68 iters) ✅ 2774 ms (68 iters) ≈ +2% (±2.8%) — / —
fj-kmeans 25 ✅ 2832 ms (66 iters) ✅ 2849 ms (66 iters) ≈ +0.6% (±2.7%) — / —
future-genetic 21 ✅ 2044 ms (90 iters) ✅ 2135 ms (87 iters) 🔴 +4.5% — / —
future-genetic 25 ✅ 2094 ms (89 iters) ✅ 2020 ms (92 iters) 🟢 -3.5% — / —
naive-bayes 21 ✅ 1328 ms (129 iters) ✅ 1296 ms (132 iters) ≈ -2.4% (±32.1%) — / —
naive-bayes 25 ✅ 1013 ms (168 iters) ✅ 987 ms (173 iters) ≈ -2.6% (±31.4%) — / —
reactors 21 ✅ 16133 ms (15 iters) ✅ 16753 ms (15 iters) ≈ +3.8% (±6.7%) — / —
reactors 25 ✅ 18249 ms (15 iters) ✅ 18617 ms (15 iters) ≈ +2% (±4.6%) — / —
Internal counter details (ddprof)

ddprof internal counters, latest / dev (✅ = 0, · = unavailable):

Benchmark JDK Dropped rec Dropped jvmti Dropped trace Skipped WC AGCT fail Unwind fail
akka-uct 21 ✅ / ✅ ✅ / ✅ 1 / 2 2020 / 1939 ✅ / ✅ ✅ / ✅
akka-uct 25 ✅ / ✅ ✅ / ✅ 5 / 3 2250 / 2147 ✅ / ✅ ✅ / ✅
finagle-chirper 21 ✅ / ✅ ✅ / ✅ 2 / 4 8351 / 8601 ✅ / ✅ ✅ / ✅
finagle-chirper 25 ✅ / ✅ ✅ / ✅ 3 / 3 8255 / 8499 ✅ / ✅ ✅ / ✅
fj-kmeans 21 ✅ / ✅ ✅ / ✅ ✅ / 1 1284 / 1277 ✅ / ✅ ✅ / ✅
fj-kmeans 25 ✅ / ✅ ✅ / ✅ 1 / 6 1274 / 1293 ✅ / ✅ ✅ / ✅
future-genetic 21 ✅ / ✅ ✅ / ✅ 1 / ✅ 2922 / 3030 ✅ / ✅ ✅ / ✅
future-genetic 25 ✅ / ✅ ✅ / ✅ 2 / 1 2912 / 2860 ✅ / ✅ ✅ / ✅
naive-bayes 21 ✅ / ✅ ✅ / ✅ 8 / 1 3537 / 3554 ✅ / ✅ ✅ / ✅
naive-bayes 25 ✅ / ✅ ✅ / ✅ 2 / 4 3491 / 3482 ✅ / ✅ ✅ / ✅
reactors 21 ✅ / ✅ ✅ / ✅ 1 / ✅ 1670 / 1610 ✅ / ✅ ✅ / ✅
reactors 25 ✅ / ✅ ✅ / ✅ 1 / ✅ 1804 / 1891 ✅ / ✅ ✅ / ✅

@dd-octo-sts

dd-octo-sts Bot commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

Benchmark Results (commit ca8ed89)

Pipeline: https://gitlab.ddbuild.io/DataDog/apm-reliability/benchmarking-platform/-/pipelines/125124487 Commit: ca8ed8986656e5eef5d1519121ad48c150566c22

✅ Within expected boundaries

No significant runtime deltas (all within run-to-run noise) and no internal-counter outliers.

Runtime details (per benchmark × JDK)
Benchmark JDK Latest Dev Δ (dev vs latest) Issues L/D
akka-uct 21 ✅ 10406 ms (21 iters) ✅ 10378 ms (21 iters) ≈ -0.3% (±11.8%) — / —
akka-uct 25 ✅ 8855 ms (24 iters) ✅ 8864 ms (24 iters) ≈ +0.1% (±10.9%) — / —
finagle-chirper 25 ✅ 5538 ms (35 iters) ✅ 5468 ms (36 iters) ≈ -1.3% (±24.6%) ⚠️ W:3 / ⚠️ W:3
fj-kmeans 25 ✅ 2823 ms (66 iters) ✅ 2847 ms (66 iters) ≈ +0.9% (±2.6%) — / —
future-genetic 21 ✅ 2095 ms (89 iters) ✅ 2074 ms (89 iters) ≈ -1% (±2.6%) — / —
future-genetic 25 ✅ 2027 ms (92 iters) ✅ 2074 ms (89 iters) ≈ +2.3% (±2.7%) — / —
naive-bayes 21 ✅ 1255 ms (136 iters) ✅ 1262 ms (135 iters) ≈ +0.6% (±32.9%) — / —
naive-bayes 25 ✅ 991 ms (173 iters) ✅ 1014 ms (168 iters) ≈ +2.3% (±32.1%) — / —
reactors 21 ✅ 15888 ms (15 iters) ✅ 15972 ms (15 iters) ≈ +0.5% (±8.1%) — / —
reactors 25 ✅ 18520 ms (15 iters) ✅ 18532 ms (15 iters) ≈ +0.1% (±3.7%) — / —
Internal counter details (ddprof)

ddprof internal counters, latest / dev (✅ = 0, · = unavailable):

Benchmark JDK Dropped rec Dropped jvmti Dropped trace Skipped WC AGCT fail Unwind fail
akka-uct 21 ✅ / ✅ ✅ / ✅ ✅ / 1 1937 / 2078 ✅ / ✅ ✅ / ✅
akka-uct 25 ✅ / ✅ ✅ / ✅ 1 / ✅ 2212 / 2138 ✅ / ✅ ✅ / ✅
finagle-chirper 25 ✅ / ✅ ✅ / ✅ 2 / ✅ 8563 / 8397 ✅ / ✅ ✅ / ✅
fj-kmeans 21 ✅ / ✅ ✅ / ✅ 2 / ✅ 1251 / 1273 ✅ / ✅ ✅ / ✅
fj-kmeans 25 ✅ / ✅ ✅ / ✅ 1 / 2 1285 / 1301 ✅ / ✅ ✅ / ✅
future-genetic 21 ✅ / ✅ ✅ / ✅ ✅ / 3 2917 / 2893 ✅ / ✅ ✅ / ✅
future-genetic 25 ✅ / ✅ ✅ / ✅ 2 / ✅ 2808 / 2900 ✅ / ✅ ✅ / ✅
naive-bayes 21 ✅ / ✅ ✅ / ✅ 1 / 3 3521 / 3489 ✅ / ✅ ✅ / ✅
naive-bayes 25 ✅ / ✅ ✅ / ✅ 3 / 2 3490 / 3469 ✅ / ✅ ✅ / ✅
reactors 21 ✅ / ✅ ✅ / ✅ ✅ / 1 1539 / 1585 ✅ / ✅ ✅ / ✅
reactors 25 ✅ / ✅ ✅ / ✅ 2 / ✅ 1860 / 1918 ✅ / ✅ ✅ / ✅

@dd-octo-sts

dd-octo-sts Bot commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

Benchmark Results (commit c1426c9)

Pipeline: https://gitlab.ddbuild.io/DataDog/apm-reliability/benchmarking-platform/-/pipelines/125143187 Commit: c1426c9a5a64668d8660efbc13e9a189c3de07e8

⚠️ Significant outliers

  • 🟢 fj-kmeans (JDK 21): runtime -5% (2773→2635 ms)
  • 🔴 future-genetic (JDK 25): runtime +5% (1989→2089 ms)
Runtime details (per benchmark × JDK)
Benchmark JDK Latest Dev Δ (dev vs latest) Issues L/D
akka-uct 21 ✅ 10213 ms (21 iters) ✅ 10164 ms (21 iters) ≈ -0.5% (±10.7%) — / —
akka-uct 25 ✅ 8905 ms (24 iters) ✅ 8972 ms (24 iters) ≈ +0.8% (±10.1%) — / —
finagle-chirper 21 ✅ 5986 ms (33 iters) ✅ 5962 ms (33 iters) ≈ -0.4% (±25%) ⚠️ W:3 / ⚠️ W:3
finagle-chirper 25 ✅ 5436 ms (36 iters) ✅ 5463 ms (36 iters) ≈ +0.5% (±24.4%) ⚠️ W:3 / ⚠️ W:3
fj-kmeans 21 ✅ 2773 ms (67 iters) ✅ 2635 ms (72 iters) 🟢 -5% — / —
fj-kmeans 25 ✅ 2765 ms (68 iters) ✅ 2836 ms (66 iters) ≈ +2.6% (±2.7%) — / —
future-genetic 21 ✅ 2053 ms (90 iters) ✅ 2073 ms (89 iters) ≈ +1% (±2.6%) — / —
future-genetic 25 ✅ 1989 ms (93 iters) ✅ 2089 ms (89 iters) 🔴 +5% — / —
naive-bayes 21 ✅ 1249 ms (137 iters) ✅ 1262 ms (136 iters) ≈ +1% (±33%) — / —
naive-bayes 25 ✅ 1015 ms (168 iters) ✅ 1005 ms (170 iters) ≈ -1% (±31.5%) — / —
reactors 21 ✅ 15838 ms (16 iters) ✅ 16414 ms (15 iters) ≈ +3.6% (±7.8%) — / —
reactors 25 ✅ 18212 ms (15 iters) ✅ 18465 ms (15 iters) ≈ +1.4% (±5.1%) — / —
Internal counter details (ddprof)

ddprof internal counters, latest / dev (✅ = 0, · = unavailable):

Benchmark JDK Dropped rec Dropped jvmti Dropped trace Skipped WC AGCT fail Unwind fail
akka-uct 21 ✅ / ✅ ✅ / ✅ 1 / 5 1966 / 1969 ✅ / ✅ ✅ / ✅
akka-uct 25 ✅ / ✅ ✅ / ✅ 2 / ✅ 2264 / 2245 ✅ / ✅ ✅ / ✅
finagle-chirper 21 ✅ / ✅ ✅ / ✅ 3 / 5 8633 / 8777 ✅ / ✅ ✅ / ✅
finagle-chirper 25 ✅ / ✅ ✅ / ✅ ✅ / 2 8137 / 8242 ✅ / ✅ ✅ / ✅
fj-kmeans 21 ✅ / ✅ ✅ / ✅ ✅ / ✅ 1282 / 1291 ✅ / ✅ ✅ / ✅
fj-kmeans 25 ✅ / ✅ ✅ / ✅ 1 / 5 1260 / 1274 ✅ / ✅ ✅ / ✅
future-genetic 21 ✅ / ✅ ✅ / ✅ 2 / 2 2919 / 2987 ✅ / ✅ ✅ / ✅
future-genetic 25 ✅ / ✅ ✅ / ✅ 2 / 1 2845 / 2956 ✅ / ✅ ✅ / ✅
naive-bayes 21 ✅ / ✅ ✅ / ✅ 2 / 2 3505 / 3511 ✅ / ✅ ✅ / ✅
naive-bayes 25 ✅ / ✅ ✅ / ✅ 4 / 2 3477 / 3516 ✅ / ✅ ✅ / ✅
reactors 21 ✅ / ✅ ✅ / ✅ 1 / 1 1782 / 1516 ✅ / ✅ ✅ / ✅
reactors 25 ✅ / ✅ ✅ / ✅ ✅ / ✅ 1933 / 1963 ✅ / ✅ ✅ / ✅

@zhengyu123
zhengyu123 marked this pull request as ready for review July 17, 2026 13:13
@zhengyu123
zhengyu123 requested a review from a team as a code owner July 17, 2026 13:13

@jbachorik jbachorik left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

LGTM!

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1d600e87b9

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread ddprof-lib/src/main/cpp/faultInjection.cpp Outdated
@dd-octo-sts

dd-octo-sts Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Benchmark Results (commit 1d600e8)

Pipeline: https://gitlab.ddbuild.io/DataDog/apm-reliability/benchmarking-platform/-/pipelines/125719176 Commit: 1d600e87b974ec8cfef3cbe32a7202821bca23d1

⚠️ Significant outliers

  • 🔴 fj-kmeans (JDK 21): runtime +4% (2729→2839 ms)
Runtime details (per benchmark × JDK)
Benchmark JDK Latest Dev Δ (dev vs latest) Issues L/D
akka-uct 21 ✅ 10294 ms (21 iters) ✅ 10286 ms (21 iters) ≈ -0.1% (±10.9%) — / —
akka-uct 25 ✅ 8938 ms (24 iters) ✅ 8783 ms (24 iters) ≈ -1.7% (±9.4%) — / —
finagle-chirper 21 ✅ 5960 ms (33 iters) ✅ 5987 ms (33 iters) ≈ +0.5% (±25.5%) ⚠️ W:3 / ⚠️ W:3
finagle-chirper 25 ✅ 5449 ms (36 iters) ✅ 5438 ms (36 iters) ≈ -0.2% (±23.9%) ⚠️ W:4 / ⚠️ W:3
fj-kmeans 21 ✅ 2729 ms (68 iters) ✅ 2839 ms (66 iters) 🔴 +4% — / —
fj-kmeans 25 ✅ 2847 ms (66 iters) ✅ 2833 ms (66 iters) ≈ -0.5% (±2.7%) — / —
future-genetic 21 ✅ 2131 ms (87 iters) ✅ 2081 ms (89 iters) ≈ -2.3% (±2.7%) — / —
future-genetic 25 ✅ 2047 ms (90 iters) ✅ 2054 ms (91 iters) ≈ +0.3% (±2.6%) — / —
naive-bayes 21 ✅ 1249 ms (136 iters) ✅ 1258 ms (136 iters) ≈ +0.7% (±33%) — / —
naive-bayes 25 ✅ 1021 ms (167 iters) ✅ 1009 ms (169 iters) ≈ -1.2% (±31.6%) — / —
reactors 21 ✅ 16312 ms (15 iters) ✅ 16606 ms (16 iters) ≈ +1.8% (±8.2%) — / —
reactors 25 ✅ 18794 ms (15 iters) ✅ 18509 ms (15 iters) ≈ -1.5% (±5.3%) — / —
Internal counter details (ddprof)

ddprof internal counters, latest / dev (✅ = 0, · = unavailable):

Benchmark JDK Dropped rec Dropped jvmti Dropped trace Skipped WC AGCT fail Unwind fail
akka-uct 21 ✅ / ✅ ✅ / ✅ ✅ / ✅ ✅ / ✅ ✅ / ✅ ✅ / ✅
akka-uct 25 ✅ / ✅ ✅ / ✅ 3 / 4 2256 / 2147 ✅ / ✅ ✅ / ✅
finagle-chirper 21 ✅ / ✅ ✅ / ✅ 1 / 3 8230 / 8702 ✅ / ✅ ✅ / ✅
finagle-chirper 25 ✅ / ✅ ✅ / ✅ ✅ / 1 8447 / 7971 ✅ / ✅ ✅ / ✅
fj-kmeans 21 ✅ / ✅ ✅ / ✅ 3 / ✅ 1231 / 1289 ✅ / ✅ ✅ / ✅
fj-kmeans 25 ✅ / ✅ ✅ / ✅ 1 / 1 1278 / 1290 ✅ / ✅ ✅ / ✅
future-genetic 21 ✅ / ✅ ✅ / ✅ 2 / ✅ 3006 / 3073 ✅ / ✅ ✅ / ✅
future-genetic 25 ✅ / ✅ ✅ / ✅ 1 / ✅ 2876 / 2949 ✅ / ✅ ✅ / ✅
naive-bayes 21 ✅ / ✅ ✅ / ✅ 4 / 5 3490 / 3480 ✅ / ✅ ✅ / ✅
naive-bayes 25 ✅ / ✅ ✅ / ✅ 7 / 3 3472 / 3464 ✅ / ✅ ✅ / ✅
reactors 21 ✅ / ✅ ✅ / ✅ 3 / ✅ 1544 / 1702 ✅ / ✅ ✅ / ✅
reactors 25 ✅ / ✅ ✅ / ✅ ✅ / 1 1934 / 1887 ✅ / ✅ ✅ / ✅

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 4047cd6eb1

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread ddprof-lib/src/test/cpp/faultInjection_ut.cpp Outdated
@dd-octo-sts

dd-octo-sts Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Benchmark Results (commit 4047cd6)

Pipeline: https://gitlab.ddbuild.io/DataDog/apm-reliability/benchmarking-platform/-/pipelines/125728258 Commit: 4047cd6eb17855fac189f997c9fb70f32b877878

⚠️ Significant outliers

  • 🟢 future-genetic (JDK 25): runtime -2.9% (2134→2072 ms)
Runtime details (per benchmark × JDK)
Benchmark JDK Latest Dev Δ (dev vs latest) Issues L/D
akka-uct 21 ✅ 10263 ms (21 iters) ✅ 10299 ms (21 iters) ≈ +0.4% (±11.7%) — / —
akka-uct 25 ✅ 8911 ms (24 iters) ✅ 8874 ms (24 iters) ≈ -0.4% (±10%) — / —
finagle-chirper 21 ✅ 5985 ms (33 iters) ✅ 6047 ms (33 iters) ≈ +1% (±25.8%) ⚠️ W:3 / ⚠️ W:3
finagle-chirper 25 ✅ 5508 ms (36 iters) ✅ 5507 ms (36 iters) ≈ -0% (±24.9%) ⚠️ W:3 / ⚠️ W:3
fj-kmeans 21 ✅ 2701 ms (70 iters) ✅ 2633 ms (72 iters) ≈ -2.5% (±2.6%) — / —
fj-kmeans 25 ✅ 2813 ms (66 iters) ✅ 2824 ms (66 iters) ≈ +0.4% (±2.6%) — / —
future-genetic 21 ✅ 2072 ms (89 iters) ✅ 2061 ms (90 iters) ≈ -0.5% (±2.6%) — / —
future-genetic 25 ✅ 2134 ms (87 iters) ✅ 2072 ms (90 iters) 🟢 -2.9% — / —
naive-bayes 21 ✅ 1268 ms (135 iters) ✅ 1245 ms (137 iters) ≈ -1.8% (±32.5%) — / —
naive-bayes 25 ✅ 1004 ms (170 iters) ✅ 1023 ms (167 iters) ≈ +1.9% (±31.7%) — / —
reactors 21 ✅ 16268 ms (15 iters) ✅ 16026 ms (15 iters) ≈ -1.5% (±8.7%) — / —
reactors 25 ✅ 18527 ms (15 iters) ✅ 18438 ms (15 iters) ≈ -0.5% (±3.6%) — / —
Internal counter details (ddprof)

ddprof internal counters, latest / dev (✅ = 0, · = unavailable):

Benchmark JDK Dropped rec Dropped jvmti Dropped trace Skipped WC AGCT fail Unwind fail
akka-uct 21 ✅ / ✅ ✅ / ✅ 3 / 1 1951 / 1860 ✅ / ✅ ✅ / ✅
akka-uct 25 ✅ / ✅ ✅ / ✅ 1 / 3 2246 / 2361 ✅ / ✅ ✅ / ✅
finagle-chirper 21 ✅ / ✅ ✅ / ✅ 4 / 4 8605 / 8417 ✅ / ✅ ✅ / ✅
finagle-chirper 25 ✅ / ✅ ✅ / ✅ 3 / 4 8435 / 8198 ✅ / ✅ ✅ / ✅
fj-kmeans 21 ✅ / ✅ ✅ / ✅ 7 / 1 1290 / 1305 ✅ / ✅ ✅ / ✅
fj-kmeans 25 ✅ / ✅ ✅ / ✅ 2 / 1 1251 / 1287 ✅ / ✅ ✅ / ✅
future-genetic 21 ✅ / ✅ ✅ / ✅ 1 / ✅ 2913 / 2900 ✅ / ✅ ✅ / ✅
future-genetic 25 ✅ / ✅ ✅ / ✅ 2 / 1 2945 / 2893 ✅ / ✅ ✅ / ✅
naive-bayes 21 ✅ / ✅ ✅ / ✅ 7 / 5 3552 / 3507 ✅ / ✅ ✅ / ✅
naive-bayes 25 ✅ / ✅ ✅ / ✅ 3 / 1 3449 / 3478 ✅ / ✅ ✅ / ✅
reactors 21 ✅ / ✅ ✅ / ✅ 1 / 2 1689 / 1514 ✅ / ✅ ✅ / ✅
reactors 25 ✅ / ✅ ✅ / ✅ ✅ / ✅ 1887 / 1809 ✅ / ✅ ✅ / ✅

@dd-octo-sts

dd-octo-sts Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Benchmark Results (commit a11683e)

Pipeline: https://gitlab.ddbuild.io/DataDog/apm-reliability/benchmarking-platform/-/pipelines/125777017 Commit: a11683e1e1fc299c670d7d59b41579b66723a28a

✅ Within expected boundaries

No significant runtime deltas (all within run-to-run noise) and no internal-counter outliers.

Runtime details (per benchmark × JDK)
Benchmark JDK Latest Dev Δ (dev vs latest) Issues L/D
akka-uct 21 ✅ 10373 ms (21 iters) ✅ 10314 ms (21 iters) ≈ -0.6% (±11.1%) — / —
akka-uct 25 ✅ 8918 ms (24 iters) ✅ 8825 ms (24 iters) ≈ -1% (±9.7%) — / —
finagle-chirper 21 ✅ 6010 ms (33 iters) ✅ 6055 ms (33 iters) ≈ +0.7% (±25.3%) ⚠️ W:3 / ⚠️ W:3
finagle-chirper 25 ✅ 5517 ms (36 iters) ✅ 5518 ms (36 iters) ≈ +0% (±24.5%) ⚠️ W:3 / ⚠️ W:3
fj-kmeans 21 ✅ 2715 ms (68 iters) ✅ 2692 ms (70 iters) ≈ -0.8% (±2.7%) — / —
fj-kmeans 25 ✅ 2862 ms (66 iters) ✅ 2848 ms (66 iters) ≈ -0.5% (±2.6%) — / —
future-genetic 21 ✅ 2091 ms (88 iters) ✅ 2049 ms (90 iters) ≈ -2% (±2.6%) — / —
future-genetic 25 ✅ 2037 ms (92 iters) ✅ 2070 ms (91 iters) ≈ +1.6% (±2.6%) — / —
naive-bayes 21 ✅ 1269 ms (134 iters) ✅ 1242 ms (138 iters) ≈ -2.1% (±32.5%) — / —
naive-bayes 25 ✅ 1033 ms (166 iters) ✅ 1013 ms (169 iters) ≈ -1.9% (±31.3%) — / —
reactors 21 ✅ 16256 ms (15 iters) ✅ 16014 ms (15 iters) ≈ -1.5% (±8.7%) — / —
reactors 25 ✅ 18390 ms (15 iters) ✅ 18492 ms (15 iters) ≈ +0.6% (±5.1%) — / —
Internal counter details (ddprof)

ddprof internal counters, latest / dev (✅ = 0, · = unavailable):

Benchmark JDK Dropped rec Dropped jvmti Dropped trace Skipped WC AGCT fail Unwind fail
akka-uct 21 ✅ / ✅ ✅ / ✅ 4 / 1 1979 / 1973 ✅ / ✅ ✅ / ✅
akka-uct 25 ✅ / ✅ ✅ / ✅ 2 / 5 2401 / 2196 ✅ / ✅ ✅ / ✅
finagle-chirper 21 ✅ / ✅ ✅ / ✅ 3 / 5 8966 / 8672 ✅ / ✅ ✅ / ✅
finagle-chirper 25 ✅ / ✅ ✅ / ✅ 1 / ✅ 8458 / 8792 ✅ / ✅ ✅ / ✅
fj-kmeans 21 ✅ / ✅ ✅ / ✅ 2 / 1 1237 / 1295 ✅ / ✅ ✅ / ✅
fj-kmeans 25 ✅ / ✅ ✅ / ✅ 2 / 1 1283 / 1284 ✅ / ✅ ✅ / ✅
future-genetic 21 ✅ / ✅ ✅ / ✅ 3 / 1 2918 / 2958 ✅ / ✅ ✅ / ✅
future-genetic 25 ✅ / ✅ ✅ / ✅ 3 / 3 2903 / 2896 ✅ / ✅ ✅ / ✅
naive-bayes 21 ✅ / ✅ ✅ / ✅ 6 / 4 3513 / 3536 ✅ / ✅ ✅ / ✅
naive-bayes 25 ✅ / ✅ ✅ / ✅ 8 / 3 3525 / 3496 ✅ / ✅ ✅ / ✅
reactors 21 ✅ / ✅ ✅ / ✅ ✅ / 1 1727 / 1603 ✅ / ✅ ✅ / ✅
reactors 25 ✅ / ✅ ✅ / ✅ ✅ / 2 1872 / 1862 ✅ / ✅ ✅ / ✅

@gh-worker-dd-mergequeue-cf854d
gh-worker-dd-mergequeue-cf854d Bot merged commit b05a6ca into main Jul 20, 2026
149 of 164 checks passed
@gh-worker-dd-mergequeue-cf854d
gh-worker-dd-mergequeue-cf854d Bot deleted the zgu/fault-injection branch July 20, 2026 19:36
@github-actions github-actions Bot added this to the 1.47.0 milestone Jul 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants