I wrote: > I fooled around with this idea and came up with the attached patch. > It seems to do what's intended but could do with more eyeballs and > testing before committing. Comments please?
Earlier I said that I didn't want to back-patch this change, but on looking at the CVS history I'm reconsidering. The performance problem originates from the decision some time ago to do an AbsorbFsyncRequests every so often during the mdsync loop; without that, and assuming no actual failures, there isn't any absorption of new requests before mdsync can complete. Originally that code only existed in 8.2.x, but very recently we back-patched it into 8.1.x as part of fixing the file-deletion-on-Windows problem. This means that 8.1.x users could see a performance degradation upon updating to 8.1.8 from prior subreleases, which wouldn't make them happy. So I'm now thinking we ought to back-patch into 8.2.x and 8.1.x, but of course that makes it even more urgent that we test the patch thoroughly. regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 6: explain analyze is your friend