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

Use 'RR' when a prunable vclock is replicated #1866

Merged
merged 3 commits into from
Jul 18, 2023

Commits on Jul 14, 2023

  1. Use 'RR' when a prunable vclock is replicated

    There may be some situations whereby a vector clock grows beyond the prescribed limits on the source cluster - in particular following read repair.
    
    In these cases the new object needs to be replicated but with the same resulting vector clock (assuming no siblings).  If the same vector clock does not result on the sink - any full-sync operation may continuously detect the  delta, but not be able to resolve it (as the sink vnodes prune each time).
    
    The 'rr' option will, on riak_kv_vnode, ensure pruning is bypassed so that we avoid pruning on a sink, if we have not pruned on a source.  The 'rr' option is only used when the clock is prunable (as otherwise the delta could occur in the reverse direction).
    
    The 'rr' option also blocks some sibling constraint checks (e.g. maximum number of siblings.  However, as the most likely cause of it being applied is 'rr' on the src side - this is still generally a win for replication consistency.
    martinsumner committed Jul 14, 2023
    Configuration menu
    Copy the full SHA
    951aab2 View commit details
    Browse the repository at this point in the history

Commits on Jul 16, 2023

  1. Switch logic to put_fsm

    Already know bucket props at this point.  case only to be considered when `asis` - so should also work for riak_repl aae full-sync
    martinsumner committed Jul 16, 2023
    Configuration menu
    Copy the full SHA
    58875a0 View commit details
    Browse the repository at this point in the history

Commits on Jul 17, 2023

  1. Lose a line

    martinsumner committed Jul 17, 2023
    Configuration menu
    Copy the full SHA
    e5b6f42 View commit details
    Browse the repository at this point in the history