influxdata/influxdb · error · ProcessingEngineError

database not found

Error message

database not found: {0}

What it means

ProcessingEngineError::DatabaseNotFound, a thiserror variant formatted as `database not found: {0}`. Raised when a processing-engine operation (e.g. creating/updating a trigger) references a database by name that does not exist in the catalog. It signals the caller supplied an unknown database name.

Solutions

  1. Create the database first (`influxdb3 create database <name>`) or correct the name.
  2. List existing databases (`SHOW DATABASES` / API) and use an exact match.
  3. Remove or update stale triggers referencing the deleted database.
  4. Check for trailing whitespace/URL-encoding issues in the database name parameter.

Example fix

// before
POST /api/v3/config/processing_engine/trigger {"db": "metircs", ...}
// after
POST /api/v3/config/processing_engine/trigger {"db": "metrics", ...}
Defensive patterns

Strategy: validation

Validate before calling

const dbs = await fetch('/api/v3/engine/databases').then(r => r.json());
if (!dbs.includes(dbName)) throw new Error(`Database ${dbName} does not exist`);

Try / catch

try {
  await createTrigger({ db: dbName, ... });
} catch (e) {
  if (String(e).startsWith('database not found')) {
    await createDatabase(dbName);
    await createTrigger({ db: dbName, ... });
  } else { throw e; }
}

Prevention

When it happens

Trigger: Creating or managing triggers/plugins against a database name that is not present in the catalog; passing a deleted or misspelled database name to ProcessingEngineManager APIs.

Common situations: Typo in db name in the trigger-creation API call; database dropped before removing its triggers; environment mismatch (staging name used against prod server).

Understand the failure class

Background: Database query failed: Internal Server Error 500s wrapping SQL, Prisma, and connection failures — what to check first — this error's family across 16 libraries.

Related errors


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

Appendix: source

Thrown at influxdb3_processing_engine/src/manager.rs:9

use crate::environment::PluginEnvironmentError;
use influxdb3_catalog::CatalogError;
use influxdb3_id::{DbId, TriggerId};
use std::fmt::Debug;
use thiserror::Error;

#[derive(Debug, Error)]
pub enum ProcessingEngineError {
    #[error("database not found: {0}")]
    DatabaseNotFound(String),

    #[error("catalog update error: {0}")]
    CatalogUpdateError(#[from] CatalogError),

    #[error("write buffer error: {0}")]
    WriteBufferError(#[from] influxdb3_write::write_buffer::Error),

    #[error("wal error: {0}")]
    WalError(#[from] influxdb3_wal::Error),

    #[error("plugin error: {0}")]
    PluginError(#[from] crate::plugins::PluginError),

    #[error("processing engine trigger {trigger_id} not found in database {db_id}")]
    TriggerNotFound { db_id: DbId, trigger_id: TriggerId },

    #[error("request trigger not found")]

View on GitHub (pinned to 06200ef96b)