Hi Alan, Michael,

The test has a connected TCP socket and performs individual writes of only 2 bytes on one end. It does not read off the data on the other end. After 8 writes, on the 9th, the write blocks. Clearly the send buffer has not been exhausted, but after some experimenting it can be shown that you can only write more data if some is read off.

This only occurs when both ends of the socket are on the same host. This is a result of the Solaris TCP Fusion feature. See the bug description for more details.

The solution is to amend the test to have the producer and consumer on separate threads. Also, cleaned up a few NPE I noticed when running the test on various systems.

Webrev:
  http://cr.openjdk.java.net/~chegar/6934923/webrev.00/webrev/

-Chris.

Reply via email to