Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using riak_pipe for Map Reduce task may return inconsistent results when one of cluster node is down. #475

Closed
wants to merge 2 commits into from

Conversation

dreyk
Copy link

@dreyk dreyk commented Feb 1, 2013

Using riak_pipe for Map Reduce task may return inconsistent results(for example empty list,however all data are available).

  1. We must generate constant hash for the output reduce pase taking account of which nodes are up.
  2. We must return an error If can't send result of reduce(prereduce phase to the output) because some node are failed during map reduce job and we can't send result to it.

See http://lists.basho.com/pipermail/riak-users_lists.basho.com/2013-January/010870.html

Reduce phase must be started on live node.
If we can't send reduce result to output we must generate an error,
otherwise we will return inconsistent results.
beerriot added a commit to basho/riak_test that referenced this pull request Feb 1, 2013
This test is based off one submitted by Alexander Gunin to the
riak-users mailing list as an issue reproducer.
[http://lists.basho.com/pipermail/riak-users_lists.basho.com/2013-January/010896.html]
beerriot added a commit that referenced this pull request Feb 2, 2013
Builds on commit in #475 with more documentation, variable name cleanup,
and a more failure-tolerant up-vnode-finder strategy.
beerriot added a commit that referenced this pull request Feb 4, 2013
Squashed commit of the following:

commit 0c07454
Author: Bryan Fink <bryan@basho.com>
Date:   Sat Feb 2 10:17:43 2013 -0500

    cleanup and rework contant reduce hash

    Builds on commit in #475 with more documentation, variable name cleanup,
    and a more failure-tolerant up-vnode-finder strategy.

commit 58040e8
Author: Dreyk <gunin@satissoft.ru>
Date:   Fri Feb 1 13:44:49 2013 +0400

    Update src/riak_kv_mrc_pipe.erl

    Reduce phase must be started on live node.
@beerriot
Copy link

beerriot commented Feb 4, 2013

As the github history indicates, I cleaned up the first patch in this PR (for the constant reduce hash) for incorporation into Riak's 1.3 RC2. We'll review the second patch (for handling reduce phase errors) separately.

Thank you!

@evanmcc
Copy link
Contributor

evanmcc commented Aug 9, 2013

@beerriot Did the second patch ever get merged?

@beerriot
Copy link

@evanmcc Nope, it sure didn't. Want to submit a PR?

@slfritchie
Copy link
Contributor

Pulling PRs out of the freezer ... Hrm, looks like an impasse. Does the 2nd patch exist someplace?

@evanmcc
Copy link
Contributor

evanmcc commented Dec 12, 2013

I don't think so. It'd be a process of looking at this PR, and Bryan's
part 1 PR and diffing them and cleaning up/updating.

@jtuple jtuple added this to the 2.1 milestone Mar 24, 2014
@nickelization nickelization removed this from the 2.1 milestone Oct 17, 2016
@martincox martincox closed this Jun 14, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants