[ 
https://issues.apache.org/jira/browse/KAFKA-5289?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16017102#comment-16017102
 ] 

ASF GitHub Bot commented on KAFKA-5289:
---------------------------------------

GitHub user ijuma opened a pull request:

    https://github.com/apache/kafka/pull/3096

    KAFKA-5289: handleStopReplica should not send a second response

    `shutdownIdleFetcherThreads()` can throw InterruptedException
    for example.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/ijuma/kafka 
kafka-5289-stop-replica-should-not-send-two-responses

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/kafka/pull/3096.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #3096
    
----
commit 09eb235157af651dacf4397c7ac84815937fa425
Author: Ismael Juma <ism...@juma.me.uk>
Date:   2017-05-19T09:11:26Z

    KAFKA-5289: handleStopReplica should not send a second response
    
    `shutdownIdleFetcherThreads()` can throw InterruptedException
    for example.

----


> One StopReplicaRequest will caused two Responses
> ------------------------------------------------
>
>                 Key: KAFKA-5289
>                 URL: https://issues.apache.org/jira/browse/KAFKA-5289
>             Project: Kafka
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 0.10.0.0
>            Reporter: xuzq
>            Priority: Critical
>             Fix For: 0.11.0.0
>
>         Attachments: handleStopReplicaRequest.png
>
>
> After discussed with my friend markTC,we find a bug.
> One StopReplicaRequest will caused two Responses.
> At core/src/main/scala/kafka/server/KafkaApi.class 175 and 176 lines.
> When an exception caused at 
> 'replicaManager.replicaFetcherManager.shutdownIdleFetcherThreads()', 
> will also return two responses.
> one is at 175 lines 'requestChannel.sendResponse(new 
> RequestChannel.Response(request, new ResponseSend(request.connectionId, 
> responseHeader, response)))' and another at 111 lines 
> 'requestChannel.sendResponse(new Response(request, new 
> ResponseSend(request.connectionId, respHeader, response)))'.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to