frankvicky commented on code in PR #19546: URL: https://github.com/apache/kafka/pull/19546#discussion_r2057700793
########## clients/src/main/java/org/apache/kafka/clients/consumer/KafkaConsumer.java: ########## @@ -1797,31 +1801,48 @@ public void close() { * @throws InterruptException If the thread is interrupted before or while this function is called * @throws org.apache.kafka.common.KafkaException for any other error during close */ + @Deprecated @Override - @SuppressWarnings("deprecation") public void close(Duration timeout) { delegate.close(timeout); } /** - * Wakeup the consumer. This method is thread-safe and is useful in particular to abort a long poll. - * The thread which is blocking in an operation will throw {@link org.apache.kafka.common.errors.WakeupException}. - * If no thread is blocking in a method which can throw {@link org.apache.kafka.common.errors.WakeupException}, the next call to such a method will raise it instead. + * Close the consumer cleanly. {@link CloseOptions} allows to specify a timeout and a + * {@link CloseOptions.GroupMembershipOperation membership operation}. + * If no timeout is specified, the default timeout of 30 seconds is uses. Review Comment: ```suggestion * If no timeout is specified, the default timeout of 30 seconds is used. ``` ########## clients/src/main/java/org/apache/kafka/clients/consumer/KafkaConsumer.java: ########## @@ -1797,31 +1801,48 @@ public void close() { * @throws InterruptException If the thread is interrupted before or while this function is called * @throws org.apache.kafka.common.KafkaException for any other error during close */ + @Deprecated @Override - @SuppressWarnings("deprecation") public void close(Duration timeout) { delegate.close(timeout); } /** - * Wakeup the consumer. This method is thread-safe and is useful in particular to abort a long poll. - * The thread which is blocking in an operation will throw {@link org.apache.kafka.common.errors.WakeupException}. - * If no thread is blocking in a method which can throw {@link org.apache.kafka.common.errors.WakeupException}, the next call to such a method will raise it instead. + * Close the consumer cleanly. {@link CloseOptions} allows to specify a timeout and a + * {@link CloseOptions.GroupMembershipOperation membership operation}. + * If no timeout is specified, the default timeout of 30 seconds is uses. + * If no membership operation is specified, the {@link CloseOptions.GroupMembershipOperation#DEFAULT default + * membership operation} is used. + * <p> + * This method waits up to the timeout for the consumer to complete pending commits and may leave the group, + * depending on the specified membership operation. + * If auto-commit is enabled, this will commit the current offsets if possible within the + * timeout. If the consumer is unable to complete offset commits and gracefully leave the group (if applicable) Review Comment: ```suggestion * timeout. If the consumer is unable to complete offset commits and gracefully leaves the group (if applicable) ``` -- 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: jira-unsubscr...@kafka.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org