Index: core/src/main/scala/kafka/producer/SyncProducer.scala =================================================================== --- core/src/main/scala/kafka/producer/SyncProducer.scala (revision 1245727) +++ core/src/main/scala/kafka/producer/SyncProducer.scala (working copy) @@ -26,9 +26,11 @@ import scala.math._ import kafka.common.MessageSizeTooLargeException import java.nio.ByteBuffer +import java.util.Random object SyncProducer { val RequestKey: Short = 0 + var randomGenerator = new Random() } /* @@ -40,8 +42,10 @@ private val MaxConnectBackoffMs = 60000 private var channel : SocketChannel = null private var sentOnConnection = 0 - private var lastConnectionTime = System.currentTimeMillis + /** Set to a random value between (now - reconnectTImeInterval) and now **/ + private var lastConnectionTime = System.currentTimeMillis - config.reconnectInterval + SyncProducer.randomGenerator.nextDouble() * config.reconnectInterval + private val lock = new Object() @volatile private var shutdown: Boolean = false