You may have mis-understood the api. getOffsetsBefore() returns a valid
offset before a given timestamp, not a given offset.

Thanks,

Jun


On Fri, Feb 28, 2014 at 5:02 PM, Vadim Keylis <vkeylis2...@gmail.com> wrote:

> Hello Guozhang. The following is slightly modified version of the example.
> Where offset can be previously valid offset, but does not exist in kafka
> for one or the other valid reason.
> TopicAndPartition topicAndPartition = new TopicAndPartition(topic,
> partition);
>         Map<TopicAndPartition, PartitionOffsetRequestInfo> requestInfo =
> new HashMap<TopicAndPartition, PartitionOffsetRequestInfo>();
>         requestInfo.put(topicAndPartition, new
> PartitionOffsetRequestInfo(offset, 1));
>         kafka.javaapi.OffsetRequest request = new
> kafka.javaapi.OffsetRequest(
>                 requestInfo, (short) requiestedOffset,
> config.getGroupId());
>         OffsetResponse response = simpleConsumer.getOffsetsBefore(request);
>
>         if (response.hasError()) {
>                return;
>         }
>
>         long[] offsets = response.offsets(topic, partition);
>
>
>
>
> On Fri, Feb 28, 2014 at 4:36 PM, Guozhang Wang <wangg...@gmail.com> wrote:
>
> > Hi Vadim,
> >
> > Which example in the kafka doc are you following?
> >
> > Guozhang
> >
> >
> > On Fri, Feb 28, 2014 at 3:18 PM, Vadim Keylis <vkeylis2...@gmail.com>
> > wrote:
> >
> > > Good afternoon. I am writing my own client that is based on simple
> > > consumer. I implemented method that is based on example in the kafka
> > > documents that sends request to kafka to find an offset. I am trying to
> > > find offsets after given offset. The api returns success even those
> > offset
> > > does not exist but offsets array has length of 0. What is the right way
> > to
> > > find next valid offset if the one been passed not found in Kafka.
> > >
> > > Thanks,
> > > Vadim
> > >
> >
> >
> >
> > --
> > -- Guozhang
> >
>

Reply via email to