You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Guozhang Wang (Jira)" <ji...@apache.org> on 2019/10/10 21:56:01 UTC

[jira] [Created] (KAFKA-9020) Streams sub-topologies should be sorted by sink -> source relationship

Guozhang Wang created KAFKA-9020:
------------------------------------

             Summary: Streams sub-topologies should be sorted by sink -> source relationship
                 Key: KAFKA-9020
                 URL: https://issues.apache.org/jira/browse/KAFKA-9020
             Project: Kafka
          Issue Type: Improvement
          Components: streams
            Reporter: Guozhang Wang


In Streams {{InternalTopologyBuilder}} we are sorting the sub-topologies (named as node groups) based on the source node names:

{code}
for (final String nodeName : Utils.sorted(allSourceNodes)) {
            nodeGroupId = putNodeGroupName(nodeName, nodeGroupId, nodeGroups, rootToNodeGroup);
        }
{code}

This is okay for DSL where the source node names are not customized, and hence we can just rely on the internal suffix {{..-SOURCE-xxxxx}} which is basically following the parsing order. But now with the source node name customized with KIP-307, we should no longer rely on the source node names. Instead, we should sort sub-topologies by the sink -> source relationship --- that is, if a sub-topology A has a sink node sending to topic X while another sub-topology B has a source node reading from X, then A should be sorted before B.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)