Hi Loic Commenting out the sanity check did the trick. The code is working as I'd expected.
Thanks On Fri, Apr 28, 2017 at 1:48 AM, Loic Dachary <[email protected]> wrote: > > > On 04/27/2017 11:43 PM, Oleg Kolosov wrote: > > Hi Loic, > > Of course. > > I'm implementing a version of Pyramid Code. In Pyramid you remove one of > the global parities of Reed-Solomon and add one local parity for each local > group. In my version, I'd like to add local parity to the global parity > (meaning that for the case the global parity = 1, it would be replicated). > This way in case of a failure in the global parity, you can reconstruct it > using the replicated node instead of reconstructing it will all K nodes. > > > > This is my profile: > > ceph osd erasure-code-profile set myprofile \ > > plugin=lrc \ > > mapping=DD_DD___ \ > > layers='[ > > [ "DD_DD_c_", "" ], > > [ "DDc_____", "" ], > > [ "___DDc__", "" ], > > [ "______Dc", "" ], > > ]' \ > > ruleset-steps='[ > > [ "chooseleaf", "osd", 8 ], > > ]' > > You could test and see if commenting out the sanity check at > > https://github.com/ceph/ceph/blob/master/src/erasure-code/ > jerasure/ErasureCodeJerasure.cc#L89 > > does the trick. I don't remember enough about this border case to be sure > it won't work. You can also give it a try with > > https://github.com/ceph/ceph/blob/master/src/test/erasure- > code/ceph_erasure_code_benchmark.cc > > Cheers > > > Regards, > > Oleg > > > > On Fri, Apr 28, 2017 at 12:33 AM, Loic Dachary <[email protected] > <mailto:[email protected]>> wrote: > > > > Hi Oleg, > > > > On 04/27/2017 11:23 PM, Oleg Kolosov wrote: > > > Hi, > > > I'm working on various implementation of LRC codes for study > purposes. The layers implementation in the LRC module is very convenient > for this, but I've came upon a problem in one of the cases. > > > I'm interested in having k=1, m=1 in one of the layers. However > this gives out an error: > > > Error EINVAL: k=1 must be >= 2 > > > > > > I should point out that my erasure code has additional layers > which are fine, only this one has k=1, m=1. > > > > > > What was the reason for this issue? > > > Can replication be implemented in one of LRC's layers? > > > > Could you provide the code for me to reproduce this problem ? Or a > description of the layers ? I implemented this restriction because it made > the code simpler. And also because I could not think of a valid use case. > > > > Cheers > > > > -- > > Loïc Dachary, Artisan Logiciel Libre > > > > > > -- > Loïc Dachary, Artisan Logiciel Libre >
_______________________________________________ ceph-users mailing list [email protected] http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
