[
https://issues.apache.org/jira/browse/STORM-2691?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated STORM-2691:
----------------------------------
Labels: pull-request-available (was: )
> storm-kafka-client Trident spout implements the Trident interface incorrectly
> -----------------------------------------------------------------------------
>
> Key: STORM-2691
> URL: https://issues.apache.org/jira/browse/STORM-2691
> Project: Apache Storm
> Issue Type: Bug
> Components: storm-kafka-client
> Affects Versions: 2.0.0, 1.1.1
> Reporter: Stig Rohde Døssing
> Assignee: Stig Rohde Døssing
> Labels: pull-request-available
> Time Spent: 20m
> Remaining Estimate: 0h
>
> The Trident Kafka spout uses the KafkaTridentSpoutTopicPartitionRegistry enum
> to pass existing topic partitions from the spout to the coordinator. This
> only works when those components happen to be in the same JVM, because the
> coordinator gets the topic information from the KafkaConsumer started by
> KafkaTridentSpoutEmitter.
> The coordinator runs in the TridentSpoutCoordinator bolt here
> https://github.com/apache/storm/blob/4c8a986f519cdf3e63bed47e9c4f723e4867267a/storm-client/src/jvm/org/apache/storm/trident/topology/TridentTopologyBuilder.java#L162,
> while the spout instances (emitters) run in TridentSpoutExecutors here
> https://github.com/apache/storm/blob/4c8a986f519cdf3e63bed47e9c4f723e4867267a/storm-client/src/jvm/org/apache/storm/trident/topology/TridentTopologyBuilder.java#L176.
> We should replace the registry enum with writes to Zookeeper or something
> similar.
> Edit: The fix for this is likely to be a broader change where we split the
> Subscription API into a few parts so the assignment process can be split
> across the coordinator and emitter instead of the emitter doing everything.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)