[
https://issues.apache.org/jira/browse/SAMZA-1933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16640152#comment-16640152
]
ASF GitHub Bot commented on SAMZA-1933:
---------------------------------------
Github user asfgit closed the pull request at:
https://github.com/apache/samza/pull/684
> Fix NPE in LocalityManager.
> ----------------------------
>
> Key: SAMZA-1933
> URL: https://issues.apache.org/jira/browse/SAMZA-1933
> Project: Samza
> Issue Type: Bug
> Reporter: Shanthoosh Venkataraman
> Assignee: Shanthoosh Venkataraman
> Priority: Major
>
> Currently to generate JobModel, ApplicationMaster relies upon
> TaskAssignmentManager to read the task to container assignments from the
> coordinator stream. After the metadata store changes, the following exception
> occurs during JobModel generation:
>
> {code:java}
> Exception in thread "main" java.lang.NullPointerException
> at
> org.apache.samza.coordinator.metadatastore.CoordinatorStreamStore.bootstrapMessagesFromStream(CoordinatorStreamStore.java:136)
> at
> org.apache.samza.coordinator.metadatastore.CoordinatorStreamStore.all(CoordinatorStreamStore.java:127)
> at
> org.apache.samza.container.grouper.task.TaskAssignmentManager.readTaskAssignment(TaskAssignmentManager.java:97)
> at
> org.apache.samza.container.grouper.task.GroupByContainerCount.getPreviousContainers(GroupByContainerCount.java:154)
> at
> org.apache.samza.container.grouper.task.GroupByContainerCount.balance(GroupByContainerCount.java:98)
> at
> org.apache.samza.coordinator.JobModelManager$.readJobModel(JobModelManager.scala:205)
> at
> org.apache.samza.coordinator.JobModelManager$.getJobModelManager(JobModelManager.scala:95)
> at
> org.apache.samza.coordinator.JobModelManager$.apply(JobModelManager.scala:81)
> at org.apache.samza.coordinator.JobModelManager.apply(JobModelManager.scala)
> at
> org.apache.samza.clustermanager.ClusterBasedJobCoordinator.<init>(ClusterBasedJobCoordinator.java:177)
> at
> org.apache.samza.clustermanager.ClusterBasedJobCoordinator.main(ClusterBasedJobCoordinator.java:343)
> {code}
> Reason behind the exception is we did not invoke taskManager.init() before
> using the TaskManager instance, hence some of the consumer connections we not
> setup correctly.
> Fix:
> # Invoke taskManager.init() before using it in the LocalityManager.
> # Close the TaskAssignmentManager as soon as it goes out of scope.
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)