
Russell Coker <russell@coker.com.au> writes:
Also note that dpkg calls sync() a lot and thus gives poor performance when installing packages on BTRFS. As an aside, I'm proud to have filed the bug report against dpkg which led to this.
FTR, note that the way dpkg calls sync changed significantly between debian 6 and 7 -- ubuntu 10.04 was partway through that transition and uses a third method that was briefly tried, then abandoned. This happened because ext4's default write delay was a lot longer than ext3's default, which led to data loss in unusual cases, and the increased syncing dpkg added to deal with that ran into serious performance issues on btrfs. In Debian 7 you can add force-unsafe-io to dpkg.cfg to turn off some of these syncs; using eatmydata (LD_PRELOAD wrapper than noops sync syscalls) makes it slightly faster still, and works on Debian 6 and Ubuntu 10.04. http://bugs.debian.org/430958 is the bug you're referring to? http://bugs.debian.org/575891 is mine :-)