<div class="elementToProof" style="font-family: Calibri, Helvetica, sans-serif;
font-size: 12pt; color: rgb(0, 0, 0);">Hi Sushant,</div><div
class="elementToProof" style="font-family: Calibri, Helvetica, sans-serif;
font-size: 12pt; color: rgb(0, 0, 0);">Thanks for the KIP.</div><div
class="elementToProof" style="font-family: Calibri, Helvetica, sans-serif;
font-size: 12pt; color: rgb(0, 0, 0);"><br></div><div class="elementToProof"
style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color:
rgb(0, 0, 0);">AS1: In the section of Proposed Changes, the KIP states that
the</div><div class="elementToProof" style="font-family: Calibri, Helvetica,
sans-serif; font-size: 12pt; color: rgb(0, 0,
0);"><code>acknowledge(ConsumerRecord,
AcknowledgementType)</code> method</div><div class="elementToProof"
style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color:
rgb(0, 0, 0);">causes RPCs to be sent. This is incorrect. Only the poll and
commit </div><div class="elementToProof" style="font-family: Calibri,
Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">methods do
this.</div><div class="elementToProof" style="font-family: Calibri, Helvetica,
sans-serif; font-size: 12pt; color: rgb(0, 0, 0);"><br></div><div
class="elementToProof" style="font-family: Calibri, Helvetica, sans-serif;
font-size: 12pt; color: rgb(0, 0, 0);">AS2: For a situation in which the
application is processing for an</div><div class="elementToProof"
style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color:
rgb(0, 0, 0);">extended period, I would expect it to continue to call</div><div
class="elementToProof" style="font-family: Calibri, Helvetica, sans-serif;
font-size: 12pt; color: rgb(0, 0, 0);">ShareConsumer.poll(Duration) repeatedly.
This method returns</div><div class="elementToProof" style="font-family:
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0,
0);">a set of records to process. In the case where the
application</div><div class="elementToProof" style="font-family: Calibri,
Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">has renewed its
acquisition locks, I would expect the renewed</div><div class="elementToProof"
style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color:
rgb(0, 0, 0);">records to be returned from the next call to poll(Duration) as
a</div><div class="elementToProof" style="font-family: Calibri, Helvetica,
sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">way of confirming which
records are still in the process of being</div><div class="elementToProof"
style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color:
rgb(0, 0, 0);">delivered.</div><div class="elementToProof" style="font-family:
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0,
0);"><br></div><div class="elementToProof" style="font-family: Calibri,
Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">AS3: We should
specify the error handling where the application</div><div
class="elementToProof" style="font-family: Calibri, Helvetica, sans-serif;
font-size: 12pt; color: rgb(0, 0, 0);">tries to renew but the broker does not
support v2 of the updated</div><div class="elementToProof" style="font-family:
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">RPCs. I
think <code>ShareConsumer.acknowledge()</code> should throw</div><div
class="elementToProof" style="font-family: Calibri, Helvetica, sans-serif;
font-size: 12pt; color: rgb(0, 0, 0);">an exception in this case.</div><div
class="elementToProof" style="font-family: Calibri, Helvetica, sans-serif;
font-size: 12pt; color: rgb(0, 0, 0);"><br></div><div class="elementToProof"
style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color:
rgb(0, 0, 0);">Thanks,</div><div class="elementToProof" style="font-family:
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0,
0);">Andrew</div><div class="elementToProof" style="font-family: Calibri,
Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);"><br></div><div><a
name="_MailOriginal"></a></div><hr style="display: inline-block; width:
98%;"><div id="divRplyFwdMsg"><div style="direction: ltr; font-family: Calibri,
sans-serif; font-size: 11pt; color: rgb(0, 0, 0);"><b>From:</b> Sushant
Mahajan <[email protected]><br><b>Sent:</b> 07 October 2025
11:16<br><b>To:</b> [email protected]
<[email protected]><br><b>Subject:</b> [DISCUSS] KIP-1222:
Acquisition lock timeout renewal in share consumer explicit mode</div><div
style="direction: ltr;"> </div></div><div style="font-size: 11pt;">I’d
like to start the discussion for KIP-1222: Acquisition lock timeout<br>renewal
in share consumer explicit mode.<br><br>JIRA: <a
href="https://issues.apache.org/jira/browse/KAFKA-19742"
id="OWA1e9b86ab-a6a3-09a8-4274-cef4697808de" class="OWAAutoLink"
data-auth="NotApplicable">https://issues.apache.org/jira/browse/KAFKA-19742</a><br>KIP
Wiki:<br><a
href="https://cwiki.apache.org/confluence/display/KAFKA/KIP-1222%3A+Acquisition+lock+timeout+renewal+in+share+consumer+explicit+mode"
id="OWAd8e4d128-7652-df4e-b1df-78e28159ea1d" class="OWAAutoLink"
data-auth="NotApplicable">https://cwiki.apache.org/confluence/display/KAFKA/KIP-1222%3A+Acquisition+lock+timeout+renewal+in+share+consumer+explicit+mode</a><br><br>Regards,<br>Sushant
Mahajan</div>