Dan Kennedy wrote:
On 04/04/2013 08:44 PM, Howard Chu wrote:
Richard Hipp wrote:
The memory-mapped I/O is only enabled for windows, linux, mac OS-X, and
solaris.  We have found that it does not work on OpenBSD, for reasons we
have not yet been able to uncove; but as a precaution, memory mapped
I/O is
disabled by default on all of the *BSDs until we understand the problem.

As I understand it, OpenBSD lacks a unified buffer cache. They reported
problems with LMDB in its default mode, too.

But it works in some non-default mode? When both reads and writes are
done via memory mapping? Or some other trick?

Right. It works if you use a writable mmap and do all reads and writes thru the map. But any process that comes along and accesses the file using read will see invalid/stale information, and start double-caching the file pages.

--
  -- Howard Chu
  CTO, Symas Corp.           http://www.symas.com
  Director, Highland Sun     http://highlandsun.com/hyc/
  Chief Architect, OpenLDAP  http://www.openldap.org/project/
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to