On Qui, 2008-02-07 at 12:48 -0800, Matthew Ahrens wrote: > First, note that the problem is quite constrained: > > There are a fixed number of attribute names (for any given software version) > since these are interpreted system attributes. Therefore the attribute names > can be a small number, rather than a string -- ie, we have an enum that > defines the attributes. We (ie, OpenSolaris) can control the allocation of > new enum values in this namespace.
Since we are on the subject of redesigning attributes, have you considered providing a lighter-weight extended attribute mechanism to userspace applications such as Beagle ( http://beagle-project.org/Enabling_Extended_Attributes ), Meta Tracker ( http://www.gnome.org/projects/tracker/ ), Apache (mime types), etc? It seems to me that the usefulness of extended attributes is to efficiently store small amounts of information associated with a file, and I think these would make more sense to be in the dnode (possibly making it 1K by default) or in a single external object if it doesn't fit into the dnode. There's a de-facto namespace standard for EAs that specifies some existing and proposed attributes that could give you some ideas about this: http://freedesktop.org/wiki/CommonExtendedAttributes Of course, this would still require storing the EA names in the dnode, but I think the added flexibility of being able to efficiently store arbitrary EAs would be worth it. And also, the large dnodes feature that we have are working on makes it rather easy to create filesystems with bigger dnodes. Thanks, Ricardo -- Ricardo Manuel Correia Lustre Engineering Sun Microsystems, Inc. Portugal Phone +351.214134023 / x58723 Mobile +351.912590825 Email Ricardo.M.Correia at Sun.COM -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.opensolaris.org/pipermail/zfs-code/attachments/20080207/6893050e/attachment.html> -------------- next part -------------- A non-text attachment was scrubbed... Name: 6g_top.gif Type: image/gif Size: 1257 bytes Desc: not available URL: <http://mail.opensolaris.org/pipermail/zfs-code/attachments/20080207/6893050e/attachment.gif>