[
https://issues.apache.org/jira/browse/KAFKA-5595?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16088601#comment-16088601
]
ASF GitHub Bot commented on KAFKA-5595:
---------------------------------------
GitHub user rajinisivaram opened a pull request:
https://github.com/apache/kafka/pull/3530
KAFKA-5595: Ensure client connection ids are not reused too quickly
On the broker, if client ports are reused when response to a closed
connection is outstanding, broker may send the outstanding response to a new
connection with the reused port. The new connection will end up with
correlation id mismatch, requiring process restart. This is also a security
exposure since clients receive response intended for the wrong connection.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/rajinisivaram/kafka KAFKA-5595
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/kafka/pull/3530.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 #3530
----
commit f1f42bcb57e77cd0841b588ae91cee457ba07832
Author: Rajini Sivaram <[email protected]>
Date: 2017-07-15T13:01:47Z
KAFKA-5595: Ensure client connection ids are not reused too quickly
----
> Illegal state in SocketServer; attempt to send with another send in progress
> ----------------------------------------------------------------------------
>
> Key: KAFKA-5595
> URL: https://issues.apache.org/jira/browse/KAFKA-5595
> Project: Kafka
> Issue Type: Bug
> Reporter: Jason Gustafson
>
> I have seen this a couple times, but I'm not sure the conditions associated
> with it.
> {code}
> java.lang.IllegalStateException: Attempt to begin a send operation with prior
> send operation still in progress.
> at
> org.apache.kafka.common.network.KafkaChannel.setSend(KafkaChannel.java:138)
> at org.apache.kafka.common.network.Selector.send(Selector.java:248)
> at kafka.network.Processor.sendResponse(SocketServer.scala:488)
> at kafka.network.Processor.processNewResponses(SocketServer.scala:466)
> at kafka.network.Processor.run(SocketServer.scala:431)
> at java.lang.Thread.run(Thread.java:748)
> {code}
> Prior to this event, I see a lot of this message in the logs (always for the
> same connection id):
> {code}
> Attempting to send response via channel for which there is no open
> connection, connection id 7
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)