Code Review Request: 7117570: Warnings in sun.mangement.* and its subpackages

David Holmes david.holmes at oracle.com
Thu Jan 12 15:24:37 PST 2012


On 13/01/2012 8:50 AM, Dmitry Samersoff wrote:
> On 2012-01-13 02:30, Kurchi Hazra wrote:
>>> 255-258 a) Exceptions could be collapsed
>>
>> This cannot be collapsed since FileNotFoundException is a subclass of
>> IOException.
>
> Does it mean that we can simple remove catch of FileNotFoundException,
> replacing it with a comments that FileNotFound case covered by IOException ?
>
>   263 } catch (FileNotFoundException e) {
>   264             error(CONFIG_FILE_OPEN_FAILED, e.getMessage());
>   265 } catch (IOException e) {
>   266             error(CONFIG_FILE_OPEN_FAILED, e.getMessage());
>
> This code looks really weird for me, could you at least add a comment?

It is redundant to catch FileNotFoundException and IOException and 
perform the same action in each case. This can simply reduce to catching 
IOException.

>>>           b) finally is gone - is it expected?
>>>               CONFIG_FILE_CLOSE_FAILED is never happens anymore.
>>>
>>>               I would prefer to keep original code
>>
>> - We were trying to use try-with-resources (new JDK7 feature), where
>> closing of resources is automatically taken care of. But I will
>> revert back to original code if that is preferred.
>
> We going to an area of changing public symbols. I'm in doubt that
> someone rely on CONFIG_FILE_CLOSE_FAILED message, but we need to check
> it, remove it from all translations etc.
>
> IMHO, It's out of the scope of your amazing work.

I agree. Changing to try-with-resources will change the failure mode. 
I'm not 100% sure how the try-with-resources works in this case but it 
seems to me that an IOException on the close() would result in a call to 
error() with the CONFIG_FILE_OPEN_FAILED message.

David
-----


More information about the serviceability-dev mailing list