[
https://issues.apache.org/jira/browse/FLINK-4460?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15905146#comment-15905146
]
ASF GitHub Bot commented on FLINK-4460:
---------------------------------------
Github user kl0u commented on a diff in the pull request:
https://github.com/apache/flink/pull/3484#discussion_r105398702
--- Diff:
flink-streaming-java/src/main/java/org/apache/flink/streaming/api/graph/StreamGraph.java
---
@@ -333,32 +356,40 @@ public void addEdge(Integer upStreamVertexID, Integer
downStreamVertexID, int ty
downStreamVertexID,
typeNumber,
null,
- new ArrayList<String>());
+ new ArrayList<String>(), null);
}
private void addEdgeInternal(Integer upStreamVertexID,
Integer downStreamVertexID,
int typeNumber,
StreamPartitioner<?> partitioner,
- List<String> outputNames) {
-
+ List<String> outputNames,
+ OutputTag outputTag) {
- if (virtualSelectNodes.containsKey(upStreamVertexID)) {
+ if (virtualSideOutputNodes.containsKey(upStreamVertexID)) {
+ int virtualId = upStreamVertexID;
+ upStreamVertexID =
virtualSideOutputNodes.get(virtualId).f0;
+ if (outputTag == null) {
+ outputTag =
virtualSideOutputNodes.get(virtualId).f1;
+ }
+ addEdgeInternal(upStreamVertexID, downStreamVertexID,
typeNumber, partitioner, null, outputTag);
+ } else if (virtualSelectNodes.containsKey(upStreamVertexID)) {
int virtualId = upStreamVertexID;
upStreamVertexID = virtualSelectNodes.get(virtualId).f0;
if (outputNames.isEmpty()) {
// selections that happen downstream override
earlier selections
outputNames =
virtualSelectNodes.get(virtualId).f1;
}
- addEdgeInternal(upStreamVertexID, downStreamVertexID,
typeNumber, partitioner, outputNames);
+ addEdgeInternal(upStreamVertexID, downStreamVertexID,
typeNumber, partitioner, outputNames, outputTag);
} else if (virtualPartitionNodes.containsKey(upStreamVertexID))
{
int virtualId = upStreamVertexID;
upStreamVertexID =
virtualPartitionNodes.get(virtualId).f0;
if (partitioner == null) {
partitioner =
virtualPartitionNodes.get(virtualId).f1;
}
- addEdgeInternal(upStreamVertexID, downStreamVertexID,
typeNumber, partitioner, outputNames);
+
--- End diff --
Remove line for uniformity with the `if() ...` above.
> Side Outputs in Flink
> ---------------------
>
> Key: FLINK-4460
> URL: https://issues.apache.org/jira/browse/FLINK-4460
> Project: Flink
> Issue Type: New Feature
> Components: Core, DataStream API
> Affects Versions: 1.2.0, 1.1.3
> Reporter: Chen Qin
> Assignee: Chen Qin
> Labels: latearrivingevents, sideoutput
>
> https://docs.google.com/document/d/1vg1gpR8JL4dM07Yu4NyerQhhVvBlde5qdqnuJv4LcV4/edit?usp=sharing
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)