{"record":{"id":"44d88419c1e6bb92","repo":"apache/seatunnel","slug":"failed-listing-database-in-catalog-s-44d884","errorCode":null,"errorMessage":"Failed listing database in catalog %s","messagePattern":"Failed listing database in catalog (.+?)","errorType":"exception","errorClass":"CatalogException","httpStatus":null,"severity":"error","filePath":"seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/catalog/KuduCatalog.java","lineNumber":122,"sourceCode":"    }\n\n    @Override\n    public boolean databaseExists(String databaseName) throws CatalogException {\n        return listDatabases().contains(databaseName);\n    }\n\n    @Override\n    public List<String> listDatabases() throws CatalogException {\n        return Collections.singletonList(getDefaultDatabase());\n    }\n\n    @Override\n    public List<String> listTables(String databaseName)\n            throws CatalogException, DatabaseNotExistException {\n        try {\n            return kuduClient.getTablesList().getTablesList();\n        } catch (KuduException e) {\n            throw new CatalogException(\n                    String.format(\"Failed listing database in catalog %s\", this.catalogName), e);\n        }\n    }\n\n    @Override\n    public boolean tableExists(TablePath tablePath) throws CatalogException {\n        checkNotNull(tablePath);\n        try {\n            return kuduClient.tableExists(tablePath.getFullName());\n        } catch (KuduException e) {\n            throw new CatalogException(e);\n        }\n    }\n\n    @Override\n    public CatalogTable getTable(TablePath tablePath)\n            throws CatalogException, TableNotExistException {\n        checkNotNull(tablePath);","sourceCodeStart":104,"sourceCodeEnd":140,"githubUrl":"https://github.com/apache/seatunnel/blob/cf67b549a7a6c35fa0beb12d83c62892427ea919/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/catalog/KuduCatalog.java#L104-L140","documentation":"KuduCatalog.listTables(databaseName) calls kuduClient.getTablesList().getTablesList() and wraps any KuduException in a CatalogException with this (slightly misleading) message. It means listing tables from the Kudu cluster failed. Note the message says 'database' but it lists tables.","triggerScenarios":"Calling catalog.listTables(databaseName) (directly or via allTables) when the KuduClient getTablesList RPC throws a KuduException — cluster unreachable, auth failure, or master error.","commonSituations":"Kudu masters down or misconfigured kudu.master address; Kerberos/SASL auth issues; catalog snapshot listing during a cluster upgrade.","solutions":["Verify kudu.master connectivity (network/firewall/DNS)","Confirm Kudu master processes are healthy","Check authentication/credentials for the Kudu cluster","Inspect the wrapped KuduException cause for the RPC error detail"],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":"// Pre-check: catalog.listDatabases().contains(databaseName)","typeGuard":null,"tryCatchPattern":"try { tables = catalog.listTables(db); } catch (CatalogException e) { throw new RuntimeException(\"Kudu table listing failed: \" + e.getCause().getMessage(), e); }","preventionTips":["Verify kudu.master connectivity before job submission","Confirm Kudu masters are up (kudu master list)","Check Kerberos/auth setup for the cluster"],"tags":["kudu","catalog","metadata"],"backgroundTag":"database-query-failed","analyzedSha":"cf67b549a7a6c35fa0beb12d83c62892427ea919","analyzedAt":"2026-09-10T21:44:55.265Z","contentChangedAt":"2026-09-10T21:44:55.265Z","schemaVersion":2},"datasetVersion":"2026-09-14T11:17:12.474Z"}