-
Bug
-
Resolution: Fixed
-
P3
-
7u4, 8
-
b36
-
generic, x86
-
os_x
-
Verified
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-2224612 | 7u6 | Sean Coffey | P3 | Closed | Fixed | b12 |
Apple donated their KQueue based SelectorProvider implementation to the macosx project:
http://hg.openjdk.java.net/macosx-port/macosx-port/jdk/rev/cb5ebc902d33
Unfortunately this SelectorProvider implementation has several issues and many tests are failing. For 7u4 we have changed the default SelectorProvider on Mac to be the poll based SelectorProvider, pending resolution of the bugs. Apple's KQueue SelectorProvider is included of course and folks can try it out with -Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.KQueueSelectorProvider if they are interested.
For JDK8 we need to re-visit this and make the KQueue based Selector the default on Mac.
As reference we implemented the asynchronous I/O API using KQueue:
http://hg.openjdk.java.net/jdk7u/jdk7u-dev/jdk/rev/5599aa5a4a51
http://hg.openjdk.java.net/macosx-port/macosx-port/jdk/rev/cb5ebc902d33
Unfortunately this SelectorProvider implementation has several issues and many tests are failing. For 7u4 we have changed the default SelectorProvider on Mac to be the poll based SelectorProvider, pending resolution of the bugs. Apple's KQueue SelectorProvider is included of course and folks can try it out with -Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.KQueueSelectorProvider if they are interested.
For JDK8 we need to re-visit this and make the KQueue based Selector the default on Mac.
As reference we implemented the asynchronous I/O API using KQueue:
http://hg.openjdk.java.net/jdk7u/jdk7u-dev/jdk/rev/5599aa5a4a51
- backported by
-
JDK-2224612 (se) Stabilize KQueue SelectorProvider and make default on MacOSX
-
- Closed
-
- duplicates
-
JDK-7159361 (se) Selector.select hang due to poll(2) bug [macosx]
-
- Closed
-