GNOME Bugzilla – Bug 742482
checkout: Add --fsync=false
Last modified: 2015-01-07 16:58:09 UTC
Some use cases for checkouts don't need to fsync during checkout. Installer programs for example will just do a global fsync at the end. In the future, the default "ostree admin" core could also be rearchitected to only do a transaction commit right before reboot, and do the fsync then.
Created attachment 293977 [details] [review] checkout: Add --fsync=false
Review of attachment 293977 [details] [review]: Tested this and can confirm that it fixes the performance issues with 'ostree checkout'.
Review of attachment 293977 [details] [review]: Looks good to me overall. The bit in ostree-repo-checkout.c where you retry fsync() on EINTR feels like it could be a utility function. Don't know how important it is to do that everywhere.
Attachment 293977 [details] pushed as f23f556 - checkout: Add --fsync=false
Yeah, there are places where we aren't retrying on EINTR where we should be, either =(