Github user revans2 commented on the pull request:
https://github.com/apache/storm/pull/750#issuecomment-142601291
@HeartSaVioR I figured out the failed tuples and will be pushing a new
patch shortly. This is the same null issue we were seeing previously. Just
with the newer disruptor it exacerbates the two issues.
First MutableObject is not synchronized so it is possible for the data to
not be flushed to memory and if the receiver thread is on a different core you
can get a null out.
Additionally I noticed that the non-bocking receive seems to not be putting
the correct barriers in place, and the polling can try to read a MutableObject
that has not been updated yet, and is still set to null. The only way I could
find to fix it was to implement it in terms of the blocking call. From my
performance tests I did not see any impact from these changes.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---