https://bugs.openldap.org/show_bug.cgi?id=10296

          Issue ID: 10296
           Summary: Force a Mac OS full flush
           Product: LMDB
           Version: unspecified
          Hardware: All
                OS: Mac OS
            Status: UNCONFIRMED
          Keywords: needs_review
          Severity: normal
          Priority: ---
         Component: liblmdb
          Assignee: [email protected]
          Reporter: [email protected]
  Target Milestone: ---

Created attachment 1045
  --> https://bugs.openldap.org/attachment.cgi?id=1045&action=edit
Use a F_FULLFSYNC fcntl when committing on Mac OS

Hello Howard and Happy New Year,

As discussed in this issue [1], the LMDB durability is incorrect when
committing. I propose the following patch that uses fcntl with the F_FULLFSYNC
flag. The fcntl documentation is on this page [2].

Note that I kept the calls to msync/fsync for simplicity and because they don't
cost much but feel free to skip them on Mac OS.

Have a nice day,
kero

[1]: https://github.com/cberner/redb/pull/928#issuecomment-2567032808
[2]:
https://developer.apple.com/library/archive/documentation/System/Conceptual/ManPages_iPhoneOS/man2/fcntl.2.html

-- 
You are receiving this mail because:
You are on the CC list for the issue.

Reply via email to