-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17671/
-----------------------------------------------------------
(Updated Feb. 3, 2014, 8:07 p.m.)
Review request for kafka.
Bugs: KAFKA-1235
https://issues.apache.org/jira/browse/KAFKA-1235
Repository: kafka
Description (updated)
-------
Also including several fixes in this patch:
1. Check if channel is null or not for disconnecting instead of checking the
isConnected variable, since otherwise a socket can be opened but not connected
due to an exception, and hence lead to socket leak on channel.disconnect().
2. Make sure all connect() is guarded by a disconnect in the catch clause. This
is also for socket leak prevention.
3. When closing the channel, check both channel and readChannel to see if they
are null separately to avoid NPE.
4. Let the RequestSendThread to give up retrying sending to a broker if it is
being shutdown, since its socket server may already be closed but itself is
blocked on fully shutdown, hence leading to deadlock.
Diffs
-----
core/src/main/scala/kafka/consumer/SimpleConsumer.scala
6dae149adfd4bfaa0d98aa641dfc41b00fcb6162
core/src/main/scala/kafka/controller/ControllerChannelManager.scala
ea8485b479155b479c575ebc89a4f73086c872cb
core/src/main/scala/kafka/network/BlockingChannel.scala
d22dabdf4fc2346c5487b9fd94cadfbcab70040d
core/src/main/scala/kafka/producer/SyncProducer.scala
041cfa59c18fa04706d28e98e58fda3937b6c992
core/src/main/scala/kafka/server/KafkaConfig.scala
3c3aafc2b3f06fc8f3168a8a9c1e0b08e944c1ef
core/src/main/scala/kafka/server/KafkaServer.scala
5e34f95e64eaf12ae7e904ffef32422a365eca86
Diff: https://reviews.apache.org/r/17671/diff/
Testing (updated)
-------
unit-tests
Thanks,
Guozhang Wang