gluster-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gluster-devel] The next version of UFO


From: Kaleb S. KEITHLEY
Subject: Re: [Gluster-devel] The next version of UFO
Date: Fri, 07 Dec 2012 07:44:58 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:15.0) Gecko/20120911 Thunderbird/15.0.1


Yesterday the last set of changes to UFO described below were merged to the git tree.

If no one objects, I'd like to put a ufo-1.1.tar.gz on download.gluster.org with the latest bits from the git tree. (Do we know what the original tar file was named on the old download.g.o before it was compromised?)

Then we're ready to proceed with moving to OpenStack Swift 1.7.4 (Folsom), which we think will largely be a no-op.

On 11/29/2012 12:35 PM, Kaleb Keithley wrote:

As it stands right now, there are some problems with our UFO implementation; 1) 
it’s based on
OpenStack Swift-1.4.8 (Essex), which is rapidly becoming obsolete, if it isn’t 
already; 2) it
doesn’t use Keystone, it uses tempauth, which doesn’t scale; 3) the 
implementation is a heavily
patched version of swift — a patch that is so intrusive that will make it very 
difficult to port
UFO to the current version of Swift (1.7.4, Folsom) and later; and 4) fixing 
performance bugs is
hard, we think it'll be easier to fix them if we clean up the implementation 
first.

Not only is the patch so big that it’s hard to port, but it has been deemed by 
some to be —
essentially — a fork of Swift. Needless to say, we don’t want to maintain a 
fork in perpetuity,
nor do we want to make moving to newer versions hard (because that would be yet 
another fork),
and we want to be good Open Source citizens and not unnecessarily fork things 
that don’t need
to be forked. And theory says if we make porting to new versions simple and 
easy, then we can
minimize the lag between OpenStack’s releases and our own releases of UFO. And 
if we can make
UFO be completely version agnostic when it comes to Swift; then, when new 
versions of Swift are
released, UFO will automatically work with it with no effort on our part.

To that end, we’re working on rewriting UFO. Instead of patching the Swift 
sources, we’re
implementing a set of layered subclasses that contain the UFO functionality 
outside of Swift
per se. This implementation does rely on a patch of code that has been accepted 
into the Swift
1.7.5 source. It’s referred to it as the constraints-config-backport patch. 
We’re lobbying the
Fedora community to accept the constraints-config-backport patch into the 
openstack-swift RPMs
that they distribute so that we do not have to provide our lightly patched 
version of Swift in
the glusterfs RPMs.

These changes are already on the HEAD of the glusterfs git tree. I have a set 
of RPMs in an
experimental YUM repo at 
http://repos.fedorapeople.org/repos/kkeithle/glusterfs/XX-ufo/ and
instructions for setting up UFO are in my blog article at 
http://www.gluster.org/2012/11/a-better-
ufo-is-coming-soon/

Ultimately we'd like to get buy-in from the community and move toward shipping 
this new 1.1
implementation of UFO relatively soon. The sooner we ship this — still based on 
Swift 1.4.8 —
the sooner we can roll out the next one, based on Swift 1.7.4 (or later).

So give it a try, let us know what you think. If you have questions, please 
don't hesitate to ask.


--

Kaleb



reply via email to

[Prev in Thread] Current Thread [Next in Thread]