[ https://issues.apache.org/jira/browse/BOOKKEEPER-816?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15968064#comment-15968064 ]
ASF GitHub Bot commented on BOOKKEEPER-816: ------------------------------------------- Github user athanatos commented on the issue: https://github.com/apache/bookkeeper/pull/80 @sijie @eolivelli If I'm reading this right, you are trying to use sync_file_range to avoid calling FileChannel.force, which presumably calls fsync. You actually can't use sync_file_range to ensure durability -- all it does it write out the dirty pages, it won't write out allocation information and (crucially) it won't issue the barriers required to flush volatile caches. See http://man7.org/linux/man-pages/man2/sync_file_range.2.html, particularly: "This system call does not flush disk write caches and thus does not provide any data integrity on systems with volatile disk write caches." See also http://www.spinics.net/lists/ceph-devel/msg03995.html wherein Christoph Hellwig removes the same behavior in Ceph. > use native fallocate & sync_file_range to improve journal allocation > -------------------------------------------------------------------- > > Key: BOOKKEEPER-816 > URL: https://issues.apache.org/jira/browse/BOOKKEEPER-816 > Project: Bookkeeper > Issue Type: Improvement > Components: bookkeeper-server > Reporter: Sijie Guo > Assignee: Sijie Guo > Fix For: 4.5.0 > > > it'd better to leverage filesystem fallocate & sync_file_range for journal > performance. -- This message was sent by Atlassian JIRA (v6.3.15#6346)