"Qingqing Zhou" <[EMAIL PROTECTED]> writes: > That is, we don't care if a segment is dirty or not, if someone opened it, > then we will fsync it at checkpoint time.
On platforms that I'm familiar with, an fsync call causes the kernel to spend a significant amount of time groveling through its buffers to see if any are dirty. We shouldn't incur that cost to buy marginal speedups at the application level. (In other words, "it's only an open/close" is wrong.) Also, it's not clear to me how this idea works at all, if a backend holds a relation open across more than one checkpoint. What will re-register the segment for the next cycle? regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 4: Don't 'kill -9' the postmaster