Thank you, Daniel

Regards,
Chris

> On 19 Nov 2018, at 5:40 PM, Daniel Fuchs <daniel.fu...@oracle.com> wrote:
> 
> Looks good to me Chris!
> 
> best regards,
> 
> -- daniel
> 
> On 19/11/2018 03:03, Chris Yin wrote:
>> Hi, Daniel
>>> On 16 Nov 2018, at 7:13 PM, Daniel Fuchs <daniel.fu...@oracle.com> wrote:
>>> 
>>> Hi Chris,
>>> 
>>> This looks good to me, though I wonder if the check
>>> for reason.length() > 0 should be made in
>>> 
>>>  51     public synchronized String failureReason() {
>>>  52         return reason.length() > 0 ? reason.toString() : null;
>>>  53     }
>>> 
>>> instead of within passed() just to be on the safe side, in case
>>> some subclass is tricked into thinking that there is a failure
>>> if failureReason() starts returning "" instead of null?
>> Thanks for your suggestion, yes, that’s make sense since the original logic 
>> “return reason” may also return null if no failure message, update webrev as 
>> below.
>> http://cr.openjdk.java.net/~xyin/8129310/webrev.03/
>> Thanks,
>> Chris
>>> 
>>> best regards,
>>> 
>>> -- daniel
>>> 
>>> On 16/11/2018 03:58, Chris Yin wrote:
>>>> Sorry, one more revision here since I found we could do a little more in 
>>>> subclasses (use loopback address to avoid possible outside noise), and 
>>>> this will introduce the test class which extends AsyncCloseTest into 
>>>> webrev, hope that will be convenient for review, thanks
>>>> http://cr.openjdk.java.net/~xyin/8129310/webrev.02/
>>>> Regards,
>>>> Chris
>>>>> On 16 Nov 2018, at 10:39 AM, Chris Yin <xu.y....@oracle.com> wrote:
>>>>> 
>>>>> Hi, Daniel
>>>>> 
>>>>> Thanks a lot for your reviewing and comments, revision webrev as below.
>>>>> 
>>>>> http://cr.openjdk.java.net/~xyin/8129310/webrev.01/
>>>>> 
>>>>> Regards,
>>>>> Chris
>>>>> 
>>>>>> On 15 Nov 2018, at 6:06 PM, Daniel Fuchs <daniel.fu...@oracle.com> wrote:
>>>>>> 
>>>>>> Hi chris,
>>>>>> 
>>>>>> There's no reason to make `passed` and `closed` volatile since
>>>>>> they are private and only accessed from withing synchronized
>>>>>> methods.
>>>>>> 
>>>>>> On the other hand, reason could now be final.
>>>>>> 
>>>>>> Otherwise I guess it looks good. I haven't looked at the tests that
>>>>>> use AsyncClose so I trust that you have verified that your changes
>>>>>> work as you expect.
>>>>>> 
>>>>>> best regards,
>>>>>> 
>>>>>> -- daniel
>>>>>> 
>>>>>> On 15/11/2018 09:12, Chris Yin wrote:
>>>>>>> Please review below minor change for 
>>>>>>> java/net/Socket/asyncClose/AsyncClose.java fails intermittently issue, 
>>>>>>> thanks
>>>>>>> From previous failure log, seems lack of enough info to find out root 
>>>>>>> cause, this change is to enhance a little to base test class 
>>>>>>> AsyncCloseTest with guessing, even it may not completely address the 
>>>>>>> issue, additional log info should still helpful for future debugging.
>>>>>>> 1. add volatile to 'boolean passed' and 'boolean closed' to avoid any 
>>>>>>> visibility issue since they were write/read in different threads
>>>>>>> 2. failure reason info may be overwritten if failed() been called 
>>>>>>> multiple times, change it to record all failure messages.
>>>>>>> bug: https://bugs.openjdk.java.net/browse/JDK-8129310
>>>>>>> webrev: http://cr.openjdk.java.net/~xyin/8129310/webrev.00/
>>>>>>> Regards,
>>>>>>> Chris
>>>>>> 
>>>>> 
>>> 
> 

Reply via email to