[
https://issues.apache.org/jira/browse/SAMZA-1346?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16063492#comment-16063492
]
Navina Ramesh commented on SAMZA-1346:
--------------------------------------
> if the locality manager is null, then host affinity is not enabled and we
> could just defer to group().
Would it more straightforward for the grouper to check the
`job.host-affinity.enabled` configuration? If you assume that localityManager
definition implies host-affinity is enabled, it might hide potential issues in
other components, where localityManager is defined/used, however, the user
didn't intend to enable host-affinity. Not that host-affinity should have any
adverse side-effect on the job execution itself. Let me know what you think.
Thanks!
> GroupByContainerCount.balance() should guard against null LocalityManager
> -------------------------------------------------------------------------
>
> Key: SAMZA-1346
> URL: https://issues.apache.org/jira/browse/SAMZA-1346
> Project: Samza
> Issue Type: Improvement
> Reporter: Jake Maes
> Assignee: Jake Maes
>
> While it's less likely after SAMZA-1334, we have seen cases of an NPE in
> embedded mode.
> {noFormat}
> org.apache.samza.SamzaException: Failed to run application
> at
> org.apache.samza.runtime.LocalApplicationRunner.run(LocalApplicationRunner.java:136)
> at
> com.linkedin.beam.runners.samza.runtime.fluent.FluentRuntime$RunnerTask.run(FluentRuntime.java:114)
> ... 1 more
> Caused by: java.lang.NullPointerException
> at
> org.apache.samza.container.grouper.task.GroupByContainerCount.balance(GroupByContainerCount.java:92)
> at
> org.apache.samza.coordinator.JobModelManager$.readJobModel(JobModelManager.scala:257)
> at
> org.apache.samza.coordinator.JobModelManager.readJobModel(JobModelManager.scala)
> at
> org.apache.samza.standalone.StandaloneJobCoordinator.<init>(StandaloneJobCoordinator.java:108)
> at
> org.apache.samza.standalone.StandaloneJobCoordinatorFactory.getJobCoordinator(StandaloneJobCoordinatorFactory.java:29)
> at
> org.apache.samza.processor.StreamProcessor.<init>(StreamProcessor.java:111)
> at
> org.apache.samza.processor.StreamProcessor.<init>(StreamProcessor.java:94)
> at
> org.apache.samza.runtime.LocalApplicationRunner.createStreamProcessor(LocalApplicationRunner.java:231)
> at
> org.apache.samza.runtime.LocalApplicationRunner.lambda$run$0(LocalApplicationRunner.java:125)
> at
> org.apache.samza.runtime.LocalApplicationRunner$$Lambda$35/1940982718.accept(Unknown
> Source)
> at java.util.ArrayList.forEach(ArrayList.java:1249)
> at
> org.apache.samza.runtime.LocalApplicationRunner.run(LocalApplicationRunner.java:121)
> ... 2 more
> {noFormat}
> It should be straight forward to defend against this case and provide better
> feedback in the logs. E.g. if the locality manager is null, then host
> affinity is not enabled and we could just defer to group().
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)