[ https://issues.apache.org/jira/browse/KAFKA-5289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
xuzq updated KAFKA-5289: ------------------------ Description: 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 'requestChannel.sendResponse(new RequestChannel.Response(request, new ResponseSend(request.connectionId, responseHeader, response)))' and another at 'requestChannel.sendResponse(new Response(request, new ResponseSend(request.connectionId, respHeader, response)))'. was: 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 'requestChannel.sendResponse(new RequestChannel.Response(request, new ResponseSend(request.connectionId, responseHeader, response)))' and another at 'requestChannel.sendResponse(new Response(request, new ResponseSend(request.connectionId, respHeader, response)))'. > 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 > 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 'requestChannel.sendResponse(new RequestChannel.Response(request, > new ResponseSend(request.connectionId, responseHeader, response)))' and > another at 'requestChannel.sendResponse(new Response(request, new > ResponseSend(request.connectionId, respHeader, response)))'. -- This message was sent by Atlassian JIRA (v6.3.15#6346)