Add support for policy types, 'erasure_coding' policy

Bug #1443795 reported by OpenStack Infra
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
openstack-api-site
Invalid
Medium
Unassigned
openstack-manuals
Invalid
Medium
Unassigned

Bug Description

https://review.openstack.org/169985
commit ed5406628884432e23bbabb02d2855d4b51a332d
Author: Tushar Gohad <email address hidden>
Date: Mon Jun 30 11:14:28 2014 -0700

    Add support for policy types, 'erasure_coding' policy

    This patch extends the StoragePolicy class for non-replication storage
    policies, the first one being "erasure coding".

    Changes:

     - Add 'policy_type' support to BaseStoragePolicy class
     - Disallow direct instantiation of BaseStoragePolicy class

     - Subclass BaseStoragePolicy

       - "StoragePolicy":
         . Replication policy, default
         . policy_type = 'replication'

       - "ECStoragePolicy":
         . Erasure Coding policy
         . policy_type = 'erasure_coding'
         . Private member variables
           ec_type (EC backend),
           ec_num_data_fragments (number of fragments original
             data split into after erasure coding operation),
           ec_num_parity_fragments (number of parity fragments
           generated during erasure coding)
         . Private methods
           EC specific attributes and ring validator methods.

     - Swift will use PyECLib, a Python Erasure Coding library, for
       erasure coding operations. PyECLib is already an approved
       OpenStack core requirement.
       (https://bitbucket.org/kmgreen2/pyeclib/)

     - Add test cases for
       - 'policy_type' StoragePolicy member
       - policy_type == 'erasure_coding'

    DocImpact

    Co-Authored-By: Alistair Coles <email address hidden>
    Co-Authored-By: Thiago da Silva <email address hidden>
    Co-Authored-By: Clay Gerrard <email address hidden>
    Co-Authored-By: Paul Luse <email address hidden>
    Co-Authored-By: Samuel Merritt <email address hidden>
    Co-Authored-By: Christian Schwede <email address hidden>
    Co-Authored-By: Yuan Zhou <email address hidden>
    Change-Id: Ie0e09796e3ec45d3e656fb7540d0e5a5709b8386
    Implements: blueprint ec-proxy-work

Tags: swift
Tom Fifield (fifieldt)
Changed in openstack-manuals:
importance: Undecided → Medium
status: New → Confirmed
Changed in openstack-api-site:
status: New → Confirmed
importance: Undecided → Medium
milestone: none → kilo
Changed in openstack-manuals:
milestone: none → kilo
Tom Fifield (fifieldt)
Changed in openstack-api-site:
milestone: kilo → liberty
Changed in openstack-manuals:
milestone: kilo → liberty
Revision history for this message
Atsushi SAKAI (sakaia) wrote :

From seeing swift document, storage_policy is defined in configuration file.
Of course, storage-policy "name" can be selected, but erasure-code itself cannot be selected.
So I think it is relate to manual, no relation to api-site.
Is my understanding is incorrect?

Configuring Policies
https://github.com/openstack/swift/blob/2.3.0/doc/source/overview_policies.rst

Revision history for this message
Alexandra Settle (alexandra-settle) wrote :

These are essentially the same bug: https://bugs.launchpad.net/openstack-manuals/+bug/1357139

One or either of these can be closed and since nobody is assigned to this bug, I will close this one and move Atsushi Sakai's comment over.

Thanks.

Changed in openstack-manuals:
status: Confirmed → Invalid
Changed in openstack-api-site:
status: Confirmed → Invalid
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.