Skip to content

External media-driver mode with per-profile tuning#38

Merged
emrebulutlar merged 1 commit into
mainfrom
feat/external-media-driver
Jul 3, 2026
Merged

External media-driver mode with per-profile tuning#38
emrebulutlar merged 1 commit into
mainfrom
feat/external-media-driver

Conversation

@emrebulutlar

@emrebulutlar emrebulutlar commented Jul 3, 2026

Copy link
Copy Markdown
Member

Lands the transport half of the deployed-and-validated 2026-07-02 ops session work (running on the dev cluster since; external drivers are the default deploy mode). Follow-up PRs land the gateway WS backpressure and the perf/incident docs.

TRANSPORT_DRIVER_MODE=external runs Archive/ConsensusModule/container against a standalone driver process over shared-memory IPC (C driver preferred, Java fallback); embedded stays the dev default. Includes fatal-error fail-fast so a node cannot outlive a dead driver, idle-strategy profiles (busy-spin prod / backoff dev), deploy/media-driver + deploy/tuning with make tune, and docs/kernel-bypass.md.

Note: squash-merged because GitHub refuses rebase merges into a signature-required base (verified today); split into single-commit PRs to keep granular linear history.

🤖 Generated with Claude Code

Adds TRANSPORT_DRIVER_MODE=external: nodes launch Archive + ConsensusModule +
ClusteredServiceContainer only and connect to a standalone media driver
(deploy/media-driver/launch-driver.sh, C driver preferred, Java fallback) over
shared-memory IPC. Embedded mode stays the dev default.

- TransportConfig (new, match-common): driver mode, aeron dir, idle-strategy
  supplier (busy-spin prod / backoff dev), channel URIs with TRANSPORT_MTU,
  external-driver await with actionable timeout.
- AeronCluster: split embedded/external launch paths; in external mode a FATAL
  Aeron error (dead driver) signals shutdown and halts the JVM after a 5s grace
  so the process manager can restart it (non-daemon threads would otherwise
  keep a driverless JVM alive).
- ClusterConfig.idleStrategySupplier: one supplier for driver (embedded only),
  consensus module and service containers.
- deploy/tuning/system-tuning.sh + make tune / tune-report: idempotent
  transport-critical OS tuning with before/after report.
- docs/kernel-bypass.md: transport architecture reference.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@emrebulutlar
emrebulutlar force-pushed the feat/external-media-driver branch from bd29ee9 to 9fccdc5 Compare July 3, 2026 17:24
@emrebulutlar emrebulutlar changed the title External media-driver mode, gateway WS backpressure, 2026-07-02 perf/incident docs External media-driver mode with per-profile tuning Jul 3, 2026
@emrebulutlar
emrebulutlar merged commit 62d9ca6 into main Jul 3, 2026
1 check passed
@emrebulutlar
emrebulutlar deleted the feat/external-media-driver branch July 3, 2026 17:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant