From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andreas Dilger Subject: Re: common layout xattr Date: Fri, 17 Jul 2009 00:45:18 -0400 Message-ID: <20090717044518.GB4207@webber.adilger.int> References: <1247693090-27796-13-git-send-email-sage@newdream.net> <1247693090-27796-14-git-send-email-sage@newdream.net> <1247693090-27796-15-git-send-email-sage@newdream.net> <1247693090-27796-16-git-send-email-sage@newdream.net> <1247693090-27796-17-git-send-email-sage@newdream.net> <1247693090-27796-18-git-send-email-sage@newdream.net> <20090715220514.GJ14175@webber.adilger.int> <20090716051331.GL14175@webber.adilger.int> Mime-Version: 1.0 Content-Type: text/plain; CHARSET=US-ASCII Content-Transfer-Encoding: 7BIT Cc: linux-fsdevel@vger.kernel.org To: Sage Weil Return-path: Received: from sca-es-mail-2.Sun.COM ([192.18.43.133]:33335 "EHLO sca-es-mail-2.sun.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751686AbZGQEpn (ORCPT ); Fri, 17 Jul 2009 00:45:43 -0400 Received: from fe-sfbay-09.sun.com ([192.18.43.129]) by sca-es-mail-2.sun.com (8.13.7+Sun/8.12.9) with ESMTP id n6H4jhI7005892 for ; Thu, 16 Jul 2009 21:45:43 -0700 (PDT) Content-disposition: inline Received: from conversion-daemon.fe-sfbay-09.sun.com by fe-sfbay-09.sun.com (Sun Java(tm) System Messaging Server 7u2-7.02 64bit (built Apr 16 2009)) id <0KMW00G00T7OJM00@fe-sfbay-09.sun.com> for linux-fsdevel@vger.kernel.org; Thu, 16 Jul 2009 21:45:43 -0700 (PDT) In-reply-to: Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Jul 16, 2009 15:29 -0700, Sage Weil wrote: > The fs would need to add in any unspecified local settings with defaults, > so that in general reading the xattr will still always fully describe the > layout. The filesystem pretty much has to do that already, because currently no layout information is passed to the filesystem with the majority of file creates. > So in your example, on fsX (Lustre) you might see > > chunk_bytes=65536 > stripe_count=32 > mirror_count=3 > raid_type=1+0 > > On fsY (ceph) you might see > > chunk_bytes=65536 > stripe_count=32 > mirror_count=3 (ceph ignores) > raid_type=1+0 (ceph ignores) > max_object_size=64MB (ceph adds) Hmm, I thought Ceph had replication for files? "mirror_count" was intended to indicate the number of copies of that file that are maintained. Maybe it needs a better name? > and back on fsX (Lustre) you'd get > > chunk_bytes=65536 > stripe_count=32 > mirror_count=3 > raid_type=1+0 > max_object_size=64MB (lustre ignores) Exactly what I was thinking. > How would you indicate which parameters are being ignored? Something > easily parsed (and ignored) when setting the xattr. I was just thinking something like a prefix or postfix character: chunk_bytes=65536 stripe_count=32 mirror_count=3 raid_type=1+0 *max_object_size=64MB or max_object_size=64MB* It might also make sense to use "*" (or some other character) to indicate values that are the filesystem-wide default values, and not store them either, but that isn't a well-formed opinion yet. Even dynamically-added "comments" might be OK, like: chunk_bytes=65536 # default stripe_count=32 # default mirror_count=3 raid_type=1+0 # default max_object_size=64MB # unknown > As long as the common parameter names are somewhat standardized, this > seems straightforward enough. Good, I don't want anything too complex. Cheers, Andreas -- Andreas Dilger Sr. Staff Engineer, Lustre Group Sun Microsystems of Canada, Inc.