{"record":{"id":"c9075a56eafc7b46","repo":"apache/iceberg","slug":"table-not-found-skipping-commit","errorCode":null,"errorMessage":"Table not found, skipping commit: {}","messagePattern":"Table not found, skipping commit: (.+?)","errorType":"console","errorClass":null,"httpStatus":null,"severity":"warning","filePath":"kafka-connect/kafka-connect/src/main/java/org/apache/iceberg/connect/channel/Coordinator.java","lineNumber":247,"sourceCode":"    try {\n      return MAPPER.writeValueAsString(offsets);\n    } catch (IOException e) {\n      throw new UncheckedIOException(e);\n    }\n  }\n\n  @SuppressWarnings(\"checkstyle:CyclomaticComplexity\")\n  private void commitToTable(\n      TableReference tableReference,\n      List<Envelope> envelopeList,\n      Map<Integer, Long> controlTopicOffsets,\n      OffsetDateTime validThroughTs) {\n    TableIdentifier tableIdentifier = tableReference.identifier();\n    Table table;\n    try {\n      table = catalog.loadTable(tableIdentifier);\n    } catch (NoSuchTableException e) {\n      LOG.warn(\"Table not found, skipping commit: {}\", tableIdentifier, e);\n      return;\n    }\n\n    if (tableReference.uuid() != null && !tableReference.uuid().equals(table.uuid())) {\n      LOG.warn(\n          \"Skipping commits to table {} due to target table mismatch.  Expected: {} Received: {}\",\n          tableIdentifier,\n          table.uuid(),\n          tableReference.uuid());\n      return;\n    }\n\n    String branch = config.tableConfig(tableIdentifier.toString()).commitBranch();\n\n    // Control topic partition offsets may include a subset of partition ids if there were no\n    // records for other partitions.  Merge the updated topic partitions with the last committed\n    // offsets.\n    Map<Integer, Long> committedOffsets = lastCommittedOffsetsForTable(table, branch);","sourceCodeStart":229,"sourceCodeEnd":265,"githubUrl":"https://github.com/apache/iceberg/blob/86d9c8fc543e7c56c9f624eb725f76c9baff9570/kafka-connect/kafka-connect/src/main/java/org/apache/iceberg/connect/channel/Coordinator.java#L229-L265","documentation":"commitToTable attempted to load the target Iceberg table and the catalog threw NoSuchTableException. The commit to that table is skipped (offsets for its records will be committed along with the overall cycle) and a warning is logged, rather than failing the whole coordinator commit.","triggerScenarios":"catalog.loadTable(identifier) raises NoSuchTableException because the route target table does not exist in the catalog at commit time.","commonSituations":"Table dropped or renamed after the connector was configured; typo in the connector's target table identifier; catalog namespace configured differently (wrong catalog or environment); table not yet created in a fresh environment.","solutions":["Create the missing table in the catalog (or let the connector's create-identifier/auto-create behavior run if enabled).","Fix the connector's route/tables configuration to point at an existing table identifier (check catalog, database/namespace, and table name spelling).","Verify you are pointing at the intended catalog/environment (dev vs prod) in the catalog configuration.","If the table was intentionally dropped, remove its route from the connector config and restart the connector."],"exampleFix":null,"handlingStrategy":"validation","validationCode":"// verify the route target exists before starting the connector\nTable table = catalog.loadTable(TableIdentifier.of(\"db\", \"target\"));","typeGuard":null,"tryCatchPattern":"try {\n  catalog.loadTable(tableIdentifier);\n} catch (NoSuchTableException e) {\n  // create the table or fix the route config before restarting the connector\n}","preventionTips":["Pre-create route target tables or enable the connector's identifier-based auto-creation.","Double-check catalog/namespace/table spelling in connector routes.","Confirm the connector points at the intended catalog environment.","Remove routes to intentionally dropped tables from the configuration."],"tags":["kafka-connect","catalog","iceberg","table-not-found"],"backgroundTag":"entity-not-found","analyzedSha":"86d9c8fc543e7c56c9f624eb725f76c9baff9570","analyzedAt":"2026-09-12T00:46:39.097Z","contentChangedAt":"2026-09-12T00:46:39.097Z","schemaVersion":2},"datasetVersion":"2026-09-14T16:17:12.679Z"}