t8y2/dbx · error
execution plans are not supported by Cassandra
Error message
execution plans are not supported by Cassandra
What it means
Returned by the cassandra-go dispatch handler when a client requests an execution plan. Cassandra/CQL has no EXPLAIN facility, so this capability is explicitly unsupported by the driver and the request is rejected with a permanent capability error rather than attempted.
Source
Thrown at agents/drivers/cassandra-go/main.go:369
return result, false, err
case "get_columns":
result, err := s.getColumns(stringParam(params, "schema"), stringParam(params, "table"))
return result, false, err
case "list_indexes":
result, err := s.listIndexes(stringParam(params, "schema"), stringParam(params, "table"))
return result, false, err
case "list_foreign_keys":
return []foreignKeyInfo{}, false, nil
case "list_triggers":
result, err := s.listTriggers(stringParam(params, "schema"), stringParam(params, "table"))
return result, false, err
case "get_object_source":
return nil, false, errors.New("object source is not supported by Cassandra")
case "get_table_ddl":
result, err := s.getTableDDL(stringParam(params, "schema"), stringParam(params, "table"))
return result, false, err
case "get_explain_info":
return nil, false, errors.New("execution plans are not supported by Cassandra")
case "execute_query":
result, err := s.executeQuery(queryOptionsFromParams(params))
return result, false, err
case "execute_query_page", "start_table_read":
result, err := s.executeQueryPage(queryOptionsFromParams(params), intParam(params, "pageSize"))
return result, false, err
case "fetch_query_page", "fetch_table_read_page":
result, err := s.fetchQueryPage(stringParam(params, "sessionId"), intParam(params, "pageSize"))
return result, false, err
case "close_query_session", "close_table_read_session":
return s.closeQuerySession(stringParam(params, "sessionId")), false, nil
case "execute_transaction":
result, err := s.executeStatements(params, true)
return result, false, err
case "execute_batch":
result, err := s.executeStatements(params, false)
return result, false, err
case "disconnect":View on GitHub (pinned to c0390bff16)
Solutions
- Do not call get_explain_info against Cassandra; guard the call by backend type
- Use query tracing instead: enable tracing on the CQL statement (TRACING ON / gocql Query.Trace())
- Inspect system_traces.sessions and system_traces.events after executing a traced query
- Treat the error as a capability signal and disable plan viewing in the UI
Example fix
// before
// const plan = await rpc("get_explain_info", {query})
// after
// if (backend !== "cassandra") plan = await rpc("get_explain_info", {query})
// else plan = await traceQuery(query) // uses CQL tracing Defensive patterns
Strategy: fallback
Type guard
const supportsExplain = (backend) => backend !== "cassandra";
Try / catch
try { plan = await rpc("get_explain_info", params) }
catch (e) {
if (e.message.includes("execution plans are not supported")) {
plan = await traceViaCql(params.query); // fallback to CQL tracing
}
} Prevention
- Use CQL TRACING / gocql Query.Trace for query analysis on Cassandra
- Gate EXPLAIN-style tooling behind backend capability checks
- Treat this message as a stable capability contract, not a bug
When it happens
Trigger: Any client call invoking get_explain_info against the Cassandra driver agent.
Common situations: Query-analysis tools that EXPLAIN every query before running it; generic SQL IDE features applied to Cassandra connections; automated query-optimizer workflows assuming relational backends.
Related errors
- object source is not supported by Cassandra
- agentSessionId is required
- Cassandra connection runtime is closed
- Object source is not supported
- Completion assistant search is not supported by this agent
AI-assisted analysis of t8y2/dbx@c0390bff16 (2026-09-05).
Data as JSON: /api/errors/6d5a60bfa195579e.
Report an issue: GitHub.