"Guoping Zhang" <guoping.zhang@xxxxxxxxxx> writes: > a) The tests consists of ten thousands very small transactions, which are > not grouped, that is why so slow with compare to set fsync off. Yup. > c) wal_sync_method is set to 'open_datasync', which is fastest among the > four, right? Well, is it? You shouldn't assume that without testing. > Looks like, if we have to set fsync be true, we need to modify our > application. Yes, you should definitely look into batching your operations into larger transactions. On normal hardware you can't expect to commit transactions faster than one per disk revolution (unless they're coming from multiple clients, where there's a hope of ganging several parallel commits per revolution). Or buy a disk controller with battery-backed write cache and put your faith in that cache surviving a machine crash. But don't turn off fsync if you care about your data. regards, tom lane