{"record":{"id":"0432300fc3778393","repo":"t8y2/dbx","slug":"object-source-is-not-supported-by-cassandra","errorCode":null,"errorMessage":"object source is not supported by Cassandra","messagePattern":"object source is not supported by Cassandra","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"agents/drivers/cassandra-go/main.go","lineNumber":364,"sourceCode":"\t\tvar input completionAssistantRequest\n\t\tif err := decodeParams(params, &input); err != nil {\n\t\t\treturn nil, false, err\n\t\t}\n\t\tresult, err := s.completionAssistantSearch(input)\n\t\treturn result, false, err\n\tcase \"get_columns\":\n\t\tresult, err := s.getColumns(stringParam(params, \"schema\"), stringParam(params, \"table\"))\n\t\treturn result, false, err\n\tcase \"list_indexes\":\n\t\tresult, err := s.listIndexes(stringParam(params, \"schema\"), stringParam(params, \"table\"))\n\t\treturn result, false, err\n\tcase \"list_foreign_keys\":\n\t\treturn []foreignKeyInfo{}, false, nil\n\tcase \"list_triggers\":\n\t\tresult, err := s.listTriggers(stringParam(params, \"schema\"), stringParam(params, \"table\"))\n\t\treturn result, false, err\n\tcase \"get_object_source\":\n\t\treturn nil, false, errors.New(\"object source is not supported by Cassandra\")\n\tcase \"get_table_ddl\":\n\t\tresult, err := s.getTableDDL(stringParam(params, \"schema\"), stringParam(params, \"table\"))\n\t\treturn result, false, err\n\tcase \"get_explain_info\":\n\t\treturn nil, false, errors.New(\"execution plans are not supported by Cassandra\")\n\tcase \"execute_query\":\n\t\tresult, err := s.executeQuery(queryOptionsFromParams(params))\n\t\treturn result, false, err\n\tcase \"execute_query_page\", \"start_table_read\":\n\t\tresult, err := s.executeQueryPage(queryOptionsFromParams(params), intParam(params, \"pageSize\"))\n\t\treturn result, false, err\n\tcase \"fetch_query_page\", \"fetch_table_read_page\":\n\t\tresult, err := s.fetchQueryPage(stringParam(params, \"sessionId\"), intParam(params, \"pageSize\"))\n\t\treturn result, false, err\n\tcase \"close_query_session\", \"close_table_read_session\":\n\t\treturn s.closeQuerySession(stringParam(params, \"sessionId\")), false, nil\n\tcase \"execute_transaction\":\n\t\tresult, err := s.executeStatements(params, true)","sourceCodeStart":346,"sourceCodeEnd":382,"githubUrl":"https://github.com/t8y2/dbx/blob/c0390bff16418b651f4728520d99adf8ce48829a/agents/drivers/cassandra-go/main.go#L346-L382","documentation":"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.","triggerScenarios":"Any client call invoking the get_object_source method against the Cassandra driver agent, regardless of params.","commonSituations":"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.","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"],"exampleFix":"// before\n// const src = await rpc(\"get_object_source\", {schema, table})\n// after\n// const src = backend === \"cassandra\" ? null : await rpc(\"get_object_source\", {schema, table})","handlingStrategy":"fallback","validationCode":null,"typeGuard":"const supportsObjectSource = (backend) => backend !== \"cassandra\";","tryCatchPattern":"try { src = await rpc(\"get_object_source\", params) }\ncatch (e) {\n  if (e.message.includes(\"object source is not supported\")) src = null; // hide feature\n}","preventionTips":["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"],"tags":["unsupported-operation","cassandra","rpc","no-sql"],"backgroundTag":"operation-not-supported","analyzedSha":"c0390bff16418b651f4728520d99adf8ce48829a","analyzedAt":"2026-09-05T23:05:10.900Z","contentChangedAt":"2026-09-05T23:05:10.900Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}