influxdata/influxdb · error · Error

system table ' ' not found

Error message

system table '{0}' not found: {1}

What it means

This error comes from the `influxdb3 show system` CLI command when the requested system table name does not match any system table the server knows. It wraps a SystemTableNotFound cause that carries the failure detail. It exists so the CLI can fail fast with a clear message listing the unknown table instead of returning an empty or confusing query error.

Solutions

  1. Run `influxdb3 show system table_list` to list the exact valid system table names
  2. Correct the --table argument spelling/case
  3. Check that CLI and server versions match so the system table exists

Example fix

// before
influxdb3 show system table --table system.queries
// after
influxdb3 show system table_list  # find exact name first
influxdb3 show system table --table system.query_history
Defensive patterns

Strategy: validation

Validate before calling

let valid: Vec<String> = run_show_system_table_list()?.parse_table_names();
if !valid.contains(&table_name) {
    eprintln!("unknown system table {table_name}; valid: {valid:?}");
    std::process::exit(2);
}

Prevention

When it happens

Trigger: Running `influxdb3 show system table --table <NAME>` (or summary) with a table name that is not one of the server's system tables, e.g. a typo like `querie` or a system table introduced in a newer server version than the CLI expects.

Common situations: Typoed system table names; consulting docs for a different InfluxDB version; running `influxdb3 show system table_list` and mistyping a name when querying.

Understand the failure class

Background: Record Not Found Errors: "not found", RecordNotFound, and "was not found" — what they mean and how to fix them — this error's family across 28 libraries.

Related errors


AI-assisted analysis of influxdata/influxdb@06200ef96b (2026-09-19). Data as JSON: /api/errors/5518964b176f4d70. Report an issue: GitHub.

Appendix: source

Thrown at influxdb3/src/commands/show/system.rs:18

use std::path::PathBuf;

use clap::Parser;
use influxdb3_client::Client;
use secrecy::ExposeSecret;
use serde::Deserialize;

use super::super::common::{Format, InfluxDb3Config};

#[derive(Debug, thiserror::Error)]
pub(crate) enum Error {
    #[error("client error: {0}")]
    InfluxDB3Client(#[from] influxdb3_client::Error),

    #[error("deserializing show tables: {0}")]
    DeserializingShowTables(#[source] serde_json::Error),

    #[error("system table '{0}' not found: {1}")]
    SystemTableNotFound(String, SystemTableNotFound),

    #[error("parquet format is not supported for this command")]
    ParquetFormatNotSupported,
}

pub(super) type Result<T> = std::result::Result<T, Error>;

#[derive(Debug, Parser)]
#[clap(visible_alias = "s", trailing_var_arg = true)]
pub struct SystemConfig {
    #[clap(subcommand)]
    subcommand: SubCommand,

    /// Common InfluxDB 3 Core config
    #[clap(flatten)]
    core_config: InfluxDb3Config,
}

View on GitHub (pinned to 06200ef96b)