nautechsystems/nautilus_trader · error

disconnect readiness timeout while waiting for engine discon

Error message

disconnect readiness timeout while waiting for engine disconnections

What it means

Shutdown timeout in await_engines_disconnected: the data and execution engines did not report full disconnection within the configured grace period; the log includes the engines' check_disconnected flags for diagnosis.

Source

Thrown at crates/live/src/node/mod.rs:793

            }

            let now = dst::time::Instant::now();
            if now >= deadline {
                break;
            }

            dst::time::sleep(interval.min(deadline - now)).await;
        }

        log::error!(
            "Timed out ({:?}) waiting for engines to disconnect\n\
             DataEngine.check_disconnected() == {}\n\
             ExecEngine.check_disconnected() == {}",
            timeout,
            self.kernel.data_engine().check_disconnected(),
            self.kernel.exec_engine().borrow().check_disconnected(),
        );
        anyhow::bail!("disconnect readiness timeout while waiting for engine disconnections")
    }

    fn log_connection_status(&self) {
        let data_status = self.kernel.data_client_connection_status();
        let exec_status = self.kernel.exec_client_connection_status();

        let mut rows: Vec<ClientStatus> = Vec::new();

        for (client_id, connected) in data_status {
            rows.push(ClientStatus {
                client: client_id.to_string(),
                client_type: "Data",
                connected,
            });
        }

        for (client_id, connected) in exec_status {
            rows.push(ClientStatus {

View on GitHub (pinned to 18893faf8b)

Solutions

  1. Increase the disconnect/shutdown timeout configuration
  2. Inspect the logged DataEngine/ExecEngine disconnect flags to find which clients are stuck
  3. Verify venue clients respond to disconnect commands
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at crates/live/src/node/mod.rs:793 when the library encounters an invalid state.

Common situations: See trigger scenarios.

Understand the failure class


AI-assisted analysis of nautechsystems/nautilus_trader@18893faf8b (2026-09-08). Data as JSON: /api/errors/df04c81f5563d624. Report an issue: GitHub.