[ https://issues.apache.org/jira/browse/FLINK-1977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14532745#comment-14532745 ]
ASF GitHub Bot commented on FLINK-1977: --------------------------------------- Github user rmetzger commented on a diff in the pull request: https://github.com/apache/flink/pull/659#discussion_r29856563 --- Diff: flink-staging/flink-streaming/flink-streaming-core/src/main/java/org/apache/flink/streaming/api/operators/windowing/GroupedActiveDiscretizer.java --- @@ -60,29 +62,45 @@ public void run() throws Exception { groupedDiscretizers.put(key, groupDiscretizer); } - groupDiscretizer.processRealElement(nextObject); + groupDiscretizer.processRealElement(element); } - } - for (StreamDiscretizer<IN> group : groupedDiscretizers.values()) { - group.emitWindow(); - } + } @Override public void open(org.apache.flink.configuration.Configuration parameters) throws Exception { super.open(parameters); - centralThread = new Thread(new CentralCheck()); + centralCheck = new CentralCheck(); + centralThread = new Thread(centralCheck); centralThread.start(); } + @Override + public void close() throws Exception { + super.close(); + for (StreamDiscretizer<IN> group : groupedDiscretizers.values()) { + group.emitWindow(); + } + + try { + centralCheck.running = false; + centralThread.interrupt(); + centralThread.join(); + } catch (InterruptedException e) { + e.printStackTrace(); --- End diff -- Printing only the stacktrace (without the exception's message) to standard out is really not helpful at all ;) I would wrap it in a runtime exception, or since its in a close() method, log a warning with the exception. > Rework Stream Operators to always be push based > ----------------------------------------------- > > Key: FLINK-1977 > URL: https://issues.apache.org/jira/browse/FLINK-1977 > Project: Flink > Issue Type: Improvement > Reporter: Aljoscha Krettek > Assignee: Aljoscha Krettek > > This is a result of the discussion on the mailing list. This is an excerpt > from the mailing list that gives the basic idea of the change: > I propose to change all streaming operators to be push based, with a > slightly improved interface: In addition to collect(), which I would > call receiveElement() I would add receivePunctuation() and > receiveBarrier(). The first operator in the chain would also get data > from the outside invokable that reads from the input iterator and > calls receiveElement() for the first operator in a chain. -- This message was sent by Atlassian JIRA (v6.3.4#6332)