KF> On Mon, 30 Jul 2001, Alexander Zarochentcev wrote:
>> As you see reiserfs_dir_fsync does transaction commit and waits until
>> it is done. In short, all modified metadata blocks are being written
>> to disk.
>>
>> Reiserfs works fast if can join many logical transactions into one and
>> commit that huge transaction once. If reiserfs does many commits
>> (application often calls dir_fsync, for example) for small
>> transactions it slows reiserfs.
KF> Hi Alex.
KF> Thanks for your reply. My understanding of how this works is getting a bit
KF> better now :) But I need to acknowledge one small file written to disk at
KF> a time, sort of like in a mail system. Since I need to guarantee that the
KF> file is there, metadata and data, I fsync(tmpfile), rename(tmpfile,file)
KF> and fsync(dir) for every file, I was wondering if the entire directory is
KF> written every time, or perhaps just the one block that contains the
KF> difference from last time, if it is possible to separate this out.
Reiserfs does not write entire directory, only blocks
contain modified data.
KF> I was
KF> hoping it would be possible to make it run a bit faster.
KF> I hope this wasn't all too obvious from the mail you sent, but I couldn't
KF> make it out. :-)
KF> Ketil
--
Thanks,
Alex.