[
https://issues.apache.org/jira/browse/STREAMS-80?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14005131#comment-14005131
]
ASF GitHub Bot commented on STREAMS-80:
---------------------------------------
Github user smashew commented on the pull request:
https://github.com/apache/incubator-streams/pull/15#issuecomment-43803287
They are also not aware if the processor or writer is actually running. If
the user in 'write(StreamsDatum datum)' starts a thread to process that, there
isn't any information for LocalStreamsBuilder to know that is happening. So,
the queue is depleted, but another thread is hanging around with a datum.
> 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)