[
https://issues.apache.org/jira/browse/SAMZA-1137?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15933554#comment-15933554
]
Yi Pan (Data Infrastructure) commented on SAMZA-1137:
-----------------------------------------------------
[~navina], for now, the need to pass down the ApplicationRunner to the
StreamOperatorTask is due to the reason that instantiation of StreamSpec is a
function of the ApplicationRunner, which is required when we are instantiating
the StreamGraphImpl object for the specific task instance.
In the long-run, the correct solution should be to use the
LocalApplicationRunner to run the same main method in StreamApplication in the
container process as well. Or, at least, the same LocalApplicationRunner should
be used to instantiate the StreamProcessor() and replace the whole
SamzaContainer.main() method.
Maybe the first step toward that goal is to implement a YarnContainerRunner
class that implements ApplicationRunner, and internally uses the
StreamProcessor to encapsulate a NOOP JobCoordinator and a SamzaContainer. The
next step to direct run StreamApplication.main() can be an optional extension
later. Let's discuss it further. We need both a short term and a long term
solution for that.
> Instantiate ApplicationRunner in SamzaContainer
> -----------------------------------------------
>
> Key: SAMZA-1137
> URL: https://issues.apache.org/jira/browse/SAMZA-1137
> Project: Samza
> Issue Type: Task
> Reporter: Yi Pan (Data Infrastructure)
> Assignee: Xinyu Liu
>
> From the discussion on SAMZA-1122, we will need to create an
> ApplicationRunner in SamzaContainer as well, at least to provide StreamSpecs
> for fluent API.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)