On Wed, Oct 30, 2019 at 12:13 AM Thomas Munro <thomas.munro@gmail.com> wrote:
> On Tue, Oct 29, 2019 at 9:23 PM ZhenHua Cai <zhhua.cai@gmail.com> wrote:
> > No, it doesn't call any in-core code.
>
> I wondered if this could be coming from the new code in
> src/port/pg_p{read,write}.c. ERROR_HANDLE_EOF is a documented
> GetLastError() return value after ReadFile() fails[1], but only for
> asynchronous files. We are using that interface ("overlapped" IO,
> their name for asynchronous IO, but the same interface can also do
> synchronous IO and happens to support an offset like Unix's pread()),
> but we're not opening file handles with FILE_FLAG_OVERLAPPED so we
> have a plain old synchronous handle here.
> [1] https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-readfile
Hi,
With a little help we got to the bottom of this:
https://www.postgresql.org/message-id/flat/CAC%2BAXB0_zNFUH1BrRGKUkFxvq3SxsojroJN70iTUA1gUNn_gag%40mail.gmail.com#cb324760c6a142ec4ed6abefa8e68f18
It should be fixed in the next release. Thanks for the report!