[
https://issues.apache.org/jira/browse/KAFKA-19325?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17953776#comment-17953776
]
黃竣陽 commented on KAFKA-19325:
-----------------------------
Hello [~junrao], may I take this one, thanks
> improve forceComplete() in DelayedOperation
> -------------------------------------------
>
> Key: KAFKA-19325
> URL: https://issues.apache.org/jira/browse/KAFKA-19325
> Project: Kafka
> Issue Type: Improvement
> Components: core
> Affects Versions: 4.1.0
> Reporter: Jun Rao
> Priority: Major
>
> After [https://github.com/apache/kafka/pull/19759/files,]
> DelayedOperation.forceComplete() always returns true when called inside
> tryComplete(). Only the expiration logic checks the return value of
> forceComplete(). We could do the following in the expiration logic and change
> forceComplete() to return void and avoid using the lock there (the caller
> will get the lock instead). This simplifies the caller to forceComplete().
> {code:java}
> lock.lock();
> try {
> if (!isCompleted()) {
> forceComplete();
> onExpiration();
> }
> } finally {
> lock.unlock();
> }{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)