On 3 April 2018 at 14:36, Anthony Iliopoulos <ail...@altatus.com> wrote:
> If EIO persists between invocations until explicitly cleared, a process > cannot possibly make any decision as to if it should clear the error I still don't understand what "clear the error" means here. The writes still haven't been written out. We don't care about tracking errors, we just care whether all the writes to the file have been flushed to disk. By "clear the error" you mean throw away the dirty pages and revert part of the file to some old data? Why would anyone ever want that? > But instead of deconstructing and debating the semantics of the > current mechanism, why not come up with the ideal desired form of > error reporting/tracking granularity etc., and see how this may be > fitted into kernels as a new interface. Because Postgres is portable software that won't be able to use some Linux-specific interface. And doesn't really need any granular error reporting system anyways. It just needs to know when all writes have been synced to disk. -- greg