-
Bug
-
Resolution: Fixed
-
P3
-
7
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-2225797 | 7u6 | Sean Coffey | P3 | Closed | Fixed | b17 |
Windows does not support asynchronous close on sockets when doing blocking operations with a buffer size >= 128k. The long standing Microsoft recommendation is to limit such I/O operations to 64k. Since 6395224 then we limit I/O operations to 128k-1 so that asynchronous close works as specified but a side effect of this is that attempts to write 128k+ bytes will be result in a short write. This is not an issue for applications that check the return value from write but is a problem for applications that don't check the return value. This bug is submitted to re-visit this issue with a view to the write(ByteBuffer) method writing as many bytes as possible.
- backported by
-
JDK-2225797 (sc) SocketChannel.write does not write more than 128k when channel configured blocking [win]
- Closed
- relates to
-
JDK-6395224 (so) SocketChannel writer blocked on large buffer is not preempted by close method (vista)
- Closed
-
JDK-7074436 (sc) SocketChannel can do short gathering writes when channel configured blocking (win)
- Closed