RFR of JDK-8019538: TEST_BUG: java/rmi/activation/rmidViaInheritedChannel tests may fail

Hamlin Li huaming.li at oracle.com
Wed Nov 30 02:25:37 UTC 2016


Hi Roger,

Thank you for reviewing. please check the comments in line.


On 2016/11/30 0:50, Roger Riggs wrote:
> Hi Hamlin,
>
> The changes proposed are fine as far as they go, but...
>
> I think this test can be completely removed.
> The recent change to use inherited channel for many  of the rmid tests 
> makes this test redundant.
> It does not add anything over other activation/RMID tests.
>
> The test before the changes, was successful because it launched the 
> daemon with
> a specific selector provider whose only action was to notify that it 
> was launched successfully
> (by invoking a method on an object registered in the registry) and was 
> successful if the invoking
> test program received the notification.
>
> That function is now replaced by RMID.createRMIDonEphemeralPort().
> If it succeeds to launch and retrieve the port number, then the 
> InheritedChannel mechanism is fully working.
>
> So I think the test can be removed entirely.
> Make sense?
Agree, I had the same thought. It might be useful to keep it, even if it 
looks like do no more test. It's specifically checking inherited 
channel, and it's can be a sanity test for RMID+RMIDSelectorProvider 
test library.
I can do either way. Please let me know your final thought.

Thank you
-Hamlin

>
> Thanks, Roger
>
> On 11/23/2016 4:49 AM, Hamlin Li wrote:
>> Would you please review the fix for below bug?
>>
>> bug: https://bugs.openjdk.java.net/browse/JDK-8019538
>> webrev: http://cr.openjdk.java.net/~mli/8019538/webrev.00/
>>
>> There are 4 issues in the bug,
>> 2 in RmidViaInheritedChannel.java:  "port in use" in registry, "port 
>> in use" in rmid start.
>> 2 InheritedChannelNotServerSocket.java: "port in use" in registry, 
>> "port in use" in rmid start.
>>
>> This patch fixes 2 issues in RmidViaInheritedChannel, and only "port 
>> in use" in registry in InheritedChannelNotServerSocket.
>> The "port in use" in rmid in InheritedChannelNotServerSocket is 
>> little bit hard, as it intends to test rmid when inherited channel 
>> not work. Currently the only solution in my mind is to retry when 
>> rmid fails with "port in use", but as we discussed earlier, it's not 
>> a good solution as it might impact other programs or tests, and it's 
>> not efficient.
>> So I hope to push the fix for the other issues first to improve the 
>> stability of RMI tests, and keep studying if there are other better 
>> solutions for the "port in use" in rmid in 
>> InheritedChannelNotServerSocket.
>>
>> Thank you
>> -Hamlin
>



More information about the core-libs-dev mailing list