influxdata/influxdb · error · PluginError
reading plugin file
Error message
reading plugin file: {0} What it means
PluginError::ReadPluginError wraps a std::io::Error (via #[from]) encountered while reading a Python plugin file from disk on behalf of the processing engine. It is a generic IO guard, so it fires for any filesystem failure in that path — file not found, permission denied, or an unreadable plugin directory — not for errors inside the plugin's execution (those surface as PluginExecutionError). The offending input is the plugin file path being read, with the underlying io::Error as the message payload.
Solutions
- Check the wrapped io::Error for the concrete file failure
- Verify the plugin file path exists and is readable by the server process
- Re-upload or restore the plugin file if it was removed
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at influxdb3_processing_engine/src/plugins.rs:50 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of influxdata/influxdb@06200ef96b (2026-09-19).
Data as JSON: /api/errors/555b6e8d71849586.
Report an issue: GitHub.
Appendix: source
Thrown at influxdb3_processing_engine/src/plugins.rs:50
#[derive(Debug, Error)]
pub enum PluginError {
#[error("invalid database {0}")]
InvalidDatabase(String),
#[error("couldn't find db")]
MissingDb,
#[error(transparent)]
PyError(#[from] pyo3::PyErr),
#[error(transparent)]
WriteBufferError(#[from] write_buffer::Error),
#[error(transparent)]
AnyhowError(#[from] anyhow::Error),
#[error("reading plugin file: {0}")]
ReadPluginError(#[from] std::io::Error),
#[error("error executing plugin: {0}")]
PluginExecutionError(#[from] influxdb3_py_api::error::ExecutePluginError),
#[error("invalid cron syntax: {0}")]
InvalidCronSyntax(#[from] cron::error::Error),
#[error("cron schedule never triggers: {0}")]
CronScheduleNeverTriggers(String),
#[error("non-schedule plugin with schedule trigger: {0}")]
NonSchedulePluginWithScheduleTrigger(String),
#[error("error fetching plugin from repository: {0} {1}")]
FetchingFromRepository(reqwest::StatusCode, String),
#[error(View on GitHub (pinned to 06200ef96b)