{"record":{"id":"b4b1bb3c35da3911","repo":"apache/beam","slug":"catalog-not-found-inmemorycatalogmanager","errorCode":null,"errorMessage":"Catalog not found: ","messagePattern":"Catalog not found: ","errorType":"exception","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/meta/catalog/InMemoryCatalogManager.java","lineNumber":64,"sourceCode":"    this.catalogs.put(\n        \"default\", new InMemoryCatalog(\"default\", defaultMetastore, Collections.emptyMap()));\n    this.currentCatalogName = \"default\";\n  }\n\n  @Override\n  public void createCatalog(String name, String type, Map<String, String> properties) {\n    Preconditions.checkState(\n        !catalogs.containsKey(name), \"Catalog with name '%s' already exists.\", name);\n\n    Catalog catalog = findAndCreateCatalog(name, type, properties);\n    tableProviders.values().forEach(catalog::registerTableProvider);\n    catalogs.put(name, catalog);\n  }\n\n  @Override\n  public void useCatalog(String name) {\n    if (!catalogs.containsKey(name)) {\n      throw new IllegalArgumentException(\"Catalog not found: \" + name);\n    }\n    this.currentCatalogName = name;\n  }\n\n  @Override\n  public Catalog currentCatalog() {\n    return checkStateNotNull(catalogs.get(currentCatalogName));\n  }\n\n  @Override\n  public @Nullable Catalog getCatalog(String name) {\n    return catalogs.get(name);\n  }\n\n  @Override\n  public void dropCatalog(String name) {\n    catalogs.remove(name);\n  }","sourceCodeStart":46,"sourceCodeEnd":82,"githubUrl":"https://github.com/apache/beam/blob/12126d8942aaf848030c478b4c6a28c6af861c66/sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/meta/catalog/InMemoryCatalogManager.java#L46-L82","documentation":"InMemoryCatalogManager.useCatalog is a guard verifying the requested catalog exists: if the name (matched case-insensitively against registered catalogs) is absent, it throws IllegalArgumentException 'Catalog not found'. Only catalogs previously created or the built-in 'default' can be switched to.","triggerScenarios":"Thrown at sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/meta/catalog/InMemoryCatalogManager.java:64 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check the catalog name for typos and case; it must match an existing catalog.","Create the catalog first with createCatalog, then switch to it.","List available catalogs (SHOW CATALOGS) to confirm the name."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"12126d8942aaf848030c478b4c6a28c6af861c66","analyzedAt":"2026-09-13T01:50:10.254Z","contentChangedAt":"2026-09-13T01:50:10.254Z","schemaVersion":2},"datasetVersion":"2026-09-20T03:17:13.778Z"}