We are using high-level API, not the SimpleConsumer. Thanks, Jiang
-----Original Message----- From: Jun Rao [mailto:jun...@gmail.com] Sent: Friday, August 23, 2013 12:13 AM To: users@kafka.apache.org Subject: Re: repeated for request offset out of range Are you using the ZK-based consumer or SimpleConsumer? Only the former automatically resets offsets on OffsetOutOfRangeException. Thanks, Jun On Thu, Aug 22, 2013 at 10:23 AM, Wu, Jiang2 <jiang2...@citi.com> wrote: > Hi, > > In our log we see there are repeated errors due to the same request > whose offset is out of range. As I understand when out of range > happens, the consumer should reset its offset, therefore such error > should happen only once. Does the log indicate a bug? > > Thanks, > Jiang > > > [2013-08-22 09:23:20,649] ERROR [KafkaApi-2] Error when processing > fetch request for partition [xxxxxx,0] offset 2717035 from consumer > with correlation id 324387 (kafka.server.KafkaApis) > kafka.common.OffsetOutOfRangeException: Request for offset 2717035 but > we only have log segments in the range 2720184 to 2724642. > at kafka.log.Log.read(Log.scala:417) > at > kafka.server.KafkaApis.kafka$server$KafkaApis$$readMessageSet(KafkaApis.scala:367) > at > kafka.server.KafkaApis$$anonfun$kafka$server$KafkaApis$$readMessageSets$1.apply(KafkaApis.scala:314) > at > kafka.server.KafkaApis$$anonfun$kafka$server$KafkaApis$$readMessageSets$1.apply(KafkaApis.scala:310) > at > scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:206) > at > scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:206) > at scala.collection.immutable.Map$Map1.foreach(Map.scala:105) > at > scala.collection.TraversableLike$class.map(TraversableLike.scala:206) > at scala.collection.immutable.Map$Map1.map(Map.scala:93) > at > kafka.server.KafkaApis.kafka$server$KafkaApis$$readMessageSets(KafkaApis.scala:310) > at kafka.server.KafkaApis.handleFetchRequest(KafkaApis.scala:276) > at kafka.server.KafkaApis.handle(KafkaApis.scala:65) > at > kafka.server.KafkaRequestHandler.run(KafkaRequestHandler.scala:42) > at java.lang.Thread.run(Thread.java:722) > [2013-08-22 09:23:20,749] ERROR [KafkaApi-2] Error when processing > fetch request for partition [xxxxxx,0] offset 2717035 from consumer > with correlation id 324387 (kafka.server.KafkaApis) > kafka.common.OffsetOutOfRangeException: Request for offset 2717035 but > we only have log segments in the range 2720184 to 2724642. > at kafka.log.Log.read(Log.scala:417) > at > kafka.server.KafkaApis.kafka$server$KafkaApis$$readMessageSet(KafkaApis.scala:367) > at > kafka.server.KafkaApis$$anonfun$kafka$server$KafkaApis$$readMessageSets$1.apply(KafkaApis.scala:314) > at > kafka.server.KafkaApis$$anonfun$kafka$server$KafkaApis$$readMessageSets$1.apply(KafkaApis.scala:310) > at > scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:206) > at > scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:206) > at scala.collection.immutable.Map$Map1.foreach(Map.scala:105) > at > scala.collection.TraversableLike$class.map(TraversableLike.scala:206) > at scala.collection.immutable.Map$Map1.map(Map.scala:93) > at > kafka.server.KafkaApis.kafka$server$KafkaApis$$readMessageSets(KafkaApis.scala:310) > at > kafka.server.KafkaApis$FetchRequestPurgatory.expire(KafkaApis.scala:556) > at > kafka.server.KafkaApis$FetchRequestPurgatory.expire(KafkaApis.scala:538) > at > kafka.server.RequestPurgatory$ExpiredRequestReaper.run(RequestPurgatory.scala:216) > at java.lang.Thread.run(Thread.java:722) > [2013-08-22 09:23:20,750] ERROR [KafkaApi-2] Error when processing > fetch request for partition [xxxxxx,0] offset 2717035 from consumer > with correlation id 324388 (kafka.server.KafkaApis) > kafka.common.OffsetOutOfRangeException: Request for offset 2717035 but > we only have log segments in the range 2720184 to 2724642. > at kafka.log.Log.read(Log.scala:417) > at > kafka.server.KafkaApis.kafka$server$KafkaApis$$readMessageSet(KafkaApis.scala:367) > at > kafka.server.KafkaApis$$anonfun$kafka$server$KafkaApis$$readMessageSets$1.apply(KafkaApis.scala:314) > at > kafka.server.KafkaApis$$anonfun$kafka$server$KafkaApis$$readMessageSets$1.apply(KafkaApis.scala:310) > at > scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:206) > at > scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:206) > at scala.collection.immutable.Map$Map1.foreach(Map.scala:105) > at > scala.collection.TraversableLike$class.map(TraversableLike.scala:206) > at scala.collection.immutable.Map$Map1.map(Map.scala:93) > at > kafka.server.KafkaApis.kafka$server$KafkaApis$$readMessageSets(KafkaApis.scala:310) > at kafka.server.KafkaApis.handleFetchRequest(KafkaApis.scala:276) > at kafka.server.KafkaApis.handle(KafkaApis.scala:65) > at > kafka.server.KafkaRequestHandler.run(KafkaRequestHandler.scala:42) > at java.lang.Thread.run(Thread.java:722) >