Index: core/src/main/scala/kafka/producer/SyncProducerConfig.scala
===================================================================
--- core/src/main/scala/kafka/producer/SyncProducerConfig.scala	(revision 1401522)
+++ core/src/main/scala/kafka/producer/SyncProducerConfig.scala	(working copy)
@@ -38,13 +38,6 @@
   
   val bufferSize = props.getInt("buffer.size", 100*1024)
 
-  val connectTimeoutMs = props.getInt("connect.timeout.ms", 5000)
-
-  val reconnectInterval = props.getInt("reconnect.interval", 30000)
-
-  /** negative reconnect time interval means disabling this time-based reconnect feature */
-  var reconnectTimeInterval = props.getInt("reconnect.time.interval.ms", 1000*1000*10)
-
   val maxMessageSize = props.getInt("max.message.size", 1000000)
 
   /* the client application sending the producer requests */
Index: core/src/main/scala/kafka/producer/ProducerConfig.scala
===================================================================
--- core/src/main/scala/kafka/producer/ProducerConfig.scala	(revision 1401522)
+++ core/src/main/scala/kafka/producer/ProducerConfig.scala	(working copy)
@@ -38,12 +38,6 @@
    */
   val brokerList = props.getString("broker.list")
 
-  /**
-   * If DefaultEventHandler is used, this specifies the number of times to
-   * retry if an error is encountered during send.
-   */
-  val numRetries = props.getInt("num.retries", 0)
-
   /** the partitioner class for partitioning events amongst sub-topics */
   val partitionerClass = props.getString("partitioner.class", "kafka.producer.DefaultPartitioner")
 
Index: core/src/main/scala/kafka/producer/SyncProducer.scala
===================================================================
--- core/src/main/scala/kafka/producer/SyncProducer.scala	(revision 1401522)
+++ core/src/main/scala/kafka/producer/SyncProducer.scala	(working copy)
@@ -82,13 +82,6 @@
           throw e
         case e => throw e
       }
-      // TODO: do we still need this?
-      sentOnConnection += 1
-
-      if(sentOnConnection >= config.reconnectInterval || (config.reconnectTimeInterval >= 0 && System.currentTimeMillis - lastConnectionTime >= config.reconnectTimeInterval)) {
-        reconnect()
-        sentOnConnection = 0
-      }
       response
     }
   }
@@ -138,9 +131,7 @@
   }
     
   private def connect(): BlockingChannel = {
-    var connectBackoffMs = 1
-    val beginTimeMs = SystemTime.milliseconds
-    while(!blockingChannel.isConnected && !shutdown) {
+    if (!blockingChannel.isConnected && !shutdown) {
       try {
         blockingChannel.connect()
         lastConnectionTime = System.currentTimeMillis
@@ -148,14 +139,8 @@
       } catch {
         case e: Exception => {
           disconnect()
-          val endTimeMs = SystemTime.milliseconds
-          if ( (endTimeMs - beginTimeMs + connectBackoffMs) > config.connectTimeoutMs ) {
-            error("Producer connection to " +  config.host + ":" + config.port + " timing out after " + config.connectTimeoutMs + " ms", e)
-            throw e
-          }
-          error("Connection attempt to " +  config.host + ":" + config.port + " failed, next attempt in " + connectBackoffMs + " ms", e)
-          SystemTime.sleep(connectBackoffMs)
-          connectBackoffMs = math.min(10 * connectBackoffMs, MaxConnectBackoffMs)
+          error("Producer connection to " +  config.host + ":" + config.port + " unsuccessful", e)
+          throw e
         }
       }
     }
Index: core/src/main/scala/kafka/server/KafkaConfig.scala
===================================================================
--- core/src/main/scala/kafka/server/KafkaConfig.scala	(revision 1401522)
+++ core/src/main/scala/kafka/server/KafkaConfig.scala	(working copy)
@@ -135,10 +135,6 @@
   /* default replication factors for automatically created topics */
   val defaultReplicationFactor = props.getInt("default.replication.factor", 1)
 
-  /* wait time in ms to allow the preferred replica for a partition to become the leader. This property is used during
-  * leader election on all replicas minus the preferred replica */
-  val preferredReplicaWaitTime = props.getLong("preferred.replica.wait.time", 300)
-
   val replicaMaxLagTimeMs = props.getLong("replica.max.lag.time.ms", 10000)
 
   val replicaMaxLagBytes = props.getLong("replica.max.lag.bytes", 4000)
