bryanck commented on code in PR #12372: URL: https://github.com/apache/iceberg/pull/12372#discussion_r1993620526
########## kafka-connect/kafka-connect/src/main/java/org/apache/iceberg/connect/channel/CommitterImpl.java: ########## @@ -43,6 +43,21 @@ public class CommitterImpl implements Committer { private CoordinatorThread coordinatorThread; private Worker worker; + private Catalog catalog; + private IcebergSinkConfig config; + private SinkTaskContext context; + private KafkaClientFactory clientFactory; + private Collection<MemberDescription> membersWhenWorkerIsCoordinator; + private final AtomicBoolean isCommitterInitialized = new AtomicBoolean(false); + + void initializeCommitter(Catalog catalog, IcebergSinkConfig config, SinkTaskContext context) { + if (isCommitterInitialized.compareAndSet(false, true)) { Review Comment: I feel checking for initialization is being overly conservative, given this would only happen in cases where Kafka Connect isn't following the sink task contract. We can add a precondition check instead, in methods that require initialization. Also, we shouldn't need a lock as methods should be called from the main task thread. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For additional commands, e-mail: issues-h...@iceberg.apache.org