mesos-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrew Schwartzmeyer (JIRA)" <>
Subject [jira] [Commented] (MESOS-8676) Fix os::read and os::write to use HANDLES
Date Wed, 02 May 2018 02:29:00 GMT


Andrew Schwartzmeyer commented on MESOS-8676:

This issue now covers replacing the CRT API with an overlapped compatible API. Adding the
overlapped part is MESOS-8670.

> Fix os::read and os::write to use HANDLES
> -----------------------------------------
>                 Key: MESOS-8676
>                 URL:
>             Project: Mesos
>          Issue Type: Task
>            Reporter: Andrew Schwartzmeyer
>            Assignee: Andrew Schwartzmeyer
>            Priority: Major
>              Labels: stout, windows
> When fixing {{os::open}} to open real Windows {{HANDLE}} s to files in a default overlapped
mode, we'll need to fix {{os::read}} and {{os::write}} to work with these. Since these functions
are inherently synchronous, we'll just use overlapped I/O but wait for completion, making
the action synchronous.
> Caveat: when files on Windows are opened in overlapped mode, they no longer retain state
about the offset. Because these functions currently use the CRT APIs {{_read}} and {{_write}},
they act like POSIX file descriptors which are advanced by N bytes per read and write. We
can mimic this behavior by saving the offset state in the {{WindowsFD}} abstraction.
> Also fix use of {{WSAGetLastError}} since not all reads/writes are on sockets.

This message was sent by Atlassian JIRA

View raw message