This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: SPARSE files considered harmful - please revert


Christopher Faylor wrote:
On Mon, May 19, 2003 at 07:27:06PM -0400, Bill C. Riemers wrote:

I think you need to read the documentation a little more closely.  Either that
or provide references to the parts of the documentation that says that
normal RW operations would fragment a sparse file.

It is rather obvious. Let say you have three blocks worth of data, and is written into a file with a physical block followed by a sparse block followed by a physical block. No disk space is reserved for the sparse block. Why should it be, as it would defeat the whole purpose of using sparse files? So physically on disk you have two consecutive physical blocks. What then happens if you open the file in RW mode, seek to the sparse block and write some data?


1) You are assuming behavior that isn't documented.  I can imagine that
the first block could occupy, say 16 blocks and depending on the size of
the hole, there could be no fragmentation.
A agree that he is making an assumption, but he is probably right. Even if 16 blocks are reserved for adding intermediate blocks, you would still end up with out-of-order blocks in the file; which isn't as bad as real fragmentation, but isn't as good as all blocks in order.

3) What no one seems to be mentioning is that we are trying to emulate
UNIX behavior here.  If the above is an issue for Windows then it could
also be an issue for UNIX.
cgf
And it is.



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]