[ 
https://issues.apache.org/jira/browse/SAMZA-166?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Chris Riccomini updated SAMZA-166:
----------------------------------

    Attachment: SAMZA-166.0.patch

Attaching a patch: RB at:

https://reviews.apache.org/r/18792/

There is a race condition between the BrokerProxy thread that starts up and the 
send() method that sends messages, and then confirms that the message was sent. 
The race condition is:

1. send() sends a message
2. BrokerProxy starts up and uses auto.offset.reset=largest to start from 
offset 1 instead of offset 0 (because there is a message in the stream now)
3. send() waits for the task to receive the message.

The problem is that the task never gets a message in (3) because the 
BrokerProxy started reading for messages AFTER the offset 0.

To fix this, for now I just set the auto.offset.reset to smallest for the input 
stream. This is how the test used to be before SAMZA-142. I added a new system 
for the changelog stream which MUST be largest in order to test the bug that 
SAMZA-142 was trying to solve.

I'm also going to add a subtask to SAMZA-157 to update TestStatefulTask to just 
use one system, once SAMZA-157 is committed.

> TestStatefulTask fails
> ----------------------
>
>                 Key: SAMZA-166
>                 URL: https://issues.apache.org/jira/browse/SAMZA-166
>             Project: Samza
>          Issue Type: Bug
>          Components: kv, test
>    Affects Versions: 0.6.0
>            Reporter: Chris Riccomini
>            Assignee: Chris Riccomini
>         Attachments: SAMZA-166.0.patch
>
>
> TestStatefulTask appears to be failing after SAMZA-142 was merged.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to