JiangJie:

thanks for the info.

it looks I can change the default behavior and let a new group read from
earliest offset by setting auto.offset.reset=smallest

Yang

On Tue, Feb 24, 2015 at 3:06 PM, Jiangjie Qin <j...@linkedin.com.invalid>
wrote:

> If a consumer comes from a new consumer group, it will by default consume
> from the log end.
> In you first scenario, because you started consumer after producing data,
> when the consumer starts it will consume from the latest. So you will not
> be able to see the messages even though they are in the broker.
> In your second scenario, because consumer will commit the offsets
> periodically and during rebalance. The first run of consumer will commit
> offset to be 0.
> Then you produced some data and run the second consumer. Because the
> second run of consumer uses the same consumer group, it will pick up the
> committed offset and consume from 0. In this case you will see the
> produced messages. If you use a different consumer group in your second
> run of consumer, you will not be able to see the messages because the
> offset will be reset to latest like in the first scenario.
>
> -Jiangjie Qin
>
> On 2/24/15, 1:56 PM, "Yang" <teddyyyy...@gmail.com> wrote:
>
> >somehow I have to let the consumer run once BEFORE the messages are
> >produced. then run consumer after messages are produced, then it works:
> >
> >
> >export topic=ttnew21
> >  sudo -u kafka bin/kafka-topics.sh  --zookeeper localhost:7181 --create
> >--topic $topic  --partitions 1 --replication-factor 1
> >echo "first try"
> >  sudo -u kafka bin/kafka-console-consumer.sh --zookeeper localhost:7181
> >--consumer-timeout-ms 1000 --topic $topic -group fffffxx
> >  echo 'asdfasdfsadffadsfasf' | sudo -u kafka
> >bin/kafka-console-producer.sh
> >--broker-list  localhost:9092 --topic  $topic
> >echo "second try"
> >  sudo -u kafka bin/kafka-console-consumer.sh --zookeeper localhost:7181
> >--consumer-timeout-ms 1000 --topic $topic -group fffffxx
> >
> >
> >the first try doesn't read anything out (of course) ; the second one
> >works.
> >but if I remove the first try, the remaining consumer can't read anything
> >either.
> >
> >
> >
> >looks like a bug?
> >
> >On Tue, Feb 24, 2015 at 1:51 PM, Yang <teddyyyy...@gmail.com> wrote:
> >
> >> in the following code, I just create a new topic, send some messages
> >>onto
> >> the new topic with console producer, then read it with console consumer.
> >> but after the 3rd line, nothing is printed out.
> >>
> >>
> >>
> >> export topic=ttnew2
> >>   sudo -u kafka bin/kafka-topics.sh  --zookeeper localhost:7181 --create
> >> --topic $topic  --partitions 1 --replication-factor 1
> >>   echo 'asdfasdfsadffadsfasf' | sudo -u kafka
> >> bin/kafka-console-producer.sh --broker-list  localhost:9092 --topic
> >>$topic
> >>   sudo -u kafka bin/kafka-console-consumer.sh --zookeeper localhost:7181
> >> --topic $topic -group fffff
> >>
> >>
> >> shouldn't I expect the consumer on the 3rd line to read out the
> >>messages?
> >> in fact if I give it --from-beginning,  it works fine
> >>
> >>
> >>
> >> this is kafka_2.9.2-0.8.1.1
> >>
> >>
> >> Thanks
> >> Yang
> >>
>
>

Reply via email to