I have to disagree with @eirikbakke's reasoning.

What this PR basically does is purposefully ignoring interrupts and 
force-retrying the I/O action. While it may be desirable in very specific 
cases, it should not be a pattern applied throughout any project. That's 
analogous to using empty catch(Exception) constructs.

Handling exceptions is a responsibility of the caller. If a higher-level code 
caches a negative result and leaves the system in a bad state, it's a bug in 
the higher-level code. If an interrupted task simply has to be completed, it 
should A) not be interrupted at all, or B) be restarted by the caller. Or to 
put it another way - fix the problems, not the symptoms.

So for the alternatives:
1. Fix the callers properly to retry the I/O operation where appropriate
2. Fix the logic that interrupts operations, that should not be interrupted in 
the first place
3. Reduce the log severity in the remaining cases, if appropriate

[ Full content available at: 
https://github.com/apache/incubator-netbeans/pull/854 ]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to