t8y2/dbx · error
object source is not supported by Cassandra
Error message
object source is not supported by Cassandra
What it means
Cassandra is a wide-column store without stored procedures or server-side object source code, so the get_object_source method is explicitly unsupported by this driver and returns this error as a deliberate stub in dispatch.
Source
Thrown at agents/drivers/cassandra-go/main.go:364
var input completionAssistantRequest
if err := decodeParams(params, &input); err != nil {
return nil, false, err
}
result, err := s.completionAssistantSearch(input)
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)View on GitHub (pinned to c0390bff16)
Solutions
- Skip get_object_source calls when the backend is Cassandra
- Use get_table_ddl instead for table structure
- Feature-detect: treat this error as 'capability not available' and hide the action in the UI
- Read the schema via system_schema tables directly if programmatic access is needed
Example fix
// before
// const src = await rpc("get_object_source", {schema, table})
// after
// const src = backend === "cassandra" ? null : await rpc("get_object_source", {schema, table}) Defensive patterns
Strategy: fallback
Type guard
const supportsObjectSource = (backend) => backend !== "cassandra";
Try / catch
try { src = await rpc("get_object_source", params) }
catch (e) {
if (e.message.includes("object source is not supported")) src = null; // hide feature
} Prevention
- Feature-detect backend capabilities instead of probing methods blindly
- Disable 'view source' UI actions for Cassandra connections
- Treat this message as a stable capability contract, not a bug
When it happens
Trigger: Any client call invoking the get_object_source method against the Cassandra driver agent, regardless of params.
Common situations: Generic database GUI/IDE that probes every connected DB for object source (e.g. functions/triggers bodies); migration tooling assuming relational capabilities; test suites enumerating all driver methods uniformly.
Related errors
- execution plans are 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/0432300fc3778393.
Report an issue: GitHub.