On 04/24/2013 10:25 PM, Richard Hipp wrote:
> SQLite is using posix_fallocate() to allocate space for a region of shared
> memory obtained using mmap().  If the space cannot be preallocated, then
> when we use the mmapped region and an attempt is made to allocate the space
> and the filesystem is full, we'll get a SIGBUS signal.
> 
> So what you seem to be saying is that if you (1) use ZFS and (2) use mmap()
> and (3) your filesystem fills up, then there is nothing your application
> can do to avoid a SIGBUS.  Am I missing something here?

That's pretty much it. Put simply, writes to ZFS cannot be guaranteed to
succeed when the filesystem is full, regardless of whether the app is
overwriting existing file data, or appending new file data; there simply
is no "ovewrite" operation.

Cheers,
--
Saso
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to