db replicator missing priority handoff options

Bug #1668399 reported by clayg
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Object Storage (swift)
Fix Released
Medium
Unassigned

Bug Description

There's no way to force the database replicators (account or container) to do handoffs only and prioritize rebalance.

Worse, it's difficult to do priority rebalance by hand because of lp bug #1663016

The db replicators should support a handoffs_only mode that allows you to raise concurrency and switch on handoffs only and get most disks reading handoff databases.

clayg (clay-gerrard)
Changed in swift:
importance: Undecided → High
status: New → Confirmed
clayg (clay-gerrard)
Changed in swift:
importance: High → Medium
tags: added: low-hanging-fruit
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to swift (master)

Reviewed: https://review.openstack.org/545497
Committed: https://git.openstack.org/cgit/openstack/swift/commit/?id=47fed6f2f960a2cd56960b8aeb2eeace405c3afa
Submitter: Zuul
Branch: master

commit 47fed6f2f960a2cd56960b8aeb2eeace405c3afa
Author: Samuel Merritt <email address hidden>
Date: Fri Feb 16 16:37:58 2018 -0800

    Add handoffs-only mode to DB replicators.

    The object reconstructor has a handoffs-only mode that is very useful
    when a cluster requires rapid rebalancing, like when disks are nearing
    fullness. This mode's goal is to remove handoff partitions from disks
    without spending effort on primary partitions. The object replicator
    has a similar mode, though it varies in some details.

    This commit adds a handoffs-only mode to the account and container
    replicators.

    Change-Id: I588b151ee65ae49d204bd6bf58555504c15edf9f
    Closes-Bug: 1668399

Changed in swift:
status: Confirmed → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to swift (feature/s3api)

Fix proposed to branch: feature/s3api
Review: https://review.openstack.org/557177

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to swift (feature/s3api)
Download full text (22.5 KiB)

Reviewed: https://review.openstack.org/557177
Committed: https://git.openstack.org/cgit/openstack/swift/commit/?id=8c17f610d49f3540159a80206fda10266cd2046b
Submitter: Zuul
Branch: feature/s3api

commit 9b4c978f99c993775e917f9ddec7cabb25c83c6d
Author: wanghui <email address hidden>
Date: Mon Mar 26 15:22:28 2018 +0800

    Use http code constant instead of int

    Change-Id: I1dce94ac6192746a7b90646fe4b4460a651bced1

commit 91e5cba03475fdb18a0bf21d9264628a97f8513a
Author: melissaml <ma.lei@99cloud.net>
Date: Sun Mar 25 18:15:14 2018 +0800

    Use http code constant instead of int

    To keep the consistency, using HTTP_NO_CONTENT instead
    of 204

    Change-Id: I3d4c0ab6851ce08d1ead0f3b275cb6b41fdb65ac

commit 3bc267d10c0b2a4499b76e4846f2df8e3777a361
Author: melissaml <ma.lei@99cloud.net>
Date: Fri Mar 23 07:29:02 2018 +0800

    fix a typo in documentation

    Change-Id: I0492ae1d50493585ead919904d6d9502b7738266

commit 8d7e245eb599b54d2bcc3c7a652b85987fdb36e1
Author: Alexandre Lécuyer <email address hidden>
Date: Thu Jul 13 15:44:56 2017 +0200

    Change object_audit_location_generator() to yield for a single policy.

    auditor.py currently relies on POLICY[0] object_audit_location_generator()
    to yield an AuditLocation for all policies on the object-server.

    The changes in this patch are :
      - object_audit_location_generator() yields AuditLocation only for the
      requested policy
      - audit_all_objects() calls object_audit_location_generator() for each
        policy

    Closes-Bug: 1534212
    Change-Id: Ida92ba0a5e1e486a4f7132c6539460b38c34ec87

commit 9f4910f6b938aa1679571d4787bbdcfa5b5f3a19
Author: Alexandre Lécuyer <email address hidden>
Date: Tue Mar 20 15:18:58 2018 +0100

    Add round_robin_iter function to common/utils

    Move the existing code in db_replicator.py to utils.py

    Change-Id: I04e3f30a82c89fb7e714c5eb7225374b9a5c76f9

commit 7e77bf34f2fdc43c935380064eb0d7045988eec0
Author: Kazuhiro MIYAHARA <email address hidden>
Date: Tue Mar 20 04:45:04 2018 +0000

    Refactor tempurl functional test's try-finally

    This is a following patch of [1]. In [1] comment, tim suggested
    implementation for same behavior with less code.
    This change implemented the suggestion. See [1] for more details.

    [1]: https://review.openstack.org/#/c/547306/

    Change-Id: Ifd8a0534fbdf41837977028c0c6ef99f1f6ac0f0

commit 2c4c23defc615e0f672244457c4d15cd718971dd
Author: Clay Gerrard <email address hidden>
Date: Fri Mar 16 18:44:14 2018 -0700

    Encapsulate some general utility in utils

    ... but either way works.

    Change-Id: I56b7689270e528a1d2099ff96030ce660e588c94
    Related-Change-Id: Ic108f5c38f700ac4c7bcf8315bf4c55306951361

commit bb3553d08428c2d2ea0a7d4029a3fecb97678446
Author: Clay Gerrard <email address hidden>
Date: Fri Mar 16 18:17:59 2018 -0700

    Use state when you have it

    ... but either way works.

    Change-Id: Ib66ee035229d0718b68450587550176c91ce9ca6
    Related-Change-Id: Ic108f5c38f700ac4c7bcf8315bf4c55306951361

commit de38b727b475876b4a3e4dcf7dca21de...

tags: added: in-feature-s3api
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to swift (feature/deep)

Fix proposed to branch: feature/deep
Review: https://review.openstack.org/559175

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/swift 2.18.0

This issue was fixed in the openstack/swift 2.18.0 release.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.