Comment 8 for bug 1697543

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to swift (master)

Reviewed: https://review.openstack.org/528155
Committed: https://git.openstack.org/cgit/openstack/swift/commit/?id=7013e70ca67891e94664e9eca70925b61ee8f689
Submitter: Zuul
Branch: master

commit 7013e70ca67891e94664e9eca70925b61ee8f689
Author: Clay Gerrard <email address hidden>
Date: Thu Dec 14 20:03:24 2017 -0800

    Represent dispersion worse than one replicanth

    With a sufficiently undispersed ring it's possible to move an entire
    replicas worth of parts and yet the value of dispersion may not get any
    better (even though in reality dispersion has dramatically improved).
    The problem is dispersion will currently only represent up to one whole
    replica worth of parts being undispersed.

    However with EC rings it's possible for more than one whole replicas
    worth of partitions to be undispersed, in these cases the builder will
    require multiple rebalance operations to fully disperse replicas - but
    the dispersion value should improve with every rebalance.

    N.B. with this change it's possible for rings with a bad dispersion
    value to measure as having a significantly smaller dispersion value
    after a rebalance (even though they may not have had their dispersion
    change) because the total amount of bad dispersion we can measure has
    been increased but we're normalizing within a similar range.

    Closes-Bug: #1697543

    Change-Id: Ifefff0260deac0c3e8b369a1e158686c89936686