I was just wondering:
Doesn't this make commons-io IOUtils.closeQuietly really risky?

Cheers,
Jörn.

On 05.07.2010, at 08:27, Andreas Dejung wrote:

I had the same problem and I think I know why J
 
Solaris does interrupt IO blocked thread which then causes the OutputStreamAppender to catch the IOException in line 218 (version 0.9.24). I actually run version 0.9.18 but this part has not change so I guess it will behave the same way.
 
If we look at http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4385444 InterruptedIOException should not be required by platform specification (sol)
And log4j https://issues.apache.org/bugzilla/show_bug.cgi?id=44157 InterruptedIOException ignored by log4j
 
I think it should be solved the same why
 
    } catch (InterruptedIOException iioe){
      //give the thread a changes to act on interruption and then carry on
      Thread.currentThread().interrupt();
    } catch (IOException ioe) {
      // as soon as an exception occurs, move to non-started state
      // and add a single ErrorStatus to the SM.
     
      this.started = false;
      addStatus(new ErrorStatus("IO failure in appender", this, ioe));
    }
 
 
I could not find the jira entry mentioned in this thread therefore I write it here J
 
BTY the jvm option –XX:-UseVMInterruptibleIO does prevent the interruption by solaris but that’s only a workaround and not solving the problem ;)
 
Cheers Andy
 
 
_______________________________________________
Logback-user mailing list
Logback-user@qos.ch
http://qos.ch/mailman/listinfo/logback-user