Skip to content

erasure-code: chunk remapping#2213

Merged
3 commits merged intomasterfrom
unknown repository
Aug 15, 2014
Merged

erasure-code: chunk remapping#2213
3 commits merged intomasterfrom
unknown repository

Conversation

@ghost
Copy link
Copy Markdown

@ghost ghost commented Aug 6, 2014

Interpret the mapping parameter and remap the chunks accordingly. For instance mapping=DD means the data chunks are stored in the last two chunks and mapping=DD is the default where the data chunks are stored in the first two chunks for K=2, M=1

@ghost ghost changed the title erasure-code: chunk remapping DNM: erasure-code: chunk remapping Aug 6, 2014
@ghost
Copy link
Copy Markdown
Author

ghost commented Aug 6, 2014

@athanatos would you have time to look at https://github.com/dachary/ceph/commit/27b51dfaee0f2c4caa448cbf1131e10edf522a77 ? And the rest of the commits also but they are straightforward ;)

@ghost ghost changed the title DNM: erasure-code: chunk remapping erasure-code: chunk remapping Aug 11, 2014
@ghost
Copy link
Copy Markdown
Author

ghost commented Aug 11, 2014

@athanatos https://github.com/dachary/ceph/commit/5f30d06f7edf23d4eb41ee154bf63e02400be7bc is ready for your review when you have time ;-)

@ghost
Copy link
Copy Markdown
Author

ghost commented Aug 11, 2014

rebased & repushed

@athanatos
Copy link
Copy Markdown
Contributor

Looks good to me once we've got a teuthology test which has been run.
Reviewed-by: Samuel Just sam.just@inktank.com

Loic Dachary added 3 commits August 15, 2014 01:07
Add support for erasure code plugins that do not sequentially map the
chunks encoded to the corresponding index. This is mostly transparent to
the caller, except when it comes to retrieving the data chunks when
reading. For this purpose there needs to be a remapping function so the
caller has a way to figure out which chunks actually contain the data
and reorder them.

Signed-off-by: Loic Dachary <loic@dachary.org>
Each D letter is a data chunk. For instance:

    _DDD_DDD

is going to parse into:

   [ 1, 2, 3, 5, 6, 7 ]

the 0 and 4 positions are not used by chunks and do not show in the
mapping. Implement ErasureCode::parse to support a reasonable default
for the mapping parameter.

Signed-off-by: Loic Dachary <loic@dachary.org>
If the remap vector is not empty, use it to figure out the sequence of
data chunks.

http://tracker.ceph.com/issues/9025 Fixes: #9025

Signed-off-by: Loic Dachary <loic@dachary.org>
ghost pushed a commit that referenced this pull request Aug 15, 2014
erasure-code: chunk remapping

Reviewed-by: Samuel Just <sam.just@inktank.com>
@ghost ghost merged commit cb4c564 into ceph:master Aug 15, 2014
This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant