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

osd: fixes to make rbd on ec work #12305

Merged
merged 14 commits into from
Dec 5, 2016
Merged

Commits on Nov 22, 2016

  1. ECTransaction::get_write_plan: fix bug with substripe write with alig…

    …ned offset
    
    Signed-off-by: Samuel Just <sjust@redhat.com>
    athanatos committed Nov 22, 2016
    Configuration menu
    Copy the full SHA
    001c759 View commit details
    Browse the repository at this point in the history
  2. ExtentCache: fix bug in get_remaining_extents_for_rmw

    Signed-off-by: Samuel Just <sjust@redhat.com>
    athanatos committed Nov 22, 2016
    Configuration menu
    Copy the full SHA
    64e00a5 View commit details
    Browse the repository at this point in the history

Commits on Nov 24, 2016

  1. ECTransaction: adjacent extents might have unaligned boundaries

    Signed-off-by: Samuel Just <sjust@redhat.com>
    athanatos committed Nov 24, 2016
    Configuration menu
    Copy the full SHA
    9e2645a View commit details
    Browse the repository at this point in the history

Commits on Dec 2, 2016

  1. PGTransaction,ReplicatedPG: clarify handling of noop operations

    The offending transaction was [call rbd.copyup,delete] on a non-existent
    object.  PGTransaction incorrectly ended up with Create and delete_first
    causing a transaction beginning with trying to collection_move_rename a
    non-existent head object.  In fact, if we delete an object which the
    transaction currently claims to be creating, the transaction should show
    as empty (for that object).  Rather than going through the normal write
    pipeline for that case, let's just record a 0 error code in the log and
    call it a day.  That way, the transaction generating code only needs to
    worry about about updates to actual objects.
    
    Signed-off-by: Samuel Just <sjust@redhat.com>
    athanatos committed Dec 2, 2016
    Configuration menu
    Copy the full SHA
    d6417f4 View commit details
    Browse the repository at this point in the history
  2. ECBackend::try_state_to_reads: fix debug spacing

    Signed-off-by: Samuel Just <sjust@redhat.com>
    athanatos committed Dec 2, 2016
    Configuration menu
    Copy the full SHA
    32bd456 View commit details
    Browse the repository at this point in the history
  3. ECBackend: ops must consistently use or not use the cache

    If the state is flipped, ops already in the pipeline need to
    continue to maintain it.
    
    Signed-off-by: Samuel Just <sjust@redhat.com>
    athanatos committed Dec 2, 2016
    Configuration menu
    Copy the full SHA
    7750616 View commit details
    Browse the repository at this point in the history
  4. ReplicatedPG::do_op: wait_for_commit even for results < 0 entries

    This way, the replies come back in order and we don't expose
    uncommitted results.
    
    Signed-off-by: Samuel Just <sjust@redhat.com>
    athanatos committed Dec 2, 2016
    Configuration menu
    Copy the full SHA
    6f0dafc View commit details
    Browse the repository at this point in the history

Commits on Dec 4, 2016

  1. OSD::init_op_flags: don't consider PING to be a write

    Signed-off-by: Samuel Just <sjust@redhat.com>
    athanatos committed Dec 4, 2016
    Configuration menu
    Copy the full SHA
    89fd030 View commit details
    Browse the repository at this point in the history
  2. ReplicatedPG::submit_log_entries: fill in repop->v

    This way, we can deal with waiting_for_commit appropriately.
    Also, add more debugging to new_repop and already_*.
    
    Signed-off-by: Samuel Just <sjust@redhat.com>
    athanatos committed Dec 4, 2016
    Configuration menu
    Copy the full SHA
    ef376c9 View commit details
    Browse the repository at this point in the history
  3. ReplicatedPG: always send the ack with the commit

    This was always a pretty silly concept and it has gotten in
    the way of something else.
    
    Signed-off-by: Samuel Just <sjust@redhat.com>
    athanatos committed Dec 4, 2016
    Configuration menu
    Copy the full SHA
    6b89fac View commit details
    Browse the repository at this point in the history
  4. ReplicatedPG: allow repops to apply with commit

    Up to now, the repop machinery depended on all repops commiting and
    applying in order.  For MOSDPGUpdateLogMissing operations, however,
    we don't really want to send two messages in the ECBackend case.
    Instead, just allow those repops to skip the applied stage and be
    completed in order once the repops ahead of them finish.
    
    Signed-off-by: Samuel Just <sjust@redhat.com>
    athanatos committed Dec 4, 2016
    Configuration menu
    Copy the full SHA
    7c97cd2 View commit details
    Browse the repository at this point in the history
  5. ReplicatedPG: add debugging to EINVAL returns

    Signed-off-by: Samuel Just <sjust@redhat.com>
    athanatos committed Dec 4, 2016
    Configuration menu
    Copy the full SHA
    c0c7f92 View commit details
    Browse the repository at this point in the history
  6. ReplicatedPG::record_write_error: send only the flags requested by th…

    …e op
    
    This isn't really important, but it's nice to be consistent with
    OSD::reply_op_error.  Yet another reason to do away with the ack flag.
    
    Signed-off-by: Samuel Just <sjust@redhat.com>
    athanatos committed Dec 4, 2016
    Configuration menu
    Copy the full SHA
    5c5c117 View commit details
    Browse the repository at this point in the history
  7. ReplicatedPG: add return value to RepGather

    Now that repops can represent an error, we need to remember
    the error code so that we can reply to waiting_for_* messages
    with the right value.
    
    Signed-off-by: Samuel Just <sjust@redhat.com>
    athanatos committed Dec 4, 2016
    Configuration menu
    Copy the full SHA
    9bf51f9 View commit details
    Browse the repository at this point in the history