t8y2/dbx · error
TDengine connection metadata is unavailable
Error message
TDengine connection metadata is unavailable
What it means
Bailed by TdengineDriver.test_connection when the metadata needed for the connection report (beyond server version/timezone) could not be retrieved after the connection was established. The connection itself works, but required discovery queries failed, so test_connection cannot produce a reliable result and reports failure.
Source
Thrown at agents/drivers/tdengine/src/driver.rs:99
let server_version = query_scalar_string(&connection, "SELECT server_version()", &token, 5).await.ok();
let session_timezone = query_scalar_string(&connection, "SELECT timezone()", &token, 5)
.await
.ok()
.and_then(|value| parse_server_timezone(&value));
self.current_database = dsn.database;
self.server_version = server_version;
self.session_timezone = session_timezone;
self.params = params;
self.connection = Some(connection);
Ok(())
}
pub async fn test_connection(params: ConnectParams) -> Result<DatabaseConnectionInfo> {
let mut driver = Self::new();
driver.connect(params).await?;
let token = CancellationToken::new();
driver.validate_connection(&token).await?;
driver.connection_info()?.database_info.ok_or_else(|| anyhow!("TDengine connection metadata is unavailable"))
}
pub async fn disconnect(&mut self) {
self.query_sessions.clear();
self.table_cache = None;
self.server_version = None;
self.session_timezone = None;
self.current_database.clear();
self.connection = None;
}
pub async fn validate_connection(&self, token: &CancellationToken) -> Result<()> {
query_scalar_string(self.require_connection()?, "SELECT server_version()", token, 3).await?;
Ok(())
}
pub fn connection_info(&self) -> Result<AgentConnectionInfo> {
self.require_connection()?;View on GitHub (pinned to c0390bff16)
Solutions
- Re-run test_connection; transient metadata query failures can pass on retry
- Check that the connected user can query TDengine metadata (databases/cluster info)
- Inspect server logs for the underlying query failure
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at agents/drivers/tdengine/src/driver.rs:99 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of t8y2/dbx@c0390bff16 (2026-09-05).
Data as JSON: /api/errors/ac6d56cf26ec261d.
Report an issue: GitHub.