You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cloudstack.apache.org by Marcus Sorensen <sh...@gmail.com> on 2012/07/31 20:14:51 UTC

re-implement clvm

http://bugs.cloudstack.org/browse/CS-14521

I understand the licensing issues, but this is going to break the next
release for us (and has already broken our test environment). I'd like
to offer a bounty of $800 for a patch that re-implements CLVM. We'll
pay $200 for a working patch that applies to the current mainline, and
the rest when its accepted and committed. For reference, here's the
commit that broke it: bafc3f2a5af771d543f081164d7af4b323012f24

Thanks

Re: re-implement clvm

Posted by Marcus Sorensen <sh...@gmail.com>.
That's my problem too. I'm about 75% of the way through hacking my own
patch together, and it looks at least superficially like most of the
RBD code was based on the CLVM stuff (extra if statements added and
CLVM replaced with RBD). I'm comfortable with reusing this in my
environment, but getting it back upstream is what I'm interested in.

On Tue, Jul 31, 2012 at 1:56 PM, Wido den Hollander <wi...@widodh.nl> wrote:
>
>
> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
>>
>> I'd be happy to try more if I had access to any contact info.  As it
>> is, things in the surrounding code have changed enough that a bit of
>> re-factoring would need to be done even if there were permission.
>>
>> My hunch is that unless he's switched roles, once the new version is
>> released he may come out of the woodwork wondering why that thing he
>> has a need for and developed is gone.
>
>
> After writing the last RBD implementation this CLVM seems trivial.
>
> A lot of code is still in there and looking at the commit where it got
> removed it wont be that much work.
>
> The problem (and I'm not a licensing expert) is that if I would implement
> CLVM again it would look a lot like the original code, do we have to refer
> to the old author for that?
>
> I'm assuming here that we won't be able to contact the original author, but
> we want to keep the CLVM functionality for 4.0.
>
> Wido
>
>
>>
>> On Tue, Jul 31, 2012 at 1:15 PM, David Nalley <da...@gnsa.us> wrote:
>>>
>>> On Tue, Jul 31, 2012 at 3:05 PM, Simon Weller <sw...@ena.com> wrote:
>>>>
>>>> I recall David Nalley collecting a Cloudstack/cloud.com ICLA from rommer
>>>> for this contribution in Q4 of last year.
>>>>
>>>>
>>>> David,
>>>>
>>>>
>>>> Does the ICLA contain any contact information not available on the old
>>>> cloudstack-devel list?
>>>>
>>>>
>>>> - Si
>>>>
>>>
>>> Simon,
>>>
>>> It does. I passed on the publicly available information about Rommer
>>> (e.g. the email address he submitted patches from)
>>> To briefly outline the steps we went through:
>>>
>>> We had multiple people try and contact Rommer via email.
>>> We talked via email with one of his coworkers (successfully).
>>> Alena, whose native tongue is Russian, tried reaching out, as well as
>>> searching for him on the Russian analogue of Facebook.
>>> Citrix had some European counsel try and make contact.
>>>
>>> None of these attempts have resulted in us acquiring the form giving
>>> us permission to relicense his contribution from GPLv3 to ASLv2 - and
>>> thus we ended up needing to pull it. I'd love to get this back in
>>> though, if people want to try more.
>>>
>>> --David

RE: re-implement clvm

Posted by Edison Su <Ed...@citrix.com>.
Oh, the premium secondary storage stuff is fixed a few minutes ago... Need to build vmware plugin before creating systemvm.zip.

> -----Original Message-----
> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> Sent: Tuesday, August 07, 2012 9:16 PM
> To: cloudstack-dev@incubator.apache.org
> Subject: Re: re-implement clvm
> 
> I'm at home, don't have access to the copy I cloned yesterday, but
> wouldn't this have been in there being that the date is May 24? Or was
> it committed in a branch that was merged (sorry, not super versed in
> git). At any rate, I'll give it a shot tomorrow, just wanted to look
> at the change.
> 
> This doesn't fix the premium secondary storage issue, correct?
> 
> Thanks for the help!
> 
> On Tue, Aug 7, 2012 at 5:47 PM, Edison Su <Ed...@citrix.com> wrote:
> > It's been fixed commit: 0ec679c359bfaf8ec43a80fcbc5c617f6c74cab9
> > Can you get the latest code and rebuild the system iso, copy iso to
> hypervisor host, then stop/start ssvm.
> >
> >> -----Original Message-----
> >> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> >> Sent: Tuesday, August 07, 2012 3:57 PM
> >> To: cloudstack-dev@incubator.apache.org
> >> Subject: Re: re-implement clvm
> >>
> >> hacked a fix by editing /var/cache/cloud/cmdline in the ssvm to use
> >> NfsSecondaryStorageResource. Now I hit
> >> "http://bugs.cloudstack.org/browse/CS-15143", x != java.lang.String,
> >> not sure if this is a regression or due to my hack.
> >>
> >> On Tue, Aug 7, 2012 at 4:36 PM, Marcus Sorensen
> <sh...@gmail.com>
> >> wrote:
> >> > Edison,
> >> >   I'm having trouble testing my patch against  incubator-
> cloudstack.
> >> > Every indication seems to be that it's working, but the secondary
> >> > storage VM seems to be messed up. I found this:
> >> >
> >> > http://www.mail-archive.com/cloudstack-
> >> dev@incubator.apache.org/msg02431.html
> >> >
> >> > Which you commented on, I just want to ensure that the issues
> aren't
> >> > due to my patch. Basically the ssvm doesn't launch its agent. I
> would
> >> > like to launch an instance and test my patch further, but am
> unable
> >> > to.
> >> >
> >> > 22:23:34,035 ERROR AgentShell:606 - Unable to start agent:
> Resource
> >> > class not found:
> >> > com.cloud.storage.resource.PremiumSecondaryStorageResource due to:
> >> > java.lang.ClassNotFoundException:
> >> > com.cloud.storage.resource.PremiumSecondaryStorageResource
> >> >
> >> > On Mon, Aug 6, 2012 at 2:51 PM, Marcus Sorensen
> <sh...@gmail.com>
> >> wrote:
> >> >> Ok, I'll send on the core java patch portion. I've reviewed the
> >> >> managesnapshot.sh changes. I had someone begin to create a clean
> >> room
> >> >> version implementing the same functionality, and in the process
> >> found
> >> >> that we can really only change it superficially as well. The
> clean
> >> >> room version changed the bulk of the code into a single 'lvcreate
> >> >> --snapshot' command, however we found that there's an issue with
> >> >> --snapshot and CLVM exclusive locking, which led the developer to
> >> >> implement 'lvcreate --snapshot' using equivalent dmsetup commands.
> >> At
> >> >> that point we had something that looked the same as the original
> >> >> patch, with only minor changes in syntax and variable names.
> >> >>
> >> >> On Thu, Aug 2, 2012 at 5:11 PM, Edison Su <Ed...@citrix.com>
> >> wrote:
> >> >>>
> >> >>>
> >> >>>> -----Original Message-----
> >> >>>> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> >> >>>> Sent: Thursday, August 02, 2012 3:09 PM
> >> >>>> To: cloudstack-dev@incubator.apache.org
> >> >>>> Subject: RE: re-implement clvm
> >> >>>>
> >> >>>> Oh, I understand, but most of the relevant code is implemented
> in
> >> >>>> 'if/else
> >> >>>> if/else' blocks, such that its simply a matter of copying the
> >> existing
> >> >>>> RBD
> >> >>>> code into another 'else if' block and changing a few words
> (which
> >> in
> >> >>>> turn
> >> >>>> the RBD stuff did previously with the pulled, pre apache CLVM
> code,
> >> or
> >> >>>> so
> >> >>>> it looks).  In my opinion there's really no other way to do it
> >> without
> >> >>>> restructuring to avoid the cascading ifs.
> >> >>>
> >> >>>
> >> >>> That's true, in current code, that's the only way.
> >> >>>
> >> >>>>
> >> >>>> It sounds like aside from the snapshot code the removal was
> >> probably
> >> >>>> unnecessary, having been reworked by a third party from
> Rommer's
> >> >>>> submissions prior to being merged. I know little about the
> >> application
> >> >>>> of
> >> >>>> licensing details though.
> >> >>>
> >> >>> Please send the core java code to reviewboard, we can apply it.
> >> This part of java code is general enough, meaning everybody wants to
> >> implement CLVM needs to write the same code.
> >> >>>
> >> >>>>
> >> >>>> What I do know however is that its extremely painful to rip
> >> something
> >> >>>> major
> >> >>>> like this out on existing users, rendering their whole
> >> infrastructure
> >> >>>> obsolete with no upgrade path. Especially given the relative
> >> trivial
> >> >>>> nature
> >> >>>> of the patch, you'd think that one of the project owners would
> >> take an
> >> >>>> hour
> >> >>>> or two and rework it. Of course it makes sense that the people
> who
> >> use
> >> >>>> and
> >> >>>> care about a component should help develop it in an open source
> >> world,
> >> >>>> but
> >> >>>> the cloud stack consumers don't always follow development.
> Maybe
> >> we are
> >> >>>> the
> >> >>>> only ones who use it, but I think if the next major release
> pulls
> >> CLVM
> >> >>>> support there will be an uproar. What if it had been the code
> >> >>>> implementing
> >> >>>> NFS support?
> >> >>>
> >> >>> I removed it in May 15, due to the concern that it conflicts
> with
> >> Apache license. While at that time, I didn't send an email to
> dev/user
> >> list about this decision. That's my mistake. I'll make sure this
> kind
> >> of thing will not happen again.
> >> >>>
> >> >>>>
> >> >>>> Sorry for the rant. Hopefully we can get it resolved.
> >> >>>
> >> >>> Sure, we can get it resolved.
> >> >>>
> >> >>>> On Aug 2, 2012 2:21 PM, "Kevin Kluge" <Ke...@citrix.com>
> >> wrote:
> >> >>>>
> >> >>>> > Marcus, you should write the new code in compliance with the
> >> Apache
> >> >>>> CLA,
> >> >>>> > which will forbid directly copying code from some other
> source.
> >> >>>> Having
> >> >>>> > said that, if the problem is constrained enough by existing
> >> >>>> CloudStack code
> >> >>>> > and/or the solution is so obvious that your code looks like
> the
> >> >>>> original
> >> >>>> > code, that's just what it is.
> >> >>>> >
> >> >>>> > I'm not a lawyer so please don't take this as legal advice
> from
> >> >>>> Citrix or
> >> >>>> > me.
> >> >>>> >
> >> >>>> > -kevin
> >> >>>> >
> >> >>>> >
> >> >>>> > > -----Original Message-----
> >> >>>> > > From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> >> >>>> > > Sent: Tuesday, July 31, 2012 3:09 PM
> >> >>>> > > To: cloudstack-dev@incubator.apache.org
> >> >>>> > > Subject: Re: re-implement clvm
> >> >>>> > >
> >> >>>> > > Here's the refactored patch. The CLVM stuff is basically a
> >> copy of
> >> >>>> the
> >> >>>> > RBD
> >> >>>> > > additions; and the patch also includes the original changes
> to
> >> >>>> > > managesnapshot.sh, which is unmodified.
> >> >>>> > >
> >> >>>> > > I'm personally more concerned about the core functionality
> at
> >> this
> >> >>>> > point, I
> >> >>>> > > can go through and re-implement the snapshot stuff, but if
> the
> >> core
> >> >>>> stuff
> >> >>>> > > can't be pulled in due to licensing then it's not worth the
> >> trouble
> >> >>>> to
> >> >>>> > redo the
> >> >>>> > > snapshotting. If there's anyone in a position of authority
> to
> >> >>>> address the
> >> >>>> > > licensing stuff any input would be appreciated.
> >> >>>> > >
> >> >>>> > > Thanks,
> >> >>>> > > Marcus
> >> >>>> > >
> >> >>>> > > On Tue, Jul 31, 2012 at 3:21 PM, Edison Su
> >> <Ed...@citrix.com>
> >> >>>> wrote:
> >> >>>> > > > The most complicated part in rommer's patch is LVM
> snapshot.
> >> If
> >> >>>> > snapshot
> >> >>>> > > support is not a must, then adding CLVM is simple as RBD.
> >> >>>> > > >
> >> >>>> > > >> -----Original Message-----
> >> >>>> > > >> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> >> >>>> > > >> Sent: Tuesday, July 31, 2012 1:33 PM
> >> >>>> > > >> To: cloudstack-dev@incubator.apache.org
> >> >>>> > > >> Subject: Re: re-implement clvm
> >> >>>> > > >>
> >> >>>> > > >> Ok, so I've created a refactored patch that seems to
> work.
> >> It
> >> >>>> was
> >> >>>> > > >> pretty much entirely the RBD additions that were
> blocking
> >> the
> >> >>>> > > >> original from being rolled back in. If a developer would
> be
> >> >>>> willing
> >> >>>> > > >> to take on the whole license issue and see this
> >> functionality
> >> >>>> put
> >> >>>> > > >> back in I'd still be willing to pay half of the bounty
> >> ($400).
> >> >>>> As
> >> >>>> > > >> the code looks, the changes are fairly minor, and I'm
> not
> >> sure
> >> >>>> how
> >> >>>> > > >> novel you'd have to get avoid the license issues (or
> that
> >> >>>> there's any
> >> >>>> > > >> easy alternative way to change the code sufficiently)
> >> >>>> > > >>
> >> >>>> > > >> On Tue, Jul 31, 2012 at 2:12 PM, David Nalley
> >> <da...@gnsa.us>
> >> >>>> wrote:
> >> >>>> > > >> > On Tue, Jul 31, 2012 at 3:56 PM, Wido den Hollander
> >> >>>> > > >> > <wi...@widodh.nl>
> >> >>>> > > >> wrote:
> >> >>>> > > >> >>
> >> >>>> > > >> >>
> >> >>>> > > >> >> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
> >> >>>> > > >> >>>
> >> >>>> > > >> >>> I'd be happy to try more if I had access to any
> contact
> >> info.
> >> >>>> As
> >> >>>> > > >> it
> >> >>>> > > >> >>> is, things in the surrounding code have changed
> enough
> >> that
> >> >>>> a bit
> >> >>>> > > >> of
> >> >>>> > > >> >>> re-factoring would need to be done even if there
> were
> >> >>>> permission.
> >> >>>> > > >> >>>
> >> >>>> > > >> >>> My hunch is that unless he's switched roles, once
> the
> >> new
> >> >>>> version
> >> >>>> > > >> is
> >> >>>> > > >> >>> released he may come out of the woodwork wondering
> why
> >> that
> >> >>>> > > thing
> >> >>>> > > >> he
> >> >>>> > > >> >>> has a need for and developed is gone.
> >> >>>> > > >> >>
> >> >>>> > > >> >>
> >> >>>> > > >> >> After writing the last RBD implementation this CLVM
> >> seems
> >> >>>> trivial.
> >> >>>> > > >> >>
> >> >>>> > > >> >> A lot of code is still in there and looking at the
> >> commit
> >> >>>> where it
> >> >>>> > > >> got
> >> >>>> > > >> >> removed it wont be that much work.
> >> >>>> > > >> >>
> >> >>>> > > >> >> The problem (and I'm not a licensing expert) is that
> if
> >> I
> >> >>>> would
> >> >>>> > > >> implement
> >> >>>> > > >> >> CLVM again it would look a lot like the original code,
> >> do we
> >> >>>> have
> >> >>>> > > >> >> to
> >> >>>> > > >> refer
> >> >>>> > > >> >> to the old author for that?
> >> >>>> > > >> >>
> >> >>>> > > >> >> I'm assuming here that we won't be able to contact
> the
> >> >>>> original
> >> >>>> > > >> author, but
> >> >>>> > > >> >> we want to keep the CLVM functionality for 4.0.
> >> >>>> > > >> >>
> >> >>>> > > >> >> Wido
> >> >>>> > > >> >
> >> >>>> > > >> >
> >> >>>> > > >> > Actually - you should compare the original patches,
> with
> >> what
> >> >>>> was
> >> >>>> > > >> reverted. :
> >> >>>> > > >> > http://bugs.cloudstack.org/browse/CS-10317
> >> >>>> > > >> >
> >> >>>> > > >> > There was already something of a rewrite when Edison
> >> changed
> >> >>>> how
> >> >>>> > > >> > some of the storage was handled (which is the
> iteration
> >> that
> >> >>>> was
> >> >>>> > > pulled).
> >> >>>> > > >> >
> >> >>>> > > >> > IANAL either, so I won't bother to even try and answer
> >> that
> >> >>>> > question.
> >> >>>> > > >> >
> >> >>>> > > >> > --David
> >> >>>> >

Re: re-implement clvm

Posted by Marcus Sorensen <sh...@gmail.com>.
I'm at home, don't have access to the copy I cloned yesterday, but
wouldn't this have been in there being that the date is May 24? Or was
it committed in a branch that was merged (sorry, not super versed in
git). At any rate, I'll give it a shot tomorrow, just wanted to look
at the change.

This doesn't fix the premium secondary storage issue, correct?

Thanks for the help!

On Tue, Aug 7, 2012 at 5:47 PM, Edison Su <Ed...@citrix.com> wrote:
> It's been fixed commit: 0ec679c359bfaf8ec43a80fcbc5c617f6c74cab9
> Can you get the latest code and rebuild the system iso, copy iso to hypervisor host, then stop/start ssvm.
>
>> -----Original Message-----
>> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
>> Sent: Tuesday, August 07, 2012 3:57 PM
>> To: cloudstack-dev@incubator.apache.org
>> Subject: Re: re-implement clvm
>>
>> hacked a fix by editing /var/cache/cloud/cmdline in the ssvm to use
>> NfsSecondaryStorageResource. Now I hit
>> "http://bugs.cloudstack.org/browse/CS-15143", x != java.lang.String,
>> not sure if this is a regression or due to my hack.
>>
>> On Tue, Aug 7, 2012 at 4:36 PM, Marcus Sorensen <sh...@gmail.com>
>> wrote:
>> > Edison,
>> >   I'm having trouble testing my patch against  incubator-cloudstack.
>> > Every indication seems to be that it's working, but the secondary
>> > storage VM seems to be messed up. I found this:
>> >
>> > http://www.mail-archive.com/cloudstack-
>> dev@incubator.apache.org/msg02431.html
>> >
>> > Which you commented on, I just want to ensure that the issues aren't
>> > due to my patch. Basically the ssvm doesn't launch its agent. I would
>> > like to launch an instance and test my patch further, but am unable
>> > to.
>> >
>> > 22:23:34,035 ERROR AgentShell:606 - Unable to start agent: Resource
>> > class not found:
>> > com.cloud.storage.resource.PremiumSecondaryStorageResource due to:
>> > java.lang.ClassNotFoundException:
>> > com.cloud.storage.resource.PremiumSecondaryStorageResource
>> >
>> > On Mon, Aug 6, 2012 at 2:51 PM, Marcus Sorensen <sh...@gmail.com>
>> wrote:
>> >> Ok, I'll send on the core java patch portion. I've reviewed the
>> >> managesnapshot.sh changes. I had someone begin to create a clean
>> room
>> >> version implementing the same functionality, and in the process
>> found
>> >> that we can really only change it superficially as well. The clean
>> >> room version changed the bulk of the code into a single 'lvcreate
>> >> --snapshot' command, however we found that there's an issue with
>> >> --snapshot and CLVM exclusive locking, which led the developer to
>> >> implement 'lvcreate --snapshot' using equivalent dmsetup commands.
>> At
>> >> that point we had something that looked the same as the original
>> >> patch, with only minor changes in syntax and variable names.
>> >>
>> >> On Thu, Aug 2, 2012 at 5:11 PM, Edison Su <Ed...@citrix.com>
>> wrote:
>> >>>
>> >>>
>> >>>> -----Original Message-----
>> >>>> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
>> >>>> Sent: Thursday, August 02, 2012 3:09 PM
>> >>>> To: cloudstack-dev@incubator.apache.org
>> >>>> Subject: RE: re-implement clvm
>> >>>>
>> >>>> Oh, I understand, but most of the relevant code is implemented in
>> >>>> 'if/else
>> >>>> if/else' blocks, such that its simply a matter of copying the
>> existing
>> >>>> RBD
>> >>>> code into another 'else if' block and changing a few words (which
>> in
>> >>>> turn
>> >>>> the RBD stuff did previously with the pulled, pre apache CLVM code,
>> or
>> >>>> so
>> >>>> it looks).  In my opinion there's really no other way to do it
>> without
>> >>>> restructuring to avoid the cascading ifs.
>> >>>
>> >>>
>> >>> That's true, in current code, that's the only way.
>> >>>
>> >>>>
>> >>>> It sounds like aside from the snapshot code the removal was
>> probably
>> >>>> unnecessary, having been reworked by a third party from Rommer's
>> >>>> submissions prior to being merged. I know little about the
>> application
>> >>>> of
>> >>>> licensing details though.
>> >>>
>> >>> Please send the core java code to reviewboard, we can apply it.
>> This part of java code is general enough, meaning everybody wants to
>> implement CLVM needs to write the same code.
>> >>>
>> >>>>
>> >>>> What I do know however is that its extremely painful to rip
>> something
>> >>>> major
>> >>>> like this out on existing users, rendering their whole
>> infrastructure
>> >>>> obsolete with no upgrade path. Especially given the relative
>> trivial
>> >>>> nature
>> >>>> of the patch, you'd think that one of the project owners would
>> take an
>> >>>> hour
>> >>>> or two and rework it. Of course it makes sense that the people who
>> use
>> >>>> and
>> >>>> care about a component should help develop it in an open source
>> world,
>> >>>> but
>> >>>> the cloud stack consumers don't always follow development. Maybe
>> we are
>> >>>> the
>> >>>> only ones who use it, but I think if the next major release pulls
>> CLVM
>> >>>> support there will be an uproar. What if it had been the code
>> >>>> implementing
>> >>>> NFS support?
>> >>>
>> >>> I removed it in May 15, due to the concern that it conflicts with
>> Apache license. While at that time, I didn't send an email to dev/user
>> list about this decision. That's my mistake. I'll make sure this kind
>> of thing will not happen again.
>> >>>
>> >>>>
>> >>>> Sorry for the rant. Hopefully we can get it resolved.
>> >>>
>> >>> Sure, we can get it resolved.
>> >>>
>> >>>> On Aug 2, 2012 2:21 PM, "Kevin Kluge" <Ke...@citrix.com>
>> wrote:
>> >>>>
>> >>>> > Marcus, you should write the new code in compliance with the
>> Apache
>> >>>> CLA,
>> >>>> > which will forbid directly copying code from some other source.
>> >>>> Having
>> >>>> > said that, if the problem is constrained enough by existing
>> >>>> CloudStack code
>> >>>> > and/or the solution is so obvious that your code looks like the
>> >>>> original
>> >>>> > code, that's just what it is.
>> >>>> >
>> >>>> > I'm not a lawyer so please don't take this as legal advice from
>> >>>> Citrix or
>> >>>> > me.
>> >>>> >
>> >>>> > -kevin
>> >>>> >
>> >>>> >
>> >>>> > > -----Original Message-----
>> >>>> > > From: Marcus Sorensen [mailto:shadowsor@gmail.com]
>> >>>> > > Sent: Tuesday, July 31, 2012 3:09 PM
>> >>>> > > To: cloudstack-dev@incubator.apache.org
>> >>>> > > Subject: Re: re-implement clvm
>> >>>> > >
>> >>>> > > Here's the refactored patch. The CLVM stuff is basically a
>> copy of
>> >>>> the
>> >>>> > RBD
>> >>>> > > additions; and the patch also includes the original changes to
>> >>>> > > managesnapshot.sh, which is unmodified.
>> >>>> > >
>> >>>> > > I'm personally more concerned about the core functionality at
>> this
>> >>>> > point, I
>> >>>> > > can go through and re-implement the snapshot stuff, but if the
>> core
>> >>>> stuff
>> >>>> > > can't be pulled in due to licensing then it's not worth the
>> trouble
>> >>>> to
>> >>>> > redo the
>> >>>> > > snapshotting. If there's anyone in a position of authority to
>> >>>> address the
>> >>>> > > licensing stuff any input would be appreciated.
>> >>>> > >
>> >>>> > > Thanks,
>> >>>> > > Marcus
>> >>>> > >
>> >>>> > > On Tue, Jul 31, 2012 at 3:21 PM, Edison Su
>> <Ed...@citrix.com>
>> >>>> wrote:
>> >>>> > > > The most complicated part in rommer's patch is LVM snapshot.
>> If
>> >>>> > snapshot
>> >>>> > > support is not a must, then adding CLVM is simple as RBD.
>> >>>> > > >
>> >>>> > > >> -----Original Message-----
>> >>>> > > >> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
>> >>>> > > >> Sent: Tuesday, July 31, 2012 1:33 PM
>> >>>> > > >> To: cloudstack-dev@incubator.apache.org
>> >>>> > > >> Subject: Re: re-implement clvm
>> >>>> > > >>
>> >>>> > > >> Ok, so I've created a refactored patch that seems to work.
>> It
>> >>>> was
>> >>>> > > >> pretty much entirely the RBD additions that were blocking
>> the
>> >>>> > > >> original from being rolled back in. If a developer would be
>> >>>> willing
>> >>>> > > >> to take on the whole license issue and see this
>> functionality
>> >>>> put
>> >>>> > > >> back in I'd still be willing to pay half of the bounty
>> ($400).
>> >>>> As
>> >>>> > > >> the code looks, the changes are fairly minor, and I'm not
>> sure
>> >>>> how
>> >>>> > > >> novel you'd have to get avoid the license issues (or that
>> >>>> there's any
>> >>>> > > >> easy alternative way to change the code sufficiently)
>> >>>> > > >>
>> >>>> > > >> On Tue, Jul 31, 2012 at 2:12 PM, David Nalley
>> <da...@gnsa.us>
>> >>>> wrote:
>> >>>> > > >> > On Tue, Jul 31, 2012 at 3:56 PM, Wido den Hollander
>> >>>> > > >> > <wi...@widodh.nl>
>> >>>> > > >> wrote:
>> >>>> > > >> >>
>> >>>> > > >> >>
>> >>>> > > >> >> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
>> >>>> > > >> >>>
>> >>>> > > >> >>> I'd be happy to try more if I had access to any contact
>> info.
>> >>>> As
>> >>>> > > >> it
>> >>>> > > >> >>> is, things in the surrounding code have changed enough
>> that
>> >>>> a bit
>> >>>> > > >> of
>> >>>> > > >> >>> re-factoring would need to be done even if there were
>> >>>> permission.
>> >>>> > > >> >>>
>> >>>> > > >> >>> My hunch is that unless he's switched roles, once the
>> new
>> >>>> version
>> >>>> > > >> is
>> >>>> > > >> >>> released he may come out of the woodwork wondering why
>> that
>> >>>> > > thing
>> >>>> > > >> he
>> >>>> > > >> >>> has a need for and developed is gone.
>> >>>> > > >> >>
>> >>>> > > >> >>
>> >>>> > > >> >> After writing the last RBD implementation this CLVM
>> seems
>> >>>> trivial.
>> >>>> > > >> >>
>> >>>> > > >> >> A lot of code is still in there and looking at the
>> commit
>> >>>> where it
>> >>>> > > >> got
>> >>>> > > >> >> removed it wont be that much work.
>> >>>> > > >> >>
>> >>>> > > >> >> The problem (and I'm not a licensing expert) is that if
>> I
>> >>>> would
>> >>>> > > >> implement
>> >>>> > > >> >> CLVM again it would look a lot like the original code,
>> do we
>> >>>> have
>> >>>> > > >> >> to
>> >>>> > > >> refer
>> >>>> > > >> >> to the old author for that?
>> >>>> > > >> >>
>> >>>> > > >> >> I'm assuming here that we won't be able to contact the
>> >>>> original
>> >>>> > > >> author, but
>> >>>> > > >> >> we want to keep the CLVM functionality for 4.0.
>> >>>> > > >> >>
>> >>>> > > >> >> Wido
>> >>>> > > >> >
>> >>>> > > >> >
>> >>>> > > >> > Actually - you should compare the original patches, with
>> what
>> >>>> was
>> >>>> > > >> reverted. :
>> >>>> > > >> > http://bugs.cloudstack.org/browse/CS-10317
>> >>>> > > >> >
>> >>>> > > >> > There was already something of a rewrite when Edison
>> changed
>> >>>> how
>> >>>> > > >> > some of the storage was handled (which is the iteration
>> that
>> >>>> was
>> >>>> > > pulled).
>> >>>> > > >> >
>> >>>> > > >> > IANAL either, so I won't bother to even try and answer
>> that
>> >>>> > question.
>> >>>> > > >> >
>> >>>> > > >> > --David
>> >>>> >

RE: re-implement clvm

Posted by Edison Su <Ed...@citrix.com>.
It's been fixed commit: 0ec679c359bfaf8ec43a80fcbc5c617f6c74cab9
Can you get the latest code and rebuild the system iso, copy iso to hypervisor host, then stop/start ssvm.

> -----Original Message-----
> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> Sent: Tuesday, August 07, 2012 3:57 PM
> To: cloudstack-dev@incubator.apache.org
> Subject: Re: re-implement clvm
> 
> hacked a fix by editing /var/cache/cloud/cmdline in the ssvm to use
> NfsSecondaryStorageResource. Now I hit
> "http://bugs.cloudstack.org/browse/CS-15143", x != java.lang.String,
> not sure if this is a regression or due to my hack.
> 
> On Tue, Aug 7, 2012 at 4:36 PM, Marcus Sorensen <sh...@gmail.com>
> wrote:
> > Edison,
> >   I'm having trouble testing my patch against  incubator-cloudstack.
> > Every indication seems to be that it's working, but the secondary
> > storage VM seems to be messed up. I found this:
> >
> > http://www.mail-archive.com/cloudstack-
> dev@incubator.apache.org/msg02431.html
> >
> > Which you commented on, I just want to ensure that the issues aren't
> > due to my patch. Basically the ssvm doesn't launch its agent. I would
> > like to launch an instance and test my patch further, but am unable
> > to.
> >
> > 22:23:34,035 ERROR AgentShell:606 - Unable to start agent: Resource
> > class not found:
> > com.cloud.storage.resource.PremiumSecondaryStorageResource due to:
> > java.lang.ClassNotFoundException:
> > com.cloud.storage.resource.PremiumSecondaryStorageResource
> >
> > On Mon, Aug 6, 2012 at 2:51 PM, Marcus Sorensen <sh...@gmail.com>
> wrote:
> >> Ok, I'll send on the core java patch portion. I've reviewed the
> >> managesnapshot.sh changes. I had someone begin to create a clean
> room
> >> version implementing the same functionality, and in the process
> found
> >> that we can really only change it superficially as well. The clean
> >> room version changed the bulk of the code into a single 'lvcreate
> >> --snapshot' command, however we found that there's an issue with
> >> --snapshot and CLVM exclusive locking, which led the developer to
> >> implement 'lvcreate --snapshot' using equivalent dmsetup commands.
> At
> >> that point we had something that looked the same as the original
> >> patch, with only minor changes in syntax and variable names.
> >>
> >> On Thu, Aug 2, 2012 at 5:11 PM, Edison Su <Ed...@citrix.com>
> wrote:
> >>>
> >>>
> >>>> -----Original Message-----
> >>>> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> >>>> Sent: Thursday, August 02, 2012 3:09 PM
> >>>> To: cloudstack-dev@incubator.apache.org
> >>>> Subject: RE: re-implement clvm
> >>>>
> >>>> Oh, I understand, but most of the relevant code is implemented in
> >>>> 'if/else
> >>>> if/else' blocks, such that its simply a matter of copying the
> existing
> >>>> RBD
> >>>> code into another 'else if' block and changing a few words (which
> in
> >>>> turn
> >>>> the RBD stuff did previously with the pulled, pre apache CLVM code,
> or
> >>>> so
> >>>> it looks).  In my opinion there's really no other way to do it
> without
> >>>> restructuring to avoid the cascading ifs.
> >>>
> >>>
> >>> That's true, in current code, that's the only way.
> >>>
> >>>>
> >>>> It sounds like aside from the snapshot code the removal was
> probably
> >>>> unnecessary, having been reworked by a third party from Rommer's
> >>>> submissions prior to being merged. I know little about the
> application
> >>>> of
> >>>> licensing details though.
> >>>
> >>> Please send the core java code to reviewboard, we can apply it.
> This part of java code is general enough, meaning everybody wants to
> implement CLVM needs to write the same code.
> >>>
> >>>>
> >>>> What I do know however is that its extremely painful to rip
> something
> >>>> major
> >>>> like this out on existing users, rendering their whole
> infrastructure
> >>>> obsolete with no upgrade path. Especially given the relative
> trivial
> >>>> nature
> >>>> of the patch, you'd think that one of the project owners would
> take an
> >>>> hour
> >>>> or two and rework it. Of course it makes sense that the people who
> use
> >>>> and
> >>>> care about a component should help develop it in an open source
> world,
> >>>> but
> >>>> the cloud stack consumers don't always follow development. Maybe
> we are
> >>>> the
> >>>> only ones who use it, but I think if the next major release pulls
> CLVM
> >>>> support there will be an uproar. What if it had been the code
> >>>> implementing
> >>>> NFS support?
> >>>
> >>> I removed it in May 15, due to the concern that it conflicts with
> Apache license. While at that time, I didn't send an email to dev/user
> list about this decision. That's my mistake. I'll make sure this kind
> of thing will not happen again.
> >>>
> >>>>
> >>>> Sorry for the rant. Hopefully we can get it resolved.
> >>>
> >>> Sure, we can get it resolved.
> >>>
> >>>> On Aug 2, 2012 2:21 PM, "Kevin Kluge" <Ke...@citrix.com>
> wrote:
> >>>>
> >>>> > Marcus, you should write the new code in compliance with the
> Apache
> >>>> CLA,
> >>>> > which will forbid directly copying code from some other source.
> >>>> Having
> >>>> > said that, if the problem is constrained enough by existing
> >>>> CloudStack code
> >>>> > and/or the solution is so obvious that your code looks like the
> >>>> original
> >>>> > code, that's just what it is.
> >>>> >
> >>>> > I'm not a lawyer so please don't take this as legal advice from
> >>>> Citrix or
> >>>> > me.
> >>>> >
> >>>> > -kevin
> >>>> >
> >>>> >
> >>>> > > -----Original Message-----
> >>>> > > From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> >>>> > > Sent: Tuesday, July 31, 2012 3:09 PM
> >>>> > > To: cloudstack-dev@incubator.apache.org
> >>>> > > Subject: Re: re-implement clvm
> >>>> > >
> >>>> > > Here's the refactored patch. The CLVM stuff is basically a
> copy of
> >>>> the
> >>>> > RBD
> >>>> > > additions; and the patch also includes the original changes to
> >>>> > > managesnapshot.sh, which is unmodified.
> >>>> > >
> >>>> > > I'm personally more concerned about the core functionality at
> this
> >>>> > point, I
> >>>> > > can go through and re-implement the snapshot stuff, but if the
> core
> >>>> stuff
> >>>> > > can't be pulled in due to licensing then it's not worth the
> trouble
> >>>> to
> >>>> > redo the
> >>>> > > snapshotting. If there's anyone in a position of authority to
> >>>> address the
> >>>> > > licensing stuff any input would be appreciated.
> >>>> > >
> >>>> > > Thanks,
> >>>> > > Marcus
> >>>> > >
> >>>> > > On Tue, Jul 31, 2012 at 3:21 PM, Edison Su
> <Ed...@citrix.com>
> >>>> wrote:
> >>>> > > > The most complicated part in rommer's patch is LVM snapshot.
> If
> >>>> > snapshot
> >>>> > > support is not a must, then adding CLVM is simple as RBD.
> >>>> > > >
> >>>> > > >> -----Original Message-----
> >>>> > > >> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> >>>> > > >> Sent: Tuesday, July 31, 2012 1:33 PM
> >>>> > > >> To: cloudstack-dev@incubator.apache.org
> >>>> > > >> Subject: Re: re-implement clvm
> >>>> > > >>
> >>>> > > >> Ok, so I've created a refactored patch that seems to work.
> It
> >>>> was
> >>>> > > >> pretty much entirely the RBD additions that were blocking
> the
> >>>> > > >> original from being rolled back in. If a developer would be
> >>>> willing
> >>>> > > >> to take on the whole license issue and see this
> functionality
> >>>> put
> >>>> > > >> back in I'd still be willing to pay half of the bounty
> ($400).
> >>>> As
> >>>> > > >> the code looks, the changes are fairly minor, and I'm not
> sure
> >>>> how
> >>>> > > >> novel you'd have to get avoid the license issues (or that
> >>>> there's any
> >>>> > > >> easy alternative way to change the code sufficiently)
> >>>> > > >>
> >>>> > > >> On Tue, Jul 31, 2012 at 2:12 PM, David Nalley
> <da...@gnsa.us>
> >>>> wrote:
> >>>> > > >> > On Tue, Jul 31, 2012 at 3:56 PM, Wido den Hollander
> >>>> > > >> > <wi...@widodh.nl>
> >>>> > > >> wrote:
> >>>> > > >> >>
> >>>> > > >> >>
> >>>> > > >> >> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
> >>>> > > >> >>>
> >>>> > > >> >>> I'd be happy to try more if I had access to any contact
> info.
> >>>> As
> >>>> > > >> it
> >>>> > > >> >>> is, things in the surrounding code have changed enough
> that
> >>>> a bit
> >>>> > > >> of
> >>>> > > >> >>> re-factoring would need to be done even if there were
> >>>> permission.
> >>>> > > >> >>>
> >>>> > > >> >>> My hunch is that unless he's switched roles, once the
> new
> >>>> version
> >>>> > > >> is
> >>>> > > >> >>> released he may come out of the woodwork wondering why
> that
> >>>> > > thing
> >>>> > > >> he
> >>>> > > >> >>> has a need for and developed is gone.
> >>>> > > >> >>
> >>>> > > >> >>
> >>>> > > >> >> After writing the last RBD implementation this CLVM
> seems
> >>>> trivial.
> >>>> > > >> >>
> >>>> > > >> >> A lot of code is still in there and looking at the
> commit
> >>>> where it
> >>>> > > >> got
> >>>> > > >> >> removed it wont be that much work.
> >>>> > > >> >>
> >>>> > > >> >> The problem (and I'm not a licensing expert) is that if
> I
> >>>> would
> >>>> > > >> implement
> >>>> > > >> >> CLVM again it would look a lot like the original code,
> do we
> >>>> have
> >>>> > > >> >> to
> >>>> > > >> refer
> >>>> > > >> >> to the old author for that?
> >>>> > > >> >>
> >>>> > > >> >> I'm assuming here that we won't be able to contact the
> >>>> original
> >>>> > > >> author, but
> >>>> > > >> >> we want to keep the CLVM functionality for 4.0.
> >>>> > > >> >>
> >>>> > > >> >> Wido
> >>>> > > >> >
> >>>> > > >> >
> >>>> > > >> > Actually - you should compare the original patches, with
> what
> >>>> was
> >>>> > > >> reverted. :
> >>>> > > >> > http://bugs.cloudstack.org/browse/CS-10317
> >>>> > > >> >
> >>>> > > >> > There was already something of a rewrite when Edison
> changed
> >>>> how
> >>>> > > >> > some of the storage was handled (which is the iteration
> that
> >>>> was
> >>>> > > pulled).
> >>>> > > >> >
> >>>> > > >> > IANAL either, so I won't bother to even try and answer
> that
> >>>> > question.
> >>>> > > >> >
> >>>> > > >> > --David
> >>>> >

Re: re-implement clvm

Posted by Marcus Sorensen <sh...@gmail.com>.
hacked a fix by editing /var/cache/cloud/cmdline in the ssvm to use
NfsSecondaryStorageResource. Now I hit
"http://bugs.cloudstack.org/browse/CS-15143", x != java.lang.String,
not sure if this is a regression or due to my hack.

On Tue, Aug 7, 2012 at 4:36 PM, Marcus Sorensen <sh...@gmail.com> wrote:
> Edison,
>   I'm having trouble testing my patch against  incubator-cloudstack.
> Every indication seems to be that it's working, but the secondary
> storage VM seems to be messed up. I found this:
>
> http://www.mail-archive.com/cloudstack-dev@incubator.apache.org/msg02431.html
>
> Which you commented on, I just want to ensure that the issues aren't
> due to my patch. Basically the ssvm doesn't launch its agent. I would
> like to launch an instance and test my patch further, but am unable
> to.
>
> 22:23:34,035 ERROR AgentShell:606 - Unable to start agent: Resource
> class not found:
> com.cloud.storage.resource.PremiumSecondaryStorageResource due to:
> java.lang.ClassNotFoundException:
> com.cloud.storage.resource.PremiumSecondaryStorageResource
>
> On Mon, Aug 6, 2012 at 2:51 PM, Marcus Sorensen <sh...@gmail.com> wrote:
>> Ok, I'll send on the core java patch portion. I've reviewed the
>> managesnapshot.sh changes. I had someone begin to create a clean room
>> version implementing the same functionality, and in the process found
>> that we can really only change it superficially as well. The clean
>> room version changed the bulk of the code into a single 'lvcreate
>> --snapshot' command, however we found that there's an issue with
>> --snapshot and CLVM exclusive locking, which led the developer to
>> implement 'lvcreate --snapshot' using equivalent dmsetup commands. At
>> that point we had something that looked the same as the original
>> patch, with only minor changes in syntax and variable names.
>>
>> On Thu, Aug 2, 2012 at 5:11 PM, Edison Su <Ed...@citrix.com> wrote:
>>>
>>>
>>>> -----Original Message-----
>>>> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
>>>> Sent: Thursday, August 02, 2012 3:09 PM
>>>> To: cloudstack-dev@incubator.apache.org
>>>> Subject: RE: re-implement clvm
>>>>
>>>> Oh, I understand, but most of the relevant code is implemented in
>>>> 'if/else
>>>> if/else' blocks, such that its simply a matter of copying the existing
>>>> RBD
>>>> code into another 'else if' block and changing a few words (which in
>>>> turn
>>>> the RBD stuff did previously with the pulled, pre apache CLVM code, or
>>>> so
>>>> it looks).  In my opinion there's really no other way to do it without
>>>> restructuring to avoid the cascading ifs.
>>>
>>>
>>> That's true, in current code, that's the only way.
>>>
>>>>
>>>> It sounds like aside from the snapshot code the removal was probably
>>>> unnecessary, having been reworked by a third party from Rommer's
>>>> submissions prior to being merged. I know little about the application
>>>> of
>>>> licensing details though.
>>>
>>> Please send the core java code to reviewboard, we can apply it. This part of java code is general enough, meaning everybody wants to implement CLVM needs to write the same code.
>>>
>>>>
>>>> What I do know however is that its extremely painful to rip something
>>>> major
>>>> like this out on existing users, rendering their whole infrastructure
>>>> obsolete with no upgrade path. Especially given the relative trivial
>>>> nature
>>>> of the patch, you'd think that one of the project owners would take an
>>>> hour
>>>> or two and rework it. Of course it makes sense that the people who use
>>>> and
>>>> care about a component should help develop it in an open source world,
>>>> but
>>>> the cloud stack consumers don't always follow development. Maybe we are
>>>> the
>>>> only ones who use it, but I think if the next major release pulls CLVM
>>>> support there will be an uproar. What if it had been the code
>>>> implementing
>>>> NFS support?
>>>
>>> I removed it in May 15, due to the concern that it conflicts with Apache license. While at that time, I didn't send an email to dev/user list about this decision. That's my mistake. I'll make sure this kind of thing will not happen again.
>>>
>>>>
>>>> Sorry for the rant. Hopefully we can get it resolved.
>>>
>>> Sure, we can get it resolved.
>>>
>>>> On Aug 2, 2012 2:21 PM, "Kevin Kluge" <Ke...@citrix.com> wrote:
>>>>
>>>> > Marcus, you should write the new code in compliance with the Apache
>>>> CLA,
>>>> > which will forbid directly copying code from some other source.
>>>> Having
>>>> > said that, if the problem is constrained enough by existing
>>>> CloudStack code
>>>> > and/or the solution is so obvious that your code looks like the
>>>> original
>>>> > code, that's just what it is.
>>>> >
>>>> > I'm not a lawyer so please don't take this as legal advice from
>>>> Citrix or
>>>> > me.
>>>> >
>>>> > -kevin
>>>> >
>>>> >
>>>> > > -----Original Message-----
>>>> > > From: Marcus Sorensen [mailto:shadowsor@gmail.com]
>>>> > > Sent: Tuesday, July 31, 2012 3:09 PM
>>>> > > To: cloudstack-dev@incubator.apache.org
>>>> > > Subject: Re: re-implement clvm
>>>> > >
>>>> > > Here's the refactored patch. The CLVM stuff is basically a copy of
>>>> the
>>>> > RBD
>>>> > > additions; and the patch also includes the original changes to
>>>> > > managesnapshot.sh, which is unmodified.
>>>> > >
>>>> > > I'm personally more concerned about the core functionality at this
>>>> > point, I
>>>> > > can go through and re-implement the snapshot stuff, but if the core
>>>> stuff
>>>> > > can't be pulled in due to licensing then it's not worth the trouble
>>>> to
>>>> > redo the
>>>> > > snapshotting. If there's anyone in a position of authority to
>>>> address the
>>>> > > licensing stuff any input would be appreciated.
>>>> > >
>>>> > > Thanks,
>>>> > > Marcus
>>>> > >
>>>> > > On Tue, Jul 31, 2012 at 3:21 PM, Edison Su <Ed...@citrix.com>
>>>> wrote:
>>>> > > > The most complicated part in rommer's patch is LVM snapshot. If
>>>> > snapshot
>>>> > > support is not a must, then adding CLVM is simple as RBD.
>>>> > > >
>>>> > > >> -----Original Message-----
>>>> > > >> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
>>>> > > >> Sent: Tuesday, July 31, 2012 1:33 PM
>>>> > > >> To: cloudstack-dev@incubator.apache.org
>>>> > > >> Subject: Re: re-implement clvm
>>>> > > >>
>>>> > > >> Ok, so I've created a refactored patch that seems to work. It
>>>> was
>>>> > > >> pretty much entirely the RBD additions that were blocking the
>>>> > > >> original from being rolled back in. If a developer would be
>>>> willing
>>>> > > >> to take on the whole license issue and see this functionality
>>>> put
>>>> > > >> back in I'd still be willing to pay half of the bounty ($400).
>>>> As
>>>> > > >> the code looks, the changes are fairly minor, and I'm not sure
>>>> how
>>>> > > >> novel you'd have to get avoid the license issues (or that
>>>> there's any
>>>> > > >> easy alternative way to change the code sufficiently)
>>>> > > >>
>>>> > > >> On Tue, Jul 31, 2012 at 2:12 PM, David Nalley <da...@gnsa.us>
>>>> wrote:
>>>> > > >> > On Tue, Jul 31, 2012 at 3:56 PM, Wido den Hollander
>>>> > > >> > <wi...@widodh.nl>
>>>> > > >> wrote:
>>>> > > >> >>
>>>> > > >> >>
>>>> > > >> >> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
>>>> > > >> >>>
>>>> > > >> >>> I'd be happy to try more if I had access to any contact info.
>>>> As
>>>> > > >> it
>>>> > > >> >>> is, things in the surrounding code have changed enough that
>>>> a bit
>>>> > > >> of
>>>> > > >> >>> re-factoring would need to be done even if there were
>>>> permission.
>>>> > > >> >>>
>>>> > > >> >>> My hunch is that unless he's switched roles, once the new
>>>> version
>>>> > > >> is
>>>> > > >> >>> released he may come out of the woodwork wondering why that
>>>> > > thing
>>>> > > >> he
>>>> > > >> >>> has a need for and developed is gone.
>>>> > > >> >>
>>>> > > >> >>
>>>> > > >> >> After writing the last RBD implementation this CLVM seems
>>>> trivial.
>>>> > > >> >>
>>>> > > >> >> A lot of code is still in there and looking at the commit
>>>> where it
>>>> > > >> got
>>>> > > >> >> removed it wont be that much work.
>>>> > > >> >>
>>>> > > >> >> The problem (and I'm not a licensing expert) is that if I
>>>> would
>>>> > > >> implement
>>>> > > >> >> CLVM again it would look a lot like the original code, do we
>>>> have
>>>> > > >> >> to
>>>> > > >> refer
>>>> > > >> >> to the old author for that?
>>>> > > >> >>
>>>> > > >> >> I'm assuming here that we won't be able to contact the
>>>> original
>>>> > > >> author, but
>>>> > > >> >> we want to keep the CLVM functionality for 4.0.
>>>> > > >> >>
>>>> > > >> >> Wido
>>>> > > >> >
>>>> > > >> >
>>>> > > >> > Actually - you should compare the original patches, with what
>>>> was
>>>> > > >> reverted. :
>>>> > > >> > http://bugs.cloudstack.org/browse/CS-10317
>>>> > > >> >
>>>> > > >> > There was already something of a rewrite when Edison changed
>>>> how
>>>> > > >> > some of the storage was handled (which is the iteration that
>>>> was
>>>> > > pulled).
>>>> > > >> >
>>>> > > >> > IANAL either, so I won't bother to even try and answer that
>>>> > question.
>>>> > > >> >
>>>> > > >> > --David
>>>> >

Re: re-implement clvm

Posted by Marcus Sorensen <sh...@gmail.com>.
Edison,
  I'm having trouble testing my patch against  incubator-cloudstack.
Every indication seems to be that it's working, but the secondary
storage VM seems to be messed up. I found this:

http://www.mail-archive.com/cloudstack-dev@incubator.apache.org/msg02431.html

Which you commented on, I just want to ensure that the issues aren't
due to my patch. Basically the ssvm doesn't launch its agent. I would
like to launch an instance and test my patch further, but am unable
to.

22:23:34,035 ERROR AgentShell:606 - Unable to start agent: Resource
class not found:
com.cloud.storage.resource.PremiumSecondaryStorageResource due to:
java.lang.ClassNotFoundException:
com.cloud.storage.resource.PremiumSecondaryStorageResource

On Mon, Aug 6, 2012 at 2:51 PM, Marcus Sorensen <sh...@gmail.com> wrote:
> Ok, I'll send on the core java patch portion. I've reviewed the
> managesnapshot.sh changes. I had someone begin to create a clean room
> version implementing the same functionality, and in the process found
> that we can really only change it superficially as well. The clean
> room version changed the bulk of the code into a single 'lvcreate
> --snapshot' command, however we found that there's an issue with
> --snapshot and CLVM exclusive locking, which led the developer to
> implement 'lvcreate --snapshot' using equivalent dmsetup commands. At
> that point we had something that looked the same as the original
> patch, with only minor changes in syntax and variable names.
>
> On Thu, Aug 2, 2012 at 5:11 PM, Edison Su <Ed...@citrix.com> wrote:
>>
>>
>>> -----Original Message-----
>>> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
>>> Sent: Thursday, August 02, 2012 3:09 PM
>>> To: cloudstack-dev@incubator.apache.org
>>> Subject: RE: re-implement clvm
>>>
>>> Oh, I understand, but most of the relevant code is implemented in
>>> 'if/else
>>> if/else' blocks, such that its simply a matter of copying the existing
>>> RBD
>>> code into another 'else if' block and changing a few words (which in
>>> turn
>>> the RBD stuff did previously with the pulled, pre apache CLVM code, or
>>> so
>>> it looks).  In my opinion there's really no other way to do it without
>>> restructuring to avoid the cascading ifs.
>>
>>
>> That's true, in current code, that's the only way.
>>
>>>
>>> It sounds like aside from the snapshot code the removal was probably
>>> unnecessary, having been reworked by a third party from Rommer's
>>> submissions prior to being merged. I know little about the application
>>> of
>>> licensing details though.
>>
>> Please send the core java code to reviewboard, we can apply it. This part of java code is general enough, meaning everybody wants to implement CLVM needs to write the same code.
>>
>>>
>>> What I do know however is that its extremely painful to rip something
>>> major
>>> like this out on existing users, rendering their whole infrastructure
>>> obsolete with no upgrade path. Especially given the relative trivial
>>> nature
>>> of the patch, you'd think that one of the project owners would take an
>>> hour
>>> or two and rework it. Of course it makes sense that the people who use
>>> and
>>> care about a component should help develop it in an open source world,
>>> but
>>> the cloud stack consumers don't always follow development. Maybe we are
>>> the
>>> only ones who use it, but I think if the next major release pulls CLVM
>>> support there will be an uproar. What if it had been the code
>>> implementing
>>> NFS support?
>>
>> I removed it in May 15, due to the concern that it conflicts with Apache license. While at that time, I didn't send an email to dev/user list about this decision. That's my mistake. I'll make sure this kind of thing will not happen again.
>>
>>>
>>> Sorry for the rant. Hopefully we can get it resolved.
>>
>> Sure, we can get it resolved.
>>
>>> On Aug 2, 2012 2:21 PM, "Kevin Kluge" <Ke...@citrix.com> wrote:
>>>
>>> > Marcus, you should write the new code in compliance with the Apache
>>> CLA,
>>> > which will forbid directly copying code from some other source.
>>> Having
>>> > said that, if the problem is constrained enough by existing
>>> CloudStack code
>>> > and/or the solution is so obvious that your code looks like the
>>> original
>>> > code, that's just what it is.
>>> >
>>> > I'm not a lawyer so please don't take this as legal advice from
>>> Citrix or
>>> > me.
>>> >
>>> > -kevin
>>> >
>>> >
>>> > > -----Original Message-----
>>> > > From: Marcus Sorensen [mailto:shadowsor@gmail.com]
>>> > > Sent: Tuesday, July 31, 2012 3:09 PM
>>> > > To: cloudstack-dev@incubator.apache.org
>>> > > Subject: Re: re-implement clvm
>>> > >
>>> > > Here's the refactored patch. The CLVM stuff is basically a copy of
>>> the
>>> > RBD
>>> > > additions; and the patch also includes the original changes to
>>> > > managesnapshot.sh, which is unmodified.
>>> > >
>>> > > I'm personally more concerned about the core functionality at this
>>> > point, I
>>> > > can go through and re-implement the snapshot stuff, but if the core
>>> stuff
>>> > > can't be pulled in due to licensing then it's not worth the trouble
>>> to
>>> > redo the
>>> > > snapshotting. If there's anyone in a position of authority to
>>> address the
>>> > > licensing stuff any input would be appreciated.
>>> > >
>>> > > Thanks,
>>> > > Marcus
>>> > >
>>> > > On Tue, Jul 31, 2012 at 3:21 PM, Edison Su <Ed...@citrix.com>
>>> wrote:
>>> > > > The most complicated part in rommer's patch is LVM snapshot. If
>>> > snapshot
>>> > > support is not a must, then adding CLVM is simple as RBD.
>>> > > >
>>> > > >> -----Original Message-----
>>> > > >> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
>>> > > >> Sent: Tuesday, July 31, 2012 1:33 PM
>>> > > >> To: cloudstack-dev@incubator.apache.org
>>> > > >> Subject: Re: re-implement clvm
>>> > > >>
>>> > > >> Ok, so I've created a refactored patch that seems to work. It
>>> was
>>> > > >> pretty much entirely the RBD additions that were blocking the
>>> > > >> original from being rolled back in. If a developer would be
>>> willing
>>> > > >> to take on the whole license issue and see this functionality
>>> put
>>> > > >> back in I'd still be willing to pay half of the bounty ($400).
>>> As
>>> > > >> the code looks, the changes are fairly minor, and I'm not sure
>>> how
>>> > > >> novel you'd have to get avoid the license issues (or that
>>> there's any
>>> > > >> easy alternative way to change the code sufficiently)
>>> > > >>
>>> > > >> On Tue, Jul 31, 2012 at 2:12 PM, David Nalley <da...@gnsa.us>
>>> wrote:
>>> > > >> > On Tue, Jul 31, 2012 at 3:56 PM, Wido den Hollander
>>> > > >> > <wi...@widodh.nl>
>>> > > >> wrote:
>>> > > >> >>
>>> > > >> >>
>>> > > >> >> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
>>> > > >> >>>
>>> > > >> >>> I'd be happy to try more if I had access to any contact info.
>>> As
>>> > > >> it
>>> > > >> >>> is, things in the surrounding code have changed enough that
>>> a bit
>>> > > >> of
>>> > > >> >>> re-factoring would need to be done even if there were
>>> permission.
>>> > > >> >>>
>>> > > >> >>> My hunch is that unless he's switched roles, once the new
>>> version
>>> > > >> is
>>> > > >> >>> released he may come out of the woodwork wondering why that
>>> > > thing
>>> > > >> he
>>> > > >> >>> has a need for and developed is gone.
>>> > > >> >>
>>> > > >> >>
>>> > > >> >> After writing the last RBD implementation this CLVM seems
>>> trivial.
>>> > > >> >>
>>> > > >> >> A lot of code is still in there and looking at the commit
>>> where it
>>> > > >> got
>>> > > >> >> removed it wont be that much work.
>>> > > >> >>
>>> > > >> >> The problem (and I'm not a licensing expert) is that if I
>>> would
>>> > > >> implement
>>> > > >> >> CLVM again it would look a lot like the original code, do we
>>> have
>>> > > >> >> to
>>> > > >> refer
>>> > > >> >> to the old author for that?
>>> > > >> >>
>>> > > >> >> I'm assuming here that we won't be able to contact the
>>> original
>>> > > >> author, but
>>> > > >> >> we want to keep the CLVM functionality for 4.0.
>>> > > >> >>
>>> > > >> >> Wido
>>> > > >> >
>>> > > >> >
>>> > > >> > Actually - you should compare the original patches, with what
>>> was
>>> > > >> reverted. :
>>> > > >> > http://bugs.cloudstack.org/browse/CS-10317
>>> > > >> >
>>> > > >> > There was already something of a rewrite when Edison changed
>>> how
>>> > > >> > some of the storage was handled (which is the iteration that
>>> was
>>> > > pulled).
>>> > > >> >
>>> > > >> > IANAL either, so I won't bother to even try and answer that
>>> > question.
>>> > > >> >
>>> > > >> > --David
>>> >

Re: re-implement clvm

Posted by Marcus Sorensen <sh...@gmail.com>.
Ok, I'll send on the core java patch portion. I've reviewed the
managesnapshot.sh changes. I had someone begin to create a clean room
version implementing the same functionality, and in the process found
that we can really only change it superficially as well. The clean
room version changed the bulk of the code into a single 'lvcreate
--snapshot' command, however we found that there's an issue with
--snapshot and CLVM exclusive locking, which led the developer to
implement 'lvcreate --snapshot' using equivalent dmsetup commands. At
that point we had something that looked the same as the original
patch, with only minor changes in syntax and variable names.

On Thu, Aug 2, 2012 at 5:11 PM, Edison Su <Ed...@citrix.com> wrote:
>
>
>> -----Original Message-----
>> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
>> Sent: Thursday, August 02, 2012 3:09 PM
>> To: cloudstack-dev@incubator.apache.org
>> Subject: RE: re-implement clvm
>>
>> Oh, I understand, but most of the relevant code is implemented in
>> 'if/else
>> if/else' blocks, such that its simply a matter of copying the existing
>> RBD
>> code into another 'else if' block and changing a few words (which in
>> turn
>> the RBD stuff did previously with the pulled, pre apache CLVM code, or
>> so
>> it looks).  In my opinion there's really no other way to do it without
>> restructuring to avoid the cascading ifs.
>
>
> That's true, in current code, that's the only way.
>
>>
>> It sounds like aside from the snapshot code the removal was probably
>> unnecessary, having been reworked by a third party from Rommer's
>> submissions prior to being merged. I know little about the application
>> of
>> licensing details though.
>
> Please send the core java code to reviewboard, we can apply it. This part of java code is general enough, meaning everybody wants to implement CLVM needs to write the same code.
>
>>
>> What I do know however is that its extremely painful to rip something
>> major
>> like this out on existing users, rendering their whole infrastructure
>> obsolete with no upgrade path. Especially given the relative trivial
>> nature
>> of the patch, you'd think that one of the project owners would take an
>> hour
>> or two and rework it. Of course it makes sense that the people who use
>> and
>> care about a component should help develop it in an open source world,
>> but
>> the cloud stack consumers don't always follow development. Maybe we are
>> the
>> only ones who use it, but I think if the next major release pulls CLVM
>> support there will be an uproar. What if it had been the code
>> implementing
>> NFS support?
>
> I removed it in May 15, due to the concern that it conflicts with Apache license. While at that time, I didn't send an email to dev/user list about this decision. That's my mistake. I'll make sure this kind of thing will not happen again.
>
>>
>> Sorry for the rant. Hopefully we can get it resolved.
>
> Sure, we can get it resolved.
>
>> On Aug 2, 2012 2:21 PM, "Kevin Kluge" <Ke...@citrix.com> wrote:
>>
>> > Marcus, you should write the new code in compliance with the Apache
>> CLA,
>> > which will forbid directly copying code from some other source.
>> Having
>> > said that, if the problem is constrained enough by existing
>> CloudStack code
>> > and/or the solution is so obvious that your code looks like the
>> original
>> > code, that's just what it is.
>> >
>> > I'm not a lawyer so please don't take this as legal advice from
>> Citrix or
>> > me.
>> >
>> > -kevin
>> >
>> >
>> > > -----Original Message-----
>> > > From: Marcus Sorensen [mailto:shadowsor@gmail.com]
>> > > Sent: Tuesday, July 31, 2012 3:09 PM
>> > > To: cloudstack-dev@incubator.apache.org
>> > > Subject: Re: re-implement clvm
>> > >
>> > > Here's the refactored patch. The CLVM stuff is basically a copy of
>> the
>> > RBD
>> > > additions; and the patch also includes the original changes to
>> > > managesnapshot.sh, which is unmodified.
>> > >
>> > > I'm personally more concerned about the core functionality at this
>> > point, I
>> > > can go through and re-implement the snapshot stuff, but if the core
>> stuff
>> > > can't be pulled in due to licensing then it's not worth the trouble
>> to
>> > redo the
>> > > snapshotting. If there's anyone in a position of authority to
>> address the
>> > > licensing stuff any input would be appreciated.
>> > >
>> > > Thanks,
>> > > Marcus
>> > >
>> > > On Tue, Jul 31, 2012 at 3:21 PM, Edison Su <Ed...@citrix.com>
>> wrote:
>> > > > The most complicated part in rommer's patch is LVM snapshot. If
>> > snapshot
>> > > support is not a must, then adding CLVM is simple as RBD.
>> > > >
>> > > >> -----Original Message-----
>> > > >> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
>> > > >> Sent: Tuesday, July 31, 2012 1:33 PM
>> > > >> To: cloudstack-dev@incubator.apache.org
>> > > >> Subject: Re: re-implement clvm
>> > > >>
>> > > >> Ok, so I've created a refactored patch that seems to work. It
>> was
>> > > >> pretty much entirely the RBD additions that were blocking the
>> > > >> original from being rolled back in. If a developer would be
>> willing
>> > > >> to take on the whole license issue and see this functionality
>> put
>> > > >> back in I'd still be willing to pay half of the bounty ($400).
>> As
>> > > >> the code looks, the changes are fairly minor, and I'm not sure
>> how
>> > > >> novel you'd have to get avoid the license issues (or that
>> there's any
>> > > >> easy alternative way to change the code sufficiently)
>> > > >>
>> > > >> On Tue, Jul 31, 2012 at 2:12 PM, David Nalley <da...@gnsa.us>
>> wrote:
>> > > >> > On Tue, Jul 31, 2012 at 3:56 PM, Wido den Hollander
>> > > >> > <wi...@widodh.nl>
>> > > >> wrote:
>> > > >> >>
>> > > >> >>
>> > > >> >> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
>> > > >> >>>
>> > > >> >>> I'd be happy to try more if I had access to any contact info.
>> As
>> > > >> it
>> > > >> >>> is, things in the surrounding code have changed enough that
>> a bit
>> > > >> of
>> > > >> >>> re-factoring would need to be done even if there were
>> permission.
>> > > >> >>>
>> > > >> >>> My hunch is that unless he's switched roles, once the new
>> version
>> > > >> is
>> > > >> >>> released he may come out of the woodwork wondering why that
>> > > thing
>> > > >> he
>> > > >> >>> has a need for and developed is gone.
>> > > >> >>
>> > > >> >>
>> > > >> >> After writing the last RBD implementation this CLVM seems
>> trivial.
>> > > >> >>
>> > > >> >> A lot of code is still in there and looking at the commit
>> where it
>> > > >> got
>> > > >> >> removed it wont be that much work.
>> > > >> >>
>> > > >> >> The problem (and I'm not a licensing expert) is that if I
>> would
>> > > >> implement
>> > > >> >> CLVM again it would look a lot like the original code, do we
>> have
>> > > >> >> to
>> > > >> refer
>> > > >> >> to the old author for that?
>> > > >> >>
>> > > >> >> I'm assuming here that we won't be able to contact the
>> original
>> > > >> author, but
>> > > >> >> we want to keep the CLVM functionality for 4.0.
>> > > >> >>
>> > > >> >> Wido
>> > > >> >
>> > > >> >
>> > > >> > Actually - you should compare the original patches, with what
>> was
>> > > >> reverted. :
>> > > >> > http://bugs.cloudstack.org/browse/CS-10317
>> > > >> >
>> > > >> > There was already something of a rewrite when Edison changed
>> how
>> > > >> > some of the storage was handled (which is the iteration that
>> was
>> > > pulled).
>> > > >> >
>> > > >> > IANAL either, so I won't bother to even try and answer that
>> > question.
>> > > >> >
>> > > >> > --David
>> >

RE: re-implement clvm

Posted by Edison Su <Ed...@citrix.com>.

> -----Original Message-----
> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> Sent: Thursday, August 02, 2012 3:09 PM
> To: cloudstack-dev@incubator.apache.org
> Subject: RE: re-implement clvm
> 
> Oh, I understand, but most of the relevant code is implemented in
> 'if/else
> if/else' blocks, such that its simply a matter of copying the existing
> RBD
> code into another 'else if' block and changing a few words (which in
> turn
> the RBD stuff did previously with the pulled, pre apache CLVM code, or
> so
> it looks).  In my opinion there's really no other way to do it without
> restructuring to avoid the cascading ifs.


That's true, in current code, that's the only way.

> 
> It sounds like aside from the snapshot code the removal was probably
> unnecessary, having been reworked by a third party from Rommer's
> submissions prior to being merged. I know little about the application
> of
> licensing details though.

Please send the core java code to reviewboard, we can apply it. This part of java code is general enough, meaning everybody wants to implement CLVM needs to write the same code.

> 
> What I do know however is that its extremely painful to rip something
> major
> like this out on existing users, rendering their whole infrastructure
> obsolete with no upgrade path. Especially given the relative trivial
> nature
> of the patch, you'd think that one of the project owners would take an
> hour
> or two and rework it. Of course it makes sense that the people who use
> and
> care about a component should help develop it in an open source world,
> but
> the cloud stack consumers don't always follow development. Maybe we are
> the
> only ones who use it, but I think if the next major release pulls CLVM
> support there will be an uproar. What if it had been the code
> implementing
> NFS support?

I removed it in May 15, due to the concern that it conflicts with Apache license. While at that time, I didn't send an email to dev/user list about this decision. That's my mistake. I'll make sure this kind of thing will not happen again.

> 
> Sorry for the rant. Hopefully we can get it resolved.

Sure, we can get it resolved.

> On Aug 2, 2012 2:21 PM, "Kevin Kluge" <Ke...@citrix.com> wrote:
> 
> > Marcus, you should write the new code in compliance with the Apache
> CLA,
> > which will forbid directly copying code from some other source.
> Having
> > said that, if the problem is constrained enough by existing
> CloudStack code
> > and/or the solution is so obvious that your code looks like the
> original
> > code, that's just what it is.
> >
> > I'm not a lawyer so please don't take this as legal advice from
> Citrix or
> > me.
> >
> > -kevin
> >
> >
> > > -----Original Message-----
> > > From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> > > Sent: Tuesday, July 31, 2012 3:09 PM
> > > To: cloudstack-dev@incubator.apache.org
> > > Subject: Re: re-implement clvm
> > >
> > > Here's the refactored patch. The CLVM stuff is basically a copy of
> the
> > RBD
> > > additions; and the patch also includes the original changes to
> > > managesnapshot.sh, which is unmodified.
> > >
> > > I'm personally more concerned about the core functionality at this
> > point, I
> > > can go through and re-implement the snapshot stuff, but if the core
> stuff
> > > can't be pulled in due to licensing then it's not worth the trouble
> to
> > redo the
> > > snapshotting. If there's anyone in a position of authority to
> address the
> > > licensing stuff any input would be appreciated.
> > >
> > > Thanks,
> > > Marcus
> > >
> > > On Tue, Jul 31, 2012 at 3:21 PM, Edison Su <Ed...@citrix.com>
> wrote:
> > > > The most complicated part in rommer's patch is LVM snapshot. If
> > snapshot
> > > support is not a must, then adding CLVM is simple as RBD.
> > > >
> > > >> -----Original Message-----
> > > >> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> > > >> Sent: Tuesday, July 31, 2012 1:33 PM
> > > >> To: cloudstack-dev@incubator.apache.org
> > > >> Subject: Re: re-implement clvm
> > > >>
> > > >> Ok, so I've created a refactored patch that seems to work. It
> was
> > > >> pretty much entirely the RBD additions that were blocking the
> > > >> original from being rolled back in. If a developer would be
> willing
> > > >> to take on the whole license issue and see this functionality
> put
> > > >> back in I'd still be willing to pay half of the bounty ($400).
> As
> > > >> the code looks, the changes are fairly minor, and I'm not sure
> how
> > > >> novel you'd have to get avoid the license issues (or that
> there's any
> > > >> easy alternative way to change the code sufficiently)
> > > >>
> > > >> On Tue, Jul 31, 2012 at 2:12 PM, David Nalley <da...@gnsa.us>
> wrote:
> > > >> > On Tue, Jul 31, 2012 at 3:56 PM, Wido den Hollander
> > > >> > <wi...@widodh.nl>
> > > >> wrote:
> > > >> >>
> > > >> >>
> > > >> >> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
> > > >> >>>
> > > >> >>> I'd be happy to try more if I had access to any contact info.
> As
> > > >> it
> > > >> >>> is, things in the surrounding code have changed enough that
> a bit
> > > >> of
> > > >> >>> re-factoring would need to be done even if there were
> permission.
> > > >> >>>
> > > >> >>> My hunch is that unless he's switched roles, once the new
> version
> > > >> is
> > > >> >>> released he may come out of the woodwork wondering why that
> > > thing
> > > >> he
> > > >> >>> has a need for and developed is gone.
> > > >> >>
> > > >> >>
> > > >> >> After writing the last RBD implementation this CLVM seems
> trivial.
> > > >> >>
> > > >> >> A lot of code is still in there and looking at the commit
> where it
> > > >> got
> > > >> >> removed it wont be that much work.
> > > >> >>
> > > >> >> The problem (and I'm not a licensing expert) is that if I
> would
> > > >> implement
> > > >> >> CLVM again it would look a lot like the original code, do we
> have
> > > >> >> to
> > > >> refer
> > > >> >> to the old author for that?
> > > >> >>
> > > >> >> I'm assuming here that we won't be able to contact the
> original
> > > >> author, but
> > > >> >> we want to keep the CLVM functionality for 4.0.
> > > >> >>
> > > >> >> Wido
> > > >> >
> > > >> >
> > > >> > Actually - you should compare the original patches, with what
> was
> > > >> reverted. :
> > > >> > http://bugs.cloudstack.org/browse/CS-10317
> > > >> >
> > > >> > There was already something of a rewrite when Edison changed
> how
> > > >> > some of the storage was handled (which is the iteration that
> was
> > > pulled).
> > > >> >
> > > >> > IANAL either, so I won't bother to even try and answer that
> > question.
> > > >> >
> > > >> > --David
> >

RE: re-implement clvm

Posted by Marcus Sorensen <sh...@gmail.com>.
Oh, I understand, but most of the relevant code is implemented in 'if/else
if/else' blocks, such that its simply a matter of copying the existing RBD
code into another 'else if' block and changing a few words (which in turn
the RBD stuff did previously with the pulled, pre apache CLVM code, or so
it looks).  In my opinion there's really no other way to do it without
restructuring to avoid the cascading ifs.

It sounds like aside from the snapshot code the removal was probably
unnecessary, having been reworked by a third party from Rommer's
submissions prior to being merged. I know little about the application of
licensing details though.

What I do know however is that its extremely painful to rip something major
like this out on existing users, rendering their whole infrastructure
obsolete with no upgrade path. Especially given the relative trivial nature
of the patch, you'd think that one of the project owners would take an hour
or two and rework it. Of course it makes sense that the people who use and
care about a component should help develop it in an open source world, but
the cloud stack consumers don't always follow development. Maybe we are the
only ones who use it, but I think if the next major release pulls CLVM
support there will be an uproar. What if it had been the code implementing
NFS support?

Sorry for the rant. Hopefully we can get it resolved.
On Aug 2, 2012 2:21 PM, "Kevin Kluge" <Ke...@citrix.com> wrote:

> Marcus, you should write the new code in compliance with the Apache CLA,
> which will forbid directly copying code from some other source.   Having
> said that, if the problem is constrained enough by existing CloudStack code
> and/or the solution is so obvious that your code looks like the original
> code, that's just what it is.
>
> I'm not a lawyer so please don't take this as legal advice from Citrix or
> me.
>
> -kevin
>
>
> > -----Original Message-----
> > From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> > Sent: Tuesday, July 31, 2012 3:09 PM
> > To: cloudstack-dev@incubator.apache.org
> > Subject: Re: re-implement clvm
> >
> > Here's the refactored patch. The CLVM stuff is basically a copy of the
> RBD
> > additions; and the patch also includes the original changes to
> > managesnapshot.sh, which is unmodified.
> >
> > I'm personally more concerned about the core functionality at this
> point, I
> > can go through and re-implement the snapshot stuff, but if the core stuff
> > can't be pulled in due to licensing then it's not worth the trouble to
> redo the
> > snapshotting. If there's anyone in a position of authority to address the
> > licensing stuff any input would be appreciated.
> >
> > Thanks,
> > Marcus
> >
> > On Tue, Jul 31, 2012 at 3:21 PM, Edison Su <Ed...@citrix.com> wrote:
> > > The most complicated part in rommer's patch is LVM snapshot. If
> snapshot
> > support is not a must, then adding CLVM is simple as RBD.
> > >
> > >> -----Original Message-----
> > >> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> > >> Sent: Tuesday, July 31, 2012 1:33 PM
> > >> To: cloudstack-dev@incubator.apache.org
> > >> Subject: Re: re-implement clvm
> > >>
> > >> Ok, so I've created a refactored patch that seems to work. It was
> > >> pretty much entirely the RBD additions that were blocking the
> > >> original from being rolled back in. If a developer would be willing
> > >> to take on the whole license issue and see this functionality put
> > >> back in I'd still be willing to pay half of the bounty ($400).  As
> > >> the code looks, the changes are fairly minor, and I'm not sure how
> > >> novel you'd have to get avoid the license issues (or that there's any
> > >> easy alternative way to change the code sufficiently)
> > >>
> > >> On Tue, Jul 31, 2012 at 2:12 PM, David Nalley <da...@gnsa.us> wrote:
> > >> > On Tue, Jul 31, 2012 at 3:56 PM, Wido den Hollander
> > >> > <wi...@widodh.nl>
> > >> wrote:
> > >> >>
> > >> >>
> > >> >> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
> > >> >>>
> > >> >>> I'd be happy to try more if I had access to any contact info.  As
> > >> it
> > >> >>> is, things in the surrounding code have changed enough that a bit
> > >> of
> > >> >>> re-factoring would need to be done even if there were permission.
> > >> >>>
> > >> >>> My hunch is that unless he's switched roles, once the new version
> > >> is
> > >> >>> released he may come out of the woodwork wondering why that
> > thing
> > >> he
> > >> >>> has a need for and developed is gone.
> > >> >>
> > >> >>
> > >> >> After writing the last RBD implementation this CLVM seems trivial.
> > >> >>
> > >> >> A lot of code is still in there and looking at the commit where it
> > >> got
> > >> >> removed it wont be that much work.
> > >> >>
> > >> >> The problem (and I'm not a licensing expert) is that if I would
> > >> implement
> > >> >> CLVM again it would look a lot like the original code, do we have
> > >> >> to
> > >> refer
> > >> >> to the old author for that?
> > >> >>
> > >> >> I'm assuming here that we won't be able to contact the original
> > >> author, but
> > >> >> we want to keep the CLVM functionality for 4.0.
> > >> >>
> > >> >> Wido
> > >> >
> > >> >
> > >> > Actually - you should compare the original patches, with what was
> > >> reverted. :
> > >> > http://bugs.cloudstack.org/browse/CS-10317
> > >> >
> > >> > There was already something of a rewrite when Edison changed how
> > >> > some of the storage was handled (which is the iteration that was
> > pulled).
> > >> >
> > >> > IANAL either, so I won't bother to even try and answer that
> question.
> > >> >
> > >> > --David
>

RE: re-implement clvm

Posted by Kevin Kluge <Ke...@citrix.com>.
Marcus, you should write the new code in compliance with the Apache CLA, which will forbid directly copying code from some other source.   Having said that, if the problem is constrained enough by existing CloudStack code and/or the solution is so obvious that your code looks like the original code, that's just what it is.

I'm not a lawyer so please don't take this as legal advice from Citrix or me.  

-kevin


> -----Original Message-----
> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> Sent: Tuesday, July 31, 2012 3:09 PM
> To: cloudstack-dev@incubator.apache.org
> Subject: Re: re-implement clvm
> 
> Here's the refactored patch. The CLVM stuff is basically a copy of the RBD
> additions; and the patch also includes the original changes to
> managesnapshot.sh, which is unmodified.
> 
> I'm personally more concerned about the core functionality at this point, I
> can go through and re-implement the snapshot stuff, but if the core stuff
> can't be pulled in due to licensing then it's not worth the trouble to redo the
> snapshotting. If there's anyone in a position of authority to address the
> licensing stuff any input would be appreciated.
> 
> Thanks,
> Marcus
> 
> On Tue, Jul 31, 2012 at 3:21 PM, Edison Su <Ed...@citrix.com> wrote:
> > The most complicated part in rommer's patch is LVM snapshot. If snapshot
> support is not a must, then adding CLVM is simple as RBD.
> >
> >> -----Original Message-----
> >> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> >> Sent: Tuesday, July 31, 2012 1:33 PM
> >> To: cloudstack-dev@incubator.apache.org
> >> Subject: Re: re-implement clvm
> >>
> >> Ok, so I've created a refactored patch that seems to work. It was
> >> pretty much entirely the RBD additions that were blocking the
> >> original from being rolled back in. If a developer would be willing
> >> to take on the whole license issue and see this functionality put
> >> back in I'd still be willing to pay half of the bounty ($400).  As
> >> the code looks, the changes are fairly minor, and I'm not sure how
> >> novel you'd have to get avoid the license issues (or that there's any
> >> easy alternative way to change the code sufficiently)
> >>
> >> On Tue, Jul 31, 2012 at 2:12 PM, David Nalley <da...@gnsa.us> wrote:
> >> > On Tue, Jul 31, 2012 at 3:56 PM, Wido den Hollander
> >> > <wi...@widodh.nl>
> >> wrote:
> >> >>
> >> >>
> >> >> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
> >> >>>
> >> >>> I'd be happy to try more if I had access to any contact info.  As
> >> it
> >> >>> is, things in the surrounding code have changed enough that a bit
> >> of
> >> >>> re-factoring would need to be done even if there were permission.
> >> >>>
> >> >>> My hunch is that unless he's switched roles, once the new version
> >> is
> >> >>> released he may come out of the woodwork wondering why that
> thing
> >> he
> >> >>> has a need for and developed is gone.
> >> >>
> >> >>
> >> >> After writing the last RBD implementation this CLVM seems trivial.
> >> >>
> >> >> A lot of code is still in there and looking at the commit where it
> >> got
> >> >> removed it wont be that much work.
> >> >>
> >> >> The problem (and I'm not a licensing expert) is that if I would
> >> implement
> >> >> CLVM again it would look a lot like the original code, do we have
> >> >> to
> >> refer
> >> >> to the old author for that?
> >> >>
> >> >> I'm assuming here that we won't be able to contact the original
> >> author, but
> >> >> we want to keep the CLVM functionality for 4.0.
> >> >>
> >> >> Wido
> >> >
> >> >
> >> > Actually - you should compare the original patches, with what was
> >> reverted. :
> >> > http://bugs.cloudstack.org/browse/CS-10317
> >> >
> >> > There was already something of a rewrite when Edison changed how
> >> > some of the storage was handled (which is the iteration that was
> pulled).
> >> >
> >> > IANAL either, so I won't bother to even try and answer that question.
> >> >
> >> > --David

Re: re-implement clvm

Posted by David Nalley <da...@gnsa.us>.
On Tue, Jul 31, 2012 at 6:08 PM, Marcus Sorensen <sh...@gmail.com> wrote:
> Here's the refactored patch. The CLVM stuff is basically a copy of the
> RBD additions; and the patch also includes the original changes to
> managesnapshot.sh, which is unmodified.
>
> I'm personally more concerned about the core functionality at this
> point, I can go through and re-implement the snapshot stuff, but if
> the core stuff can't be pulled in due to licensing then it's not worth
> the trouble to redo the snapshotting. If there's anyone in a position
> of authority to address the licensing stuff any input would be
> appreciated.
>

I don't know if I have any authority, but I'll make sure we get an
answer to this.

I guess the easiest thing is to ask our mentors if they know what the
policy should be.

--David

Re: re-implement clvm

Posted by David Nalley <da...@gnsa.us>.
On Tue, Jul 31, 2012 at 7:30 PM, Marcus Sorensen <sh...@gmail.com> wrote:
> sure, just let me know how to send it in.


Go to reviews.apache.org
Create an account
Submit the patch - add the 'group' cloudstack

You should see it appear on the mailing list shortly thereafter.

--David

Re: re-implement clvm

Posted by Marcus Sorensen <sh...@gmail.com>.
sure, just let me know how to send it in.

On Tue, Jul 31, 2012 at 5:06 PM, Edison Su <Ed...@citrix.com> wrote:
> Could you send the patch to reviewboard, and remove the snapshot part?
>
>> -----Original Message-----
>> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
>> Sent: Tuesday, July 31, 2012 3:09 PM
>> To: cloudstack-dev@incubator.apache.org
>> Subject: Re: re-implement clvm
>>
>> Here's the refactored patch. The CLVM stuff is basically a copy of the
>> RBD additions; and the patch also includes the original changes to
>> managesnapshot.sh, which is unmodified.
>>
>> I'm personally more concerned about the core functionality at this
>> point, I can go through and re-implement the snapshot stuff, but if
>> the core stuff can't be pulled in due to licensing then it's not worth
>> the trouble to redo the snapshotting. If there's anyone in a position
>> of authority to address the licensing stuff any input would be
>> appreciated.
>>
>> Thanks,
>> Marcus
>>
>> On Tue, Jul 31, 2012 at 3:21 PM, Edison Su <Ed...@citrix.com> wrote:
>> > The most complicated part in rommer's patch is LVM snapshot. If
>> snapshot support is not a must, then adding CLVM is simple as RBD.
>> >
>> >> -----Original Message-----
>> >> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
>> >> Sent: Tuesday, July 31, 2012 1:33 PM
>> >> To: cloudstack-dev@incubator.apache.org
>> >> Subject: Re: re-implement clvm
>> >>
>> >> Ok, so I've created a refactored patch that seems to work. It was
>> >> pretty much entirely the RBD additions that were blocking the
>> original
>> >> from being rolled back in. If a developer would be willing to take
>> on
>> >> the whole license issue and see this functionality put back in I'd
>> >> still be willing to pay half of the bounty ($400).  As the code
>> looks,
>> >> the changes are fairly minor, and I'm not sure how novel you'd have
>> to
>> >> get avoid the license issues (or that there's any easy alternative
>> way
>> >> to change the code sufficiently)
>> >>
>> >> On Tue, Jul 31, 2012 at 2:12 PM, David Nalley <da...@gnsa.us> wrote:
>> >> > On Tue, Jul 31, 2012 at 3:56 PM, Wido den Hollander
>> <wi...@widodh.nl>
>> >> wrote:
>> >> >>
>> >> >>
>> >> >> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
>> >> >>>
>> >> >>> I'd be happy to try more if I had access to any contact info.
>> As
>> >> it
>> >> >>> is, things in the surrounding code have changed enough that a
>> bit
>> >> of
>> >> >>> re-factoring would need to be done even if there were permission.
>> >> >>>
>> >> >>> My hunch is that unless he's switched roles, once the new
>> version
>> >> is
>> >> >>> released he may come out of the woodwork wondering why that
>> thing
>> >> he
>> >> >>> has a need for and developed is gone.
>> >> >>
>> >> >>
>> >> >> After writing the last RBD implementation this CLVM seems trivial.
>> >> >>
>> >> >> A lot of code is still in there and looking at the commit where
>> it
>> >> got
>> >> >> removed it wont be that much work.
>> >> >>
>> >> >> The problem (and I'm not a licensing expert) is that if I would
>> >> implement
>> >> >> CLVM again it would look a lot like the original code, do we have
>> to
>> >> refer
>> >> >> to the old author for that?
>> >> >>
>> >> >> I'm assuming here that we won't be able to contact the original
>> >> author, but
>> >> >> we want to keep the CLVM functionality for 4.0.
>> >> >>
>> >> >> Wido
>> >> >
>> >> >
>> >> > Actually - you should compare the original patches, with what was
>> >> reverted. :
>> >> > http://bugs.cloudstack.org/browse/CS-10317
>> >> >
>> >> > There was already something of a rewrite when Edison changed how
>> some
>> >> > of the storage was handled (which is the iteration that was
>> pulled).
>> >> >
>> >> > IANAL either, so I won't bother to even try and answer that
>> question.
>> >> >
>> >> > --David

RE: re-implement clvm

Posted by Edison Su <Ed...@citrix.com>.
Could you send the patch to reviewboard, and remove the snapshot part?

> -----Original Message-----
> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> Sent: Tuesday, July 31, 2012 3:09 PM
> To: cloudstack-dev@incubator.apache.org
> Subject: Re: re-implement clvm
> 
> Here's the refactored patch. The CLVM stuff is basically a copy of the
> RBD additions; and the patch also includes the original changes to
> managesnapshot.sh, which is unmodified.
> 
> I'm personally more concerned about the core functionality at this
> point, I can go through and re-implement the snapshot stuff, but if
> the core stuff can't be pulled in due to licensing then it's not worth
> the trouble to redo the snapshotting. If there's anyone in a position
> of authority to address the licensing stuff any input would be
> appreciated.
> 
> Thanks,
> Marcus
> 
> On Tue, Jul 31, 2012 at 3:21 PM, Edison Su <Ed...@citrix.com> wrote:
> > The most complicated part in rommer's patch is LVM snapshot. If
> snapshot support is not a must, then adding CLVM is simple as RBD.
> >
> >> -----Original Message-----
> >> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> >> Sent: Tuesday, July 31, 2012 1:33 PM
> >> To: cloudstack-dev@incubator.apache.org
> >> Subject: Re: re-implement clvm
> >>
> >> Ok, so I've created a refactored patch that seems to work. It was
> >> pretty much entirely the RBD additions that were blocking the
> original
> >> from being rolled back in. If a developer would be willing to take
> on
> >> the whole license issue and see this functionality put back in I'd
> >> still be willing to pay half of the bounty ($400).  As the code
> looks,
> >> the changes are fairly minor, and I'm not sure how novel you'd have
> to
> >> get avoid the license issues (or that there's any easy alternative
> way
> >> to change the code sufficiently)
> >>
> >> On Tue, Jul 31, 2012 at 2:12 PM, David Nalley <da...@gnsa.us> wrote:
> >> > On Tue, Jul 31, 2012 at 3:56 PM, Wido den Hollander
> <wi...@widodh.nl>
> >> wrote:
> >> >>
> >> >>
> >> >> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
> >> >>>
> >> >>> I'd be happy to try more if I had access to any contact info.
> As
> >> it
> >> >>> is, things in the surrounding code have changed enough that a
> bit
> >> of
> >> >>> re-factoring would need to be done even if there were permission.
> >> >>>
> >> >>> My hunch is that unless he's switched roles, once the new
> version
> >> is
> >> >>> released he may come out of the woodwork wondering why that
> thing
> >> he
> >> >>> has a need for and developed is gone.
> >> >>
> >> >>
> >> >> After writing the last RBD implementation this CLVM seems trivial.
> >> >>
> >> >> A lot of code is still in there and looking at the commit where
> it
> >> got
> >> >> removed it wont be that much work.
> >> >>
> >> >> The problem (and I'm not a licensing expert) is that if I would
> >> implement
> >> >> CLVM again it would look a lot like the original code, do we have
> to
> >> refer
> >> >> to the old author for that?
> >> >>
> >> >> I'm assuming here that we won't be able to contact the original
> >> author, but
> >> >> we want to keep the CLVM functionality for 4.0.
> >> >>
> >> >> Wido
> >> >
> >> >
> >> > Actually - you should compare the original patches, with what was
> >> reverted. :
> >> > http://bugs.cloudstack.org/browse/CS-10317
> >> >
> >> > There was already something of a rewrite when Edison changed how
> some
> >> > of the storage was handled (which is the iteration that was
> pulled).
> >> >
> >> > IANAL either, so I won't bother to even try and answer that
> question.
> >> >
> >> > --David

Re: re-implement clvm

Posted by Marcus Sorensen <sh...@gmail.com>.
Here's the refactored patch. The CLVM stuff is basically a copy of the
RBD additions; and the patch also includes the original changes to
managesnapshot.sh, which is unmodified.

I'm personally more concerned about the core functionality at this
point, I can go through and re-implement the snapshot stuff, but if
the core stuff can't be pulled in due to licensing then it's not worth
the trouble to redo the snapshotting. If there's anyone in a position
of authority to address the licensing stuff any input would be
appreciated.

Thanks,
Marcus

On Tue, Jul 31, 2012 at 3:21 PM, Edison Su <Ed...@citrix.com> wrote:
> The most complicated part in rommer's patch is LVM snapshot. If snapshot support is not a must, then adding CLVM is simple as RBD.
>
>> -----Original Message-----
>> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
>> Sent: Tuesday, July 31, 2012 1:33 PM
>> To: cloudstack-dev@incubator.apache.org
>> Subject: Re: re-implement clvm
>>
>> Ok, so I've created a refactored patch that seems to work. It was
>> pretty much entirely the RBD additions that were blocking the original
>> from being rolled back in. If a developer would be willing to take on
>> the whole license issue and see this functionality put back in I'd
>> still be willing to pay half of the bounty ($400).  As the code looks,
>> the changes are fairly minor, and I'm not sure how novel you'd have to
>> get avoid the license issues (or that there's any easy alternative way
>> to change the code sufficiently)
>>
>> On Tue, Jul 31, 2012 at 2:12 PM, David Nalley <da...@gnsa.us> wrote:
>> > On Tue, Jul 31, 2012 at 3:56 PM, Wido den Hollander <wi...@widodh.nl>
>> wrote:
>> >>
>> >>
>> >> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
>> >>>
>> >>> I'd be happy to try more if I had access to any contact info.  As
>> it
>> >>> is, things in the surrounding code have changed enough that a bit
>> of
>> >>> re-factoring would need to be done even if there were permission.
>> >>>
>> >>> My hunch is that unless he's switched roles, once the new version
>> is
>> >>> released he may come out of the woodwork wondering why that thing
>> he
>> >>> has a need for and developed is gone.
>> >>
>> >>
>> >> After writing the last RBD implementation this CLVM seems trivial.
>> >>
>> >> A lot of code is still in there and looking at the commit where it
>> got
>> >> removed it wont be that much work.
>> >>
>> >> The problem (and I'm not a licensing expert) is that if I would
>> implement
>> >> CLVM again it would look a lot like the original code, do we have to
>> refer
>> >> to the old author for that?
>> >>
>> >> I'm assuming here that we won't be able to contact the original
>> author, but
>> >> we want to keep the CLVM functionality for 4.0.
>> >>
>> >> Wido
>> >
>> >
>> > Actually - you should compare the original patches, with what was
>> reverted. :
>> > http://bugs.cloudstack.org/browse/CS-10317
>> >
>> > There was already something of a rewrite when Edison changed how some
>> > of the storage was handled (which is the iteration that was pulled).
>> >
>> > IANAL either, so I won't bother to even try and answer that question.
>> >
>> > --David

RE: re-implement clvm

Posted by Edison Su <Ed...@citrix.com>.
The most complicated part in rommer's patch is LVM snapshot. If snapshot support is not a must, then adding CLVM is simple as RBD. 

> -----Original Message-----
> From: Marcus Sorensen [mailto:shadowsor@gmail.com]
> Sent: Tuesday, July 31, 2012 1:33 PM
> To: cloudstack-dev@incubator.apache.org
> Subject: Re: re-implement clvm
> 
> Ok, so I've created a refactored patch that seems to work. It was
> pretty much entirely the RBD additions that were blocking the original
> from being rolled back in. If a developer would be willing to take on
> the whole license issue and see this functionality put back in I'd
> still be willing to pay half of the bounty ($400).  As the code looks,
> the changes are fairly minor, and I'm not sure how novel you'd have to
> get avoid the license issues (or that there's any easy alternative way
> to change the code sufficiently)
> 
> On Tue, Jul 31, 2012 at 2:12 PM, David Nalley <da...@gnsa.us> wrote:
> > On Tue, Jul 31, 2012 at 3:56 PM, Wido den Hollander <wi...@widodh.nl>
> wrote:
> >>
> >>
> >> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
> >>>
> >>> I'd be happy to try more if I had access to any contact info.  As
> it
> >>> is, things in the surrounding code have changed enough that a bit
> of
> >>> re-factoring would need to be done even if there were permission.
> >>>
> >>> My hunch is that unless he's switched roles, once the new version
> is
> >>> released he may come out of the woodwork wondering why that thing
> he
> >>> has a need for and developed is gone.
> >>
> >>
> >> After writing the last RBD implementation this CLVM seems trivial.
> >>
> >> A lot of code is still in there and looking at the commit where it
> got
> >> removed it wont be that much work.
> >>
> >> The problem (and I'm not a licensing expert) is that if I would
> implement
> >> CLVM again it would look a lot like the original code, do we have to
> refer
> >> to the old author for that?
> >>
> >> I'm assuming here that we won't be able to contact the original
> author, but
> >> we want to keep the CLVM functionality for 4.0.
> >>
> >> Wido
> >
> >
> > Actually - you should compare the original patches, with what was
> reverted. :
> > http://bugs.cloudstack.org/browse/CS-10317
> >
> > There was already something of a rewrite when Edison changed how some
> > of the storage was handled (which is the iteration that was pulled).
> >
> > IANAL either, so I won't bother to even try and answer that question.
> >
> > --David

Re: re-implement clvm

Posted by Marcus Sorensen <sh...@gmail.com>.
Ok, so I've created a refactored patch that seems to work. It was
pretty much entirely the RBD additions that were blocking the original
from being rolled back in. If a developer would be willing to take on
the whole license issue and see this functionality put back in I'd
still be willing to pay half of the bounty ($400).  As the code looks,
the changes are fairly minor, and I'm not sure how novel you'd have to
get avoid the license issues (or that there's any easy alternative way
to change the code sufficiently)

On Tue, Jul 31, 2012 at 2:12 PM, David Nalley <da...@gnsa.us> wrote:
> On Tue, Jul 31, 2012 at 3:56 PM, Wido den Hollander <wi...@widodh.nl> wrote:
>>
>>
>> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
>>>
>>> I'd be happy to try more if I had access to any contact info.  As it
>>> is, things in the surrounding code have changed enough that a bit of
>>> re-factoring would need to be done even if there were permission.
>>>
>>> My hunch is that unless he's switched roles, once the new version is
>>> released he may come out of the woodwork wondering why that thing he
>>> has a need for and developed is gone.
>>
>>
>> After writing the last RBD implementation this CLVM seems trivial.
>>
>> A lot of code is still in there and looking at the commit where it got
>> removed it wont be that much work.
>>
>> The problem (and I'm not a licensing expert) is that if I would implement
>> CLVM again it would look a lot like the original code, do we have to refer
>> to the old author for that?
>>
>> I'm assuming here that we won't be able to contact the original author, but
>> we want to keep the CLVM functionality for 4.0.
>>
>> Wido
>
>
> Actually - you should compare the original patches, with what was reverted. :
> http://bugs.cloudstack.org/browse/CS-10317
>
> There was already something of a rewrite when Edison changed how some
> of the storage was handled (which is the iteration that was pulled).
>
> IANAL either, so I won't bother to even try and answer that question.
>
> --David

Re: re-implement clvm

Posted by Wido den Hollander <wi...@widodh.nl>.

On 07/31/2012 10:12 PM, David Nalley wrote:
> On Tue, Jul 31, 2012 at 3:56 PM, Wido den Hollander <wi...@widodh.nl> wrote:
>>
>>
>> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
>>>
>>> I'd be happy to try more if I had access to any contact info.  As it
>>> is, things in the surrounding code have changed enough that a bit of
>>> re-factoring would need to be done even if there were permission.
>>>
>>> My hunch is that unless he's switched roles, once the new version is
>>> released he may come out of the woodwork wondering why that thing he
>>> has a need for and developed is gone.
>>
>>
>> After writing the last RBD implementation this CLVM seems trivial.
>>
>> A lot of code is still in there and looking at the commit where it got
>> removed it wont be that much work.
>>
>> The problem (and I'm not a licensing expert) is that if I would implement
>> CLVM again it would look a lot like the original code, do we have to refer
>> to the old author for that?
>>
>> I'm assuming here that we won't be able to contact the original author, but
>> we want to keep the CLVM functionality for 4.0.
>>
>> Wido
>
>
> Actually - you should compare the original patches, with what was reverted. :
> http://bugs.cloudstack.org/browse/CS-10317
>
> There was already something of a rewrite when Edison changed how some
> of the storage was handled (which is the iteration that was pulled).
>
> IANAL either, so I won't bother to even try and answer that question.
>
> --David

Get it. I'll take a look at this. Imho it would be bad if we lost this 
functionality in CS 4.0

We could have a lot of users out there who use CLVM and are not aware of 
this being removed in the current code.

Wido

Re: re-implement clvm

Posted by David Nalley <da...@gnsa.us>.
On Tue, Jul 31, 2012 at 3:56 PM, Wido den Hollander <wi...@widodh.nl> wrote:
>
>
> On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
>>
>> I'd be happy to try more if I had access to any contact info.  As it
>> is, things in the surrounding code have changed enough that a bit of
>> re-factoring would need to be done even if there were permission.
>>
>> My hunch is that unless he's switched roles, once the new version is
>> released he may come out of the woodwork wondering why that thing he
>> has a need for and developed is gone.
>
>
> After writing the last RBD implementation this CLVM seems trivial.
>
> A lot of code is still in there and looking at the commit where it got
> removed it wont be that much work.
>
> The problem (and I'm not a licensing expert) is that if I would implement
> CLVM again it would look a lot like the original code, do we have to refer
> to the old author for that?
>
> I'm assuming here that we won't be able to contact the original author, but
> we want to keep the CLVM functionality for 4.0.
>
> Wido


Actually - you should compare the original patches, with what was reverted. :
http://bugs.cloudstack.org/browse/CS-10317

There was already something of a rewrite when Edison changed how some
of the storage was handled (which is the iteration that was pulled).

IANAL either, so I won't bother to even try and answer that question.

--David

Re: re-implement clvm

Posted by Wido den Hollander <wi...@widodh.nl>.

On 07/31/2012 09:48 PM, Marcus Sorensen wrote:
> I'd be happy to try more if I had access to any contact info.  As it
> is, things in the surrounding code have changed enough that a bit of
> re-factoring would need to be done even if there were permission.
>
> My hunch is that unless he's switched roles, once the new version is
> released he may come out of the woodwork wondering why that thing he
> has a need for and developed is gone.

After writing the last RBD implementation this CLVM seems trivial.

A lot of code is still in there and looking at the commit where it got 
removed it wont be that much work.

The problem (and I'm not a licensing expert) is that if I would 
implement CLVM again it would look a lot like the original code, do we 
have to refer to the old author for that?

I'm assuming here that we won't be able to contact the original author, 
but we want to keep the CLVM functionality for 4.0.

Wido

>
> On Tue, Jul 31, 2012 at 1:15 PM, David Nalley <da...@gnsa.us> wrote:
>> On Tue, Jul 31, 2012 at 3:05 PM, Simon Weller <sw...@ena.com> wrote:
>>> I recall David Nalley collecting a Cloudstack/cloud.com ICLA from rommer for this contribution in Q4 of last year.
>>>
>>>
>>> David,
>>>
>>>
>>> Does the ICLA contain any contact information not available on the old cloudstack-devel list?
>>>
>>>
>>> - Si
>>>
>>
>> Simon,
>>
>> It does. I passed on the publicly available information about Rommer
>> (e.g. the email address he submitted patches from)
>> To briefly outline the steps we went through:
>>
>> We had multiple people try and contact Rommer via email.
>> We talked via email with one of his coworkers (successfully).
>> Alena, whose native tongue is Russian, tried reaching out, as well as
>> searching for him on the Russian analogue of Facebook.
>> Citrix had some European counsel try and make contact.
>>
>> None of these attempts have resulted in us acquiring the form giving
>> us permission to relicense his contribution from GPLv3 to ASLv2 - and
>> thus we ended up needing to pull it. I'd love to get this back in
>> though, if people want to try more.
>>
>> --David

Re: re-implement clvm

Posted by Marcus Sorensen <sh...@gmail.com>.
I'd be happy to try more if I had access to any contact info.  As it
is, things in the surrounding code have changed enough that a bit of
re-factoring would need to be done even if there were permission.

My hunch is that unless he's switched roles, once the new version is
released he may come out of the woodwork wondering why that thing he
has a need for and developed is gone.

On Tue, Jul 31, 2012 at 1:15 PM, David Nalley <da...@gnsa.us> wrote:
> On Tue, Jul 31, 2012 at 3:05 PM, Simon Weller <sw...@ena.com> wrote:
>> I recall David Nalley collecting a Cloudstack/cloud.com ICLA from rommer for this contribution in Q4 of last year.
>>
>>
>> David,
>>
>>
>> Does the ICLA contain any contact information not available on the old cloudstack-devel list?
>>
>>
>> - Si
>>
>
> Simon,
>
> It does. I passed on the publicly available information about Rommer
> (e.g. the email address he submitted patches from)
> To briefly outline the steps we went through:
>
> We had multiple people try and contact Rommer via email.
> We talked via email with one of his coworkers (successfully).
> Alena, whose native tongue is Russian, tried reaching out, as well as
> searching for him on the Russian analogue of Facebook.
> Citrix had some European counsel try and make contact.
>
> None of these attempts have resulted in us acquiring the form giving
> us permission to relicense his contribution from GPLv3 to ASLv2 - and
> thus we ended up needing to pull it. I'd love to get this back in
> though, if people want to try more.
>
> --David

Re: re-implement clvm

Posted by David Nalley <da...@gnsa.us>.
On Tue, Jul 31, 2012 at 3:05 PM, Simon Weller <sw...@ena.com> wrote:
> I recall David Nalley collecting a Cloudstack/cloud.com ICLA from rommer for this contribution in Q4 of last year.
>
>
> David,
>
>
> Does the ICLA contain any contact information not available on the old cloudstack-devel list?
>
>
> - Si
>

Simon,

It does. I passed on the publicly available information about Rommer
(e.g. the email address he submitted patches from)
To briefly outline the steps we went through:

We had multiple people try and contact Rommer via email.
We talked via email with one of his coworkers (successfully).
Alena, whose native tongue is Russian, tried reaching out, as well as
searching for him on the Russian analogue of Facebook.
Citrix had some European counsel try and make contact.

None of these attempts have resulted in us acquiring the form giving
us permission to relicense his contribution from GPLv3 to ASLv2 - and
thus we ended up needing to pull it. I'd love to get this back in
though, if people want to try more.

--David

Re: re-implement clvm

Posted by Simon Weller <sw...@ena.com>.
I recall David Nalley collecting a Cloudstack/cloud.com ICLA from rommer for this contribution in Q4 of last year. 


David, 


Does the ICLA contain any contact information not available on the old cloudstack-devel list? 


- Si 

----- Original Message -----

From: "Marcus Sorensen" <sh...@gmail.com> 
To: cloudstack-dev@incubator.apache.org 
Sent: Tuesday, July 31, 2012 1:14:51 PM 
Subject: re-implement clvm {Spam?} 

http://bugs.cloudstack.org/browse/CS-14521 

I understand the licensing issues, but this is going to break the next 
release for us (and has already broken our test environment). I'd like 
to offer a bounty of $800 for a patch that re-implements CLVM. We'll 
pay $200 for a working patch that applies to the current mainline, and 
the rest when its accepted and committed. For reference, here's the 
commit that broke it: bafc3f2a5af771d543f081164d7af4b323012f24 

Thanks