[
https://issues.apache.org/jira/browse/KAFKA-2938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15037137#comment-15037137
]
Jun Rao commented on KAFKA-2938:
--------------------------------
[~becket_qin], can this actually happen? In SocketServer, we only process one
request at a time from a given client. So before we completely send the
response for a request, socket server won't take another request from the same
socket. So, there should never be two outstanding responses for the same
client. The producer can send multiple requests in flight, but they will just
be queued up in the socket buffer on the broker.
> Socket server may throw IllegalStateException
> ---------------------------------------------
>
> Key: KAFKA-2938
> URL: https://issues.apache.org/jira/browse/KAFKA-2938
> Project: Kafka
> Issue Type: Bug
> Components: network
> Affects Versions: 0.9.0.0
> Reporter: Jiangjie Qin
> Assignee: Jiangjie Qin
> Fix For: 0.9.0.1
>
>
> The Processor in SocketServer will try to drain all the responses in the
> response queue and pass them to selector for sending.
> If there are more than one response in the response queue (e.g. a producer
> with max in flight request greater than 1), an IllegalStateException would be
> thrown because the processor will call selector.send() before the previous
> send is finished.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)