On Fri, 5 May 2023 19:08:27 GMT, Aleksei Efimov <[email protected]> wrote:
>> JNDI `DnsClient` has a finalize method to close its internal datagram
>> channel selector.
>> The change proposed here replaces it with a cleaner to close the selector
>> once the `DnsClient`
>> instance becomes phantom reachable.
>>
>> The change was tested with `jdk-tier1` to `jdk-tier3` test sets which showed
>> no failures.
>
> Aleksei Efimov has updated the pull request incrementally with one additional
> commit since the last revision:
>
> fix comment
Changes requested by dfuchs (Reviewer).
src/jdk.naming.dns/share/classes/com/sun/jndi/dns/DnsClient.java line 165:
> 163: // when this DNS client becomes phantom reachable
> 164: Selector sel = udpChannelSelector;
> 165: CleanerFactory.cleaner().register(this, () -> {
I believe this is not quite right. The Cleanable returned by the `register`
method should be saved in a final field. And close() below should call
`Cleanable::clean` instead of `udpChannelSelector.close()`
-------------
PR Review: https://git.openjdk.org/jdk/pull/13837#pullrequestreview-1415750869
PR Review Comment: https://git.openjdk.org/jdk/pull/13837#discussion_r1186672907