Re: [PR] KAFKA-16224: Do not retry committing if topic or partition deleted [kafka]

2024-03-25 Thread via GitHub


cadonna merged PR #15581:
URL: https://github.com/apache/kafka/pull/15581


-- 
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



Re: [PR] KAFKA-16224: Do not retry committing if topic or partition deleted [kafka]

2024-03-25 Thread via GitHub


cadonna commented on PR #15581:
URL: https://github.com/apache/kafka/pull/15581#issuecomment-2018802319

   Build failures are unrelated.


-- 
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



Re: [PR] KAFKA-16224: Do not retry committing if topic or partition deleted [kafka]

2024-03-25 Thread via GitHub


cadonna commented on PR #15581:
URL: https://github.com/apache/kafka/pull/15581#issuecomment-2018163251

   Sorry for that! I do not know why I am so sloppy with this PR. I am going to 
fix this now. 


-- 
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



Re: [PR] KAFKA-16224: Do not retry committing if topic or partition deleted [kafka]

2024-03-25 Thread via GitHub


lianetm commented on PR #15581:
URL: https://github.com/apache/kafka/pull/15581#issuecomment-2018088332

   Oh one more detail from the build logs we missed:
   ```
   
/home/jenkins/workspace/Kafka_kafka-pr_PR-15581/clients/src/test/java/org/apache/kafka/clients/consumer/internals/MembershipManagerImplTest.java:542:
 error: cannot find symbol
   [2024-03-25T09:49:39.907Z] 
when(commitRequestManager.maybeAutoCommitSyncNow(anyLong())).thenReturn(commitResult);
   ```


-- 
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



Re: [PR] KAFKA-16224: Do not retry committing if topic or partition deleted [kafka]

2024-03-25 Thread via GitHub


cadonna commented on code in PR #15581:
URL: https://github.com/apache/kafka/pull/15581#discussion_r1537642692


##
clients/src/main/java/org/apache/kafka/clients/consumer/internals/CommitRequestManager.java:
##
@@ -298,10 +303,13 @@ private void 
autoCommitSyncNowWithRetries(OffsetCommitRequestState requestAttemp
 if (error == null) {
 result.complete(null);
 } else {
-if (error instanceof RetriableException || 
isStaleEpochErrorAndValidEpochAvailable(error)) {
+if ((error instanceof RetriableException || 
isStaleEpochErrorAndValidEpochAvailable(error))) {
 if (error instanceof TimeoutException && 
requestAttempt.isExpired) {
 log.debug("Auto-commit sync timed out and won't be 
retried anymore");
 result.completeExceptionally(error);
+} else if (error instanceof 
UnknownTopicOrPartitionException) {
+log.debug("Auto-commit sync failed because topic or 
partition were deleted");

Review Comment:
   I added the `before revocation` to all log messages in this method, since it 
actually applies to all.



-- 
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



Re: [PR] KAFKA-16224: Do not retry committing if topic or partition deleted [kafka]

2024-03-25 Thread via GitHub


cadonna commented on code in PR #15581:
URL: https://github.com/apache/kafka/pull/15581#discussion_r1537639434


##
clients/src/main/java/org/apache/kafka/clients/consumer/internals/CommitRequestManager.java:
##
@@ -298,10 +303,13 @@ private void 
autoCommitSyncNowWithRetries(OffsetCommitRequestState requestAttemp
 if (error == null) {
 result.complete(null);
 } else {
-if (error instanceof RetriableException || 
isStaleEpochErrorAndValidEpochAvailable(error)) {
+if ((error instanceof RetriableException || 
isStaleEpochErrorAndValidEpochAvailable(error))) {
 if (error instanceof TimeoutException && 
requestAttempt.isExpired) {
 log.debug("Auto-commit sync timed out and won't be 
retried anymore");
 result.completeExceptionally(error);
+} else if (error instanceof 
UnknownTopicOrPartitionException) {
+log.debug("Auto-commit sync failed because topic or 
partition were deleted");

Review Comment:
   Good idea!



-- 
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



Re: [PR] KAFKA-16224: Do not retry committing if topic or partition deleted [kafka]

2024-03-25 Thread via GitHub


cadonna commented on code in PR #15581:
URL: https://github.com/apache/kafka/pull/15581#discussion_r1537638864


##
clients/src/main/java/org/apache/kafka/clients/consumer/internals/CommitRequestManager.java:
##
@@ -298,10 +303,13 @@ private void 
autoCommitSyncNowWithRetries(OffsetCommitRequestState requestAttemp
 if (error == null) {
 result.complete(null);
 } else {
-if (error instanceof RetriableException || 
isStaleEpochErrorAndValidEpochAvailable(error)) {
+if ((error instanceof RetriableException || 
isStaleEpochErrorAndValidEpochAvailable(error))) {

Review Comment:
   Good catch!



-- 
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



Re: [PR] KAFKA-16224: Do not retry committing if topic or partition deleted [kafka]

2024-03-25 Thread via GitHub


lianetm commented on code in PR #15581:
URL: https://github.com/apache/kafka/pull/15581#discussion_r1537629081


##
clients/src/main/java/org/apache/kafka/clients/consumer/internals/CommitRequestManager.java:
##
@@ -298,10 +303,13 @@ private void 
autoCommitSyncNowWithRetries(OffsetCommitRequestState requestAttemp
 if (error == null) {
 result.complete(null);
 } else {
-if (error instanceof RetriableException || 
isStaleEpochErrorAndValidEpochAvailable(error)) {
+if ((error instanceof RetriableException || 
isStaleEpochErrorAndValidEpochAvailable(error))) {

Review Comment:
   this is failing the build actually



-- 
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



Re: [PR] KAFKA-16224: Do not retry committing if topic or partition deleted [kafka]

2024-03-25 Thread via GitHub


lianetm commented on PR #15581:
URL: https://github.com/apache/kafka/pull/15581#issuecomment-2018046840

   Thanks for the changes @cadonna , this will have a great impact I expect. 
Just left some minor comments, otherwise LGTM once the build passes.


-- 
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



Re: [PR] KAFKA-16224: Do not retry committing if topic or partition deleted [kafka]

2024-03-25 Thread via GitHub


lianetm commented on code in PR #15581:
URL: https://github.com/apache/kafka/pull/15581#discussion_r1537624363


##
clients/src/main/java/org/apache/kafka/clients/consumer/internals/CommitRequestManager.java:
##
@@ -298,10 +303,13 @@ private void 
autoCommitSyncNowWithRetries(OffsetCommitRequestState requestAttemp
 if (error == null) {
 result.complete(null);
 } else {
-if (error instanceof RetriableException || 
isStaleEpochErrorAndValidEpochAvailable(error)) {
+if ((error instanceof RetriableException || 
isStaleEpochErrorAndValidEpochAvailable(error))) {

Review Comment:
   do we need these extra parenthesis here?



-- 
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



Re: [PR] KAFKA-16224: Do not retry committing if topic or partition deleted [kafka]

2024-03-25 Thread via GitHub


lianetm commented on code in PR #15581:
URL: https://github.com/apache/kafka/pull/15581#discussion_r1537618245


##
clients/src/main/java/org/apache/kafka/clients/consumer/internals/CommitRequestManager.java:
##
@@ -298,10 +303,13 @@ private void 
autoCommitSyncNowWithRetries(OffsetCommitRequestState requestAttemp
 if (error == null) {
 result.complete(null);
 } else {
-if (error instanceof RetriableException || 
isStaleEpochErrorAndValidEpochAvailable(error)) {
+if ((error instanceof RetriableException || 
isStaleEpochErrorAndValidEpochAvailable(error))) {
 if (error instanceof TimeoutException && 
requestAttempt.isExpired) {
 log.debug("Auto-commit sync timed out and won't be 
retried anymore");
 result.completeExceptionally(error);
+} else if (error instanceof 
UnknownTopicOrPartitionException) {
+log.debug("Auto-commit sync failed because topic or 
partition were deleted");

Review Comment:
   nit: would probably make the log clearer to all if we add the before 
revocation part `Auto-commit sync **before revocation** failed` (just like you 
did for the func name, like it)



-- 
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



Re: [PR] KAFKA-16224: Do not retry committing if topic or partition deleted [kafka]

2024-03-25 Thread via GitHub


cadonna commented on code in PR #15581:
URL: https://github.com/apache/kafka/pull/15581#discussion_r1537313537


##
clients/src/main/java/org/apache/kafka/clients/consumer/internals/CommitRequestManager.java:
##
@@ -272,14 +273,18 @@ private void maybeResetTimerWithBackoff(final 
CompletableFuture

Re: [PR] KAFKA-16224: Do not retry committing if topic or partition deleted [kafka]

2024-03-25 Thread via GitHub


AndrewJSchofield commented on code in PR #15581:
URL: https://github.com/apache/kafka/pull/15581#discussion_r1537243649


##
clients/src/main/java/org/apache/kafka/clients/consumer/internals/CommitRequestManager.java:
##
@@ -272,14 +273,18 @@ private void maybeResetTimerWithBackoff(final 
CompletableFuture

Re: [PR] KAFKA-16224: Do not retry committing if topic or partition deleted [kafka]

2024-03-22 Thread via GitHub


cadonna commented on PR #15581:
URL: https://github.com/apache/kafka/pull/15581#issuecomment-2015538043

   @lianetm Could you please have a look at this PR?


-- 
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



[PR] KAFKA-16224: Do not retry committing if topic or partition deleted [kafka]

2024-03-22 Thread via GitHub


cadonna opened a new pull request, #15581:
URL: https://github.com/apache/kafka/pull/15581

   Current logic for auto-committing offsets when partitions are revoked will 
retry continuously when getting UNKNOWN_TOPIC_OR_PARTITION, leading to the 
member not completing the revocation in time.
   
   This commit considers error UNKNOWN_TOPIC_OR_PARTITION to be fatal in the 
context of an auto-commit of offsets before a revocation, even though the error 
is defined as retriable. This ensures that the revocation can finish in time.
   
   *More detailed description of your change,
   if necessary. The PR title and PR message become
   the squashed commit message, so use a separate
   comment to ping reviewers.*
   
   *Summary of testing strategy (including rationale)
   for the feature or bug fix. Unit and/or integration
   tests are expected for any behaviour change and
   system tests should be considered for larger changes.*
   
   ### Committer Checklist (excluded from commit message)
   - [ ] Verify design and implementation 
   - [ ] Verify test coverage and CI build status
   - [ ] Verify documentation (including upgrade notes)
   


-- 
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