Read my email again :-)

-Jay


On Thu, Feb 13, 2014 at 9:43 AM, Neha Narkhede <neha.narkh...@gmail.com>wrote:

>  Did you try this on an otherwise empty topic?
>
> Yes and it blocks until --messages are read. But again, my interpretation
> of that config has been - "read exactly --messages # of messages, not less
> not more".
>
> Thanks,
> Neha
>
>
> On Mon, Feb 10, 2014 at 9:31 AM, Jay Kreps <jay.kr...@gmail.com> wrote:
>
> > Hmm, I could be wrong... Did you try this on an otherwise empty topic?
> Try
> > this:
> > 1. Produce 100GB of messages
> > 2. Run consumer performance test with --messages 1
> > 3. Go get some coffee
> > 4. Observe performance tests results with a time taken to consume 100GB
> of
> > messages but only recording a single message consumed
> >
> > :-)
> >
> > Here is what I mean:
> > scala> val l = List(1,2,3,4,5,6,7,8,9,10)
> > scala> val iter = l.iterator
> > scala> var count = 0
> > scala> for(i <- iter if count < 5) {
> > scala> iter.next
> > java.util.NoSuchElementException: next on empty iterator
> > ...
> >
> > This is the exact equivalent of
> > val l = List(1,2,3,4,5,6,7,8,9,10)
> > val iter = l.iterator
> > var count = 0
> > while(iter.hasNext) {
> >   if(iter.next < 5)
> >     count += 1
> > }
> >
> > -Jay
> >
> >
> > On Sun, Feb 9, 2014 at 9:43 PM, Neha Narkhede <neha.narkh...@gmail.com
> > >wrote:
> >
> > > I ran ConsumerPerformance with different number of messages config for
> a
> > > topic that has 100s of messages in the log. It did not hang in any of
> > these
> > > tests -
> > >
> > > nnarkhed-mn1:kafka-git-idea nnarkhed$ ./bin/kafka-run-class.sh
> > > kafka.perf.ConsumerPerformance --zookeeper localhost:2181 --topic test
> > > *--messages
> > > 10* --threads 1
> > > start.time, end.time, fetch.size, data.consumed.in.MB, MB.sec,
> > > data.consumed.in.nMsg, nMsg.sec
> > > 1 messages read
> > > 2 messages read
> > > 3 messages read
> > > 4 messages read
> > > 5 messages read
> > > 6 messages read
> > > 7 messages read
> > > 8 messages read
> > > 9 messages read
> > > 10 messages read
> > > *2014-02-09 21:39:47:385, 2014-02-09 21:39:52:641, 1048576, 0.0015,
> > 0.0060,
> > > 10, 39.0625*  (test ends with this)
> > > nnarkhed-mn1:kafka-git-idea nnarkhed$ ./bin/kafka-run-class.sh
> > > kafka.perf.ConsumerPerformance --zookeeper localhost:2181 --topic test
> > > *--messages
> > > 2* --threads 1
> > > 1 messages read
> > > 2 messages read
> > > *2014-02-09 21:39:59:853, 2014-02-09 21:40:05:100, 1048576, 0.0003,
> > 0.0011,
> > > 2, 8.0972*      (test ends with this)
> > >
> > > The way I read the --messages config is "read exactly --messages # of
> > > messages, not less not more". If the topic has less than --messages
> > > records, it will hang until it gets more data, else it exits properly.
> > > Seems like expected behavior.
> > >
> > > Thanks,
> > > Neha
> > >
> > >
> > >
> > > On Sat, Feb 8, 2014 at 2:11 PM, Jay Kreps <jay.kr...@gmail.com> wrote:
> > >
> > > > It loops on
> > > >   for (messageAndMetadata <- stream if messagesRead <
> > > config.numMessages) {
> > > >    // count message
> > > > }
> > > >
> > > > That means it loops over *all* messages in the stream (eventually
> > > blocking
> > > > when all messages are exhausted) but only counts the first N as
> > > determined
> > > > by the config.
> > > >
> > > > As a result this command seems to always hang forever. Seems like
> > someone
> > > > "improved" this without ever trying to run it :-(
> > > >
> > > > -Jay
> > > >
> > >
> >
>

Reply via email to