nautechsystems/nautilus_trader · error

Loading market data for Redis cache adapter not supported

Error message

Loading market data for Redis cache adapter not supported

What it means

Intentional capability stub in the Redis cache adapter: loading market data (quotes/trades/bars) is out of scope for Redis persistence, so the trait method always bails instead of returning empty data.

Source

Thrown at crates/infrastructure/src/redis/cache.rs:1613

        &self,
        _client_order_id: &ClientOrderId,
    ) -> anyhow::Result<Option<OrderSnapshot>> {
        anyhow::bail!("Loading order snapshots from Redis cache adapter not supported")
    }

    fn load_position_snapshot(
        &self,
        _position_id: &PositionId,
    ) -> anyhow::Result<Option<PositionSnapshot>> {
        anyhow::bail!("Loading position snapshots from Redis cache adapter not supported")
    }

    fn load_quotes(&self, _instrument_id: &InstrumentId) -> anyhow::Result<Vec<QuoteTick>> {
        anyhow::bail!("Loading quote data for Redis cache adapter not supported")
    }

    fn load_trades(&self, _instrument_id: &InstrumentId) -> anyhow::Result<Vec<TradeTick>> {
        anyhow::bail!("Loading market data for Redis cache adapter not supported")
    }

    fn load_funding_rates(
        &self,
        _instrument_id: &InstrumentId,
    ) -> anyhow::Result<Vec<FundingRateUpdate>> {
        anyhow::bail!("Loading market data for Redis cache adapter not supported")
    }

    fn load_bars(&self, _instrument_id: &InstrumentId) -> anyhow::Result<Vec<Bar>> {
        anyhow::bail!("Loading market data for Redis cache adapter not supported")
    }

    fn add(&self, key: String, value: Bytes) -> anyhow::Result<()> {
        let key = format!("{GENERAL}{REDIS_DELIMITER}{key}");
        self.database.insert(key, Some(vec![value]))
    }

View on GitHub (pinned to 18893faf8b)

Solutions

  1. Load historical market data from the Parquet data catalog instead of the Redis cache
  2. Implement a custom CacheAdapter if Redis-backed market data is required
Defensive patterns

Strategy: fallback

When it happens

Trigger: Thrown at crates/infrastructure/src/redis/cache.rs:1613 when the library encounters an invalid state.

Common situations: See trigger scenarios.


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