On Thu, Aug 30, 2018 at 11:00:43AM +0300, Konstantin Knizhnik wrote: > So if "isdir" is true (and it is true in this case), it sets O_RDONLY > flag. Then fsync_fname successfully opens slot file in readonly mode > and calls fsync() which at windows is substituted with _commit() which > in turn is wrapper for FlushFileBuffers.
It seems to me that you are right here, "path" points to pg_replslot/$SLOTNAME/state which is a file so the fsync is incorrect. I am not sure that we'd want to publish fsync_parent_path out of fd.c though, so perhaps we could just save the slot path in a different variable and use it? -- Michael
signature.asc
Description: PGP signature