Hi, Tommy,

Could you open a JIRA for this one? Also, could you include the Kafka
broker version in this test?

Thanks!

-Yi

On Wed, Sep 14, 2016 at 6:06 AM, Tommy Becker <tobec...@tivo.com> wrote:

> We are testing an upgrade to 0.10.1 from 0.9.1 and noticed a regression.
> When starting a stream job that consumes a topic that does not yet exist,
> the job dies with the following exception:
>
> Exception in thread "main" java.lang.IllegalArgumentException: No tasks
> found. Likely due to no input partitions. Can't run a job with no tasks.
>        at org.apache.samza.container.grouper.task.GroupByContainerCoun
> t.validateTasks(GroupByContainerCount.java:193)
>        at org.apache.samza.container.grouper.task.GroupByContainerCoun
> t.balance(GroupByContainerCount.java:86)
>        at org.apache.samza.coordinator.JobModelManager$.refreshJobMode
> l(JobCoordinator.scala:278)
>        at org.apache.samza.coordinator.JobModelManager$.jobModelGenera
> tor$1(JobCoordinator.scala:211)
>        at org.apache.samza.coordinator.JobModelManager$.initializeJobM
> odel(JobCoordinator.scala:217)
>        at org.apache.samza.coordinator.JobModelManager$.getJobCoordina
> tor(JobCoordinator.scala:122)
>        at org.apache.samza.coordinator.JobModelManager$.apply(JobCoord
> inator.scala:106)
>        at org.apache.samza.coordinator.JobModelManager$.apply(JobCoord
> inator.scala:112)
>        at org.apache.samza.job.local.ThreadJobFactory.getJob(ThreadJob
> Factory.scala:40)
>        at org.apache.samza.job.JobRunner.run(JobRunner.scala:129)
>        at org.apache.samza.job.JobRunner$.main(JobRunner.scala:66)
>        at org.apache.samza.job.JobRunner.main(JobRunner.scala)
>
>
>
>
>
> The root cause seems to be commit 920f803a2e3dab809f4d7bb518259b0f4164407f
> from SAMZA-971. From what I can tell passing partitionsMetadataOnly = true
> to the StreamMetadataCache in JobModelManager#getInputStreamPartitions is
> what's causing this this behavior. The input topic is still created, but
> the proper partition metadata is not returned, resulting in an empty set
> being returned. The behavior of Kafka here is screwy, but this still seems
> like a regression. The old behavior is nice because it doesn't require that
> producer systems come up before the stream processors.
>
> --
> Tommy Becker
> Senior Software Engineer
>
> Digitalsmiths
> A TiVo Company
>
> www.digitalsmiths.com<http://www.digitalsmiths.com>
> tobec...@tivo.com<mailto:tobec...@tivo.com>
>
> ________________________________
>
> This email and any attachments may contain confidential and privileged
> material for the sole use of the intended recipient. Any review, copying,
> or distribution of this email (or any attachments) by others is prohibited.
> If you are not the intended recipient, please contact the sender
> immediately and permanently delete this email and any attachments. No
> employee or agent of TiVo Inc. is authorized to conclude any binding
> agreement on behalf of TiVo Inc. by email. Binding agreements with TiVo
> Inc. may only be made by a signed written agreement.
>

Reply via email to