[
https://issues.apache.org/jira/browse/STREAMS-80?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14005030#comment-14005030
]
ASF GitHub Bot commented on STREAMS-80:
---------------------------------------
Github user mfranklin commented on the pull request:
https://github.com/apache/incubator-streams/pull/15#issuecomment-43795138
LocalBuilder appears to be checking the queue sizes on components before
calling shutdown, so the only way the queues are not flushed is if shutdown is
triggered from outside of the start method. This would be due to a shutdown
hook or other external call.
The question is what is the desired behavior. If I hit CTRL-C on my
console, do I want it to flush all the remaining data or do I want it to stop?
> StreamsProcressorTask and StreamsPersistWriterTask are BROKEN
> -------------------------------------------------------------
>
> Key: STREAMS-80
> URL: https://issues.apache.org/jira/browse/STREAMS-80
> Project: Streams
> Issue Type: Bug
> Reporter: Ryan Ebanks
> Priority: Critical
> Original Estimate: 0.5h
> Remaining Estimate: 0.5h
>
> A recent commit seems to have introduced this. Its a simple fix, but the
> while statement on line 70 of StreamsProviderTask should read
> while(this.keepRunning.get() || datum != null) {
> And line 75 in StreamsPersist writer task should read
> while(this.keepRunning.get() || datum != null) {
> Both lines are missing the datum != null statement. This causes tasks to be
> shutdown before data is processed and data is orphaned in the stream. In the
> worst case only the provider runs.
--
This message was sent by Atlassian JIRA
(v6.2#6252)