(I admit I didn't know/realize that 
https://github.com/apache/incubator-netbeans/commit/4b82e6adb31e294c74fd2fa99779ce9e27ae6184
 introduces interruptible streams.)

It seems that the IDE is broken by 
https://github.com/apache/incubator-netbeans/commit/4b82e6adb31e294c74fd2fa99779ce9e27ae6184,
 and we need to find a way to fix it.

So, basically, for each change in 
https://github.com/apache/incubator-netbeans/commit/4b82e6adb31e294c74fd2fa99779ce9e27ae6184,
 we need to know/investigate what happens when the ClosedByInterruptException 
is thrown (or that is cannot be thrown), and be sure that it is handled 
properly. For some of the changes, it may  be simple/OK/not an issue. For some 
of them, it is much harder:
-for Class loading, I frankly don't see a way to recover from that (Class 
loading may happen nearly anywhere, and crashes during CL may be persisted 
beyond our control).
-for FileObject.getInputStream() and URLConnection.getInputStream(), the client 
can be "anyone", including 3rd party code, etc. Yes, we can say the bug is in 
the code that uses the stream, but the IDE is not working properly for the 
user, so I think there's a need to be a little bit proactive than just wait for 
a (cryptic) bugreport to arrive.

So, can we please have a realistic plan to review each change from 
https://github.com/apache/incubator-netbeans/commit/4b82e6adb31e294c74fd2fa99779ce9e27ae6184,
 proposing realistic solution to any issues found? Otherwise, frankly, we may 
need to revert 
https://github.com/apache/incubator-netbeans/commit/4b82e6adb31e294c74fd2fa99779ce9e27ae6184
 and reintroduce it piece by piece with a proper investigations of what happens 
when ClosedByInterruptException is thrown.


[ 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