Full_Name: Dmitri Bogomolov Version: 2.4.28 OS: Gentoo/FreeBSD URL: ftp://ftp.openldap.org/incoming/dmitri-bogomolov-120314.patch Submission from: (NULL) (176.36.139.33) As I can see, FreeBSD have no O_DSYNC, no fdatasync(fd). I've been able to build openldap-2.4.30 with trivial fix. Can you please include it in next version?
4glitch@gmail.com wrote: > Full_Name: Dmitri Bogomolov > Version: 2.4.28 > OS: Gentoo/FreeBSD > URL: ftp://ftp.openldap.org/incoming/dmitri-bogomolov-120314.patch > Submission from: (NULL) (176.36.139.33) > > > As I can see, FreeBSD have no O_DSYNC, no fdatasync(fd). I've been able to build > openldap-2.4.30 with trivial fix. > > Can you please include it in next version? No. Compile with -DMDB_SYNC and -DMDB_FDATASYNC yourself like it says in the comments in mdb.c. -- -- Howard Chu CTO, Symas Corp. http://www.symas.com Director, Highland Sun http://highlandsun.com/hyc/ Chief Architect, OpenLDAP http://www.openldap.org/project/
changed state Open to Closed
03/14/2012 11:08 PM, Howard Chu написав(ла): > No. Compile with -DMDB_SYNC and -DMDB_FDATASYNC yourself like it says > in the comments in mdb.c. > Why ANDROID and __APPLE__ special? mdb.c contains definitions of fdatasync(fd) for it.
Thanks for your report. We need to hear of OSes which do not provide O_DSYNC and fdatasync() and how to deal with them, so for now MDB demands them unless explicitly disabled. But the solution will not be a bunch of '#if <OS>'es. Maybe some POSIX feature test macros will be enough, or maybe we can use configure and wrap libmdb/mdb in back-mdb/mdb-wrap.c which makes use of the configure macros. On Wed, 14 Mar 2012 21:34:37 GMT, 4glitch@gmail.com wrote: > Why ANDROID and __APPLE__ special? I can't speak for Howard, but: Got there during development. MDB is still evolving. The solution will not be a bunch of '#ifdef <OS>'es. Maybe some POSIX feature test macros will be enough, or maybe we can use configure and wrap libmdb/mdb in back-mdb/mdb-wrap.c which makes use of the configure macros. -- Hallvard
fixed in mdb.master
changed notes changed state Closed to Test moved from Incoming to Build
changed state Test to Closed