On Sat, 15 Feb 2003, Matthew Toseland wrote:
> On Thu, Feb 13, 2003 at 01:02:07PM -0500, Jeff Teitel wrote:
> >
> > Some time ago I asked how I could split my datastore across multiple
> > filesystems. The answer I got was to creat symbolic links from the store
> > directory to the other FS. I've done this but it doesn't seem to work.
>
> I have investigated further. The straight answer is you can't. We could
> implement a rename across filesystems call, but we'd end up copying data
> while holding important locks; this is not a good idea. Just use LVM to
> combine the disks, or run multiple nodes.
As a note, you can pretty much depend on files in the same directory
being on the same filesystem. (It would take extremely unusual setups
to change that)
Therefore, you can copy to {datastore}/04/.1-XXXXX and rename that file
to {datastore}/04/1-XXXXX. Only the rename would need to be inside the
lock.
I don't know of any system that supports a "rename across filesystems",
since that can block for an arbitrarily long time. The standard program
mv(1) actually attempts to rename first, then emulates cp(1) if the
rename fails.
--Dan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 155 bytes
Desc: not available
URL:
<https://emu.freenetproject.org/pipermail/devl/attachments/20030319/0393c40f/attachment.pgp>