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

RE: [ogfs-dev]ogfs_jadd and EVMS FSIM



On Wed, 2003-04-16 at 11:58, Cahill, Ben M wrote:
> > -----Original Message-----
> > From: Joe DiMartino [mailto:joe@osdl.org]
> > Sent: Tuesday, April 15, 2003 6:48 PM
> > To: Open GFS
> > Subject: Re: [ogfs-dev]ogfs_jadd and EVMS FSIM
>  
> > > I'm thinking still louder. :)
> > > 
> > > Each CFS is made from 2 volumes. The first volume holds the 
> > actual file
> > > system and the other volume holds the journal. The journal volume is
> > > segregated into logical chunks which hold journaling information per
> > > node. An example would be  from offset 0 to offset x  belongs
> > > the journal of node 1,  offset x+1 to 2x belongs to journal 
> > of node2,
> > > and so on. This way you dont have to create a journal 
> > volume for each
> > > additional node that adds to the cluster. And if space in 
> > the journal
> > > runs out as node get added, the journal volume can be expanded.
> > > 
> > > Does this sound reasonable?
> > > Ram Pai
> > 
> > Yes, it sounds reasonable to me.  It should work with 
> > discreet journals
> > or combined ones.  The real question would be how to specify that a
> > single volume could/should be split and make the divisions known to
> > the FS.
> 
> I've been avoiding this problem by assuming each external journal is on a
> separate /dev/something.  mkfs.ogfs queries the /dev/something with ioctl
> BLKGETSIZE to find out its capacity.  This is a seemingly "universal" way of
> achieving this, with no dependency on a particular new API or scripting or
> other protocol.
> 
> It would not be a big stretch, though, to create several journals on a given
> device.  e.g., using a config file, if several journals are specified on the
> same device (I've made this illegal in the first round of external journal
> support, for now), then simply divide the BLKGETSIZE space equally among
> all.

What if you specify /dev/something with an offset and size (as was
suggested).  All entries in the config file can be checked for overlap.

> # Number of journals
> journals  2
> 
> # Journal definitions.
> # Internal journals may specify a size in MBytes (not required)
> # External journals must specify a journal device (required)
> journal  0  ext  /dev/sdb3
> journal  1  int  256

Also, Re: 'Number of journals' entry.  I didn't mind seeing it there
because I thought you were going to use it as the "current max" for
near-future growth.  Even though only journal 0 and 1 are defined in
the config file, the 'journals' entry makes sure to size the pointers
(external) and/or journal area (internal) appropriately.  Maybe it
can be optional - if not specified, total up the 'journal' entries
(as suggested).

-- Joe DiMartino <joe@osdl.org>




-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Opengfs-devel mailing list
Opengfs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opengfs-devel

[Kernel]     [Security]     [Bugtraq]     [Photo]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Clusters]     [Linux RAID]     [Yosemite Hiking]     [Linux Resources]

Powered by Linux