Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

This rambles a bit. Here's the summary:

btrfs is currently optimized for normal applications that do open("foo", O_RDWR). With this mode, integrity semantics are quite loose in POSIX.

Because VMs emulate physical hardware with strong integrity semantics, they usually do either open("foo", O_DIRECT) or open("foo", O_SYNC).

btrfs sucks for O_SYNC. It's not just VMs, databases also tend to make heavy use of O_SYNC.



Ironic that BTRFS is sponsored by Oracle then!


A lot of filesystems don't optimize O_SYNC heavily until it becomes necessary. ext4 has really bad O_SYNC performance until pretty recently FWIW.

Given where BTRFS is right now development wise, it's not at all surprising O_SYNC hasn't been optimized yet.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: