From mboxrd@z Thu Jan 1 00:00:00 1970 From: Josh Durgin Subject: Re: rbd volume upgrades Date: Fri, 09 Nov 2012 11:30:36 -0800 Message-ID: <509D59DC.60706@inktank.com> References: <509D53BD.6020706@inktank.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: Received: from mail-pb0-f46.google.com ([209.85.160.46]:60247 "EHLO mail-pb0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753073Ab2KITbC (ORCPT ); Fri, 9 Nov 2012 14:31:02 -0500 Received: by mail-pb0-f46.google.com with SMTP id rr4so3041828pbb.19 for ; Fri, 09 Nov 2012 11:31:01 -0800 (PST) In-Reply-To: Sender: ceph-devel-owner@vger.kernel.org List-ID: To: Yehuda Sadeh Cc: Gregory Farnum , "ceph-devel@vger.kernel.org" On 11/09/2012 11:08 AM, Yehuda Sadeh wrote: > On Fri, Nov 9, 2012 at 11:04 AM, Josh Durgin wrote: >> On 11/09/2012 11:01 AM, Gregory Farnum wrote: >>> >>> I was asked today if there's a way to upgrade RBD volumes from v1 to >>> v2. I didn't think so, but wanted >>> 1) to make sure I'm right, >>> 2) to ask how hard it would be, >>> 3) to ask if we haven't done it because it didn't occur to us or >>> because it's too hard. >>> -Greg >>> >> >> This was addressed in the original discussions about format 2. >> >> You need to export and then import the volume as format 2. Format 2 uses >> different names for objects, so providing an 'upgrade' path would still >> require copying all the data around. >> > Couldn't we just set a flag in the header specifying the object naming > version, which would then only require updating the header? > > Yehuda The header was separated from the id object to allow renames to work while the image was in use or with cloning. The whole header format changed and moved to a different object as a result. It would be messy to implement this kind of upgrade, and doesn't provide much benefit when there's an easy way to convert already. If someone really wanted it, it could be implemented, but otherwise I don't think it's worth adding. It would have to be added to the upcoming kernel layering support too. Josh