RFR: 8245194: Unix domain socket channel implementation [v20]
Michael McMahon
michaelm at openjdk.java.net
Wed Oct 14 17:46:26 UTC 2020
On Wed, 14 Oct 2020 14:21:13 GMT, Daniel Fuchs <dfuchs at openjdk.org> wrote:
>> Michael McMahon has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev
>> excludes the unrelated changes brought in by the merge/rebase. The pull request contains 22 additional commits since
>> the last revision:
>> - Merge branch 'master' into unixdomainchannels
>> - - reorganised the channel impls back into SocketChannelImpl and ServerSocketChannelImpl
>> - removed the new Unix domain socket events and folded the behavior into the existing socket events
>> - implemented other comments from Alan on Oct 11.
>> - unixdomainchannels: updates from Chris's review 9 Oct 2020
>> - unixdomainchannels:
>> - updated property name
>> - added JFR unit test
>> - Merge branch 'master' into unixdomainchannels
>> - - update after Alan's review on Oct 4
>> - includes API change required by JDK-8251952
>> - original CSR for the overall change will be resubmitted with
>> all api changes consolidated based on this update
>> - - simplified Copy.gmk to CAT source files directly
>> - renamed net.properties source files to all be net.properties
>> - unixdomainchannels: error in the last commit in make/modules/java.base/Copy.gmk
>> - unixdomainchannels:
>> (1) rename UnixDomainHelper to UnixDomainSocketsUtil
>> (2) remove hardcoded /tmp and /var/tmp paths from UnixDomainSocketsUtil
>> (3) replace (2) with documented system/networking properties
>> (4) Small update to UnixDomainSocketAddress API
>> (5) CSR for (3) and (4) submitted at JDK-8253930
>> (6) Update build to generate net.properties from shared net.properties.common
>> plus platform specific additions.
>> - Merge branch 'master' into unixdomainchannels
>> - ... and 12 more: https://git.openjdk.java.net/jdk/compare/918de17d...7f677d5a
>
> test/jdk/java/nio/channels/unixdomain/Bind.java line 178:
>
>> 176: SocketAddress a = client.getLocalAddress();
>> 177: assertAddress(a, nullAddr, "null address");
>> 178: assertEquals(a, UNNAMED);
>
> If after binding, the client's localAddress is still unnamed, and if the file is not automatically deleted, then how
> do you find out which file to delete when you have finished with the socket? (I mean, in a real world application - not
> in this test). Or am I missing something?
The apiNote in SocketChannel.bind specifies that binding to an unnamed address does not create any socket file on the
filesystem. I'd expect this to be normal behavior for clients, precisely so they dont have to worry about cleaning up
the socket files after them.
-------------
PR: https://git.openjdk.java.net/jdk/pull/52
More information about the hotspot-jfr-dev
mailing list