site_archiver@lists.apple.com Delivered-To: darwin-dev@lists.apple.com Thanks for a great explanation. A similar thread has come up on the sqlite list, claiming that using F_FULLFSYNC leads to dramatic performance decreases on Darwin over other platforms. Any thoughts on these issues? I noticed this as well, so I profiled my call and found sync was taking forever. I removed the following fcntl call, rc = fcntl(fd, F_FULLFSYNC, 0);. Performance was back to normal. ... but the security provided by F_FULLSYNC is lost. = Mike _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-dev mailing list (Darwin-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-dev/site_archiver%40lists.appl... If you were to use those platforms' functionality (where avaialble) to force a full push to disk, you would see similar performance regressions. It's a simple question of performance vs. reliability; in order to give the best guarantee that data has made it to stable storage, the system has to spend a (relatively) long time waiting for the disk. If you want performance, that wait is unacceptable. If you want reliability, the uncertainty that the disk (and sometimes controller) cache(s) introduce is unacceptable. At least Darwin gives you the choice; it's up to you to make the tradeoff that suits your application's needs. This email sent to site_archiver@lists.apple.com
participants (1)
-
Mike Smith