OH2.1 - java.io.IOException: java.util.concurrent.TimeoutException: Idle timeout -> Cause Sonos

Since yesterday (when I upgraded to 2.1 (and also started working on a habpanel if this could be related), I have these exceptions in my log quite frequently. I cannot see any logic to when they happen unfortunately…

I previously run nightly snapshot from about a month ago, and cleared both tmp and cache upon upgrading.

I have disabled bindings (harmonyhub, sonos, hue, mqtt, epson projecotr) and habpanel, but they still arrive.
Granted I just have uninstalled the bindings, and waited, I have not restarted oh every time.

Is there any good way to find out the cause of these kind of exceptions?

java.io.IOException: java.util.concurrent.TimeoutException: Idle timeout expired: 30001/30000 ms
        at org.eclipse.jetty.util.SharedBlockingCallback$Blocker.block(SharedBlockingCallback.java:213)
        at org.eclipse.jetty.server.HttpInputOverHTTP.blockForContent(HttpInputOverHTTP.java:66)
        at org.eclipse.jetty.server.HttpInput$1.waitForContent(HttpInput.java:489)
        at org.eclipse.jetty.server.HttpInput.read(HttpInput.java:122)
        at java.io.InputStream.read(InputStream.java:101)
        at org.jupnp.util.io.IO.copyLarge(IO.java:969)
        at org.jupnp.util.io.IO.copy(IO.java:943)
        at org.jupnp.util.io.IO.toByteArray(IO.java:391)
        at org.jupnp.util.io.IO.readBytes(IO.java:110)
        at org.jupnp.transport.impl.ServletUpnpStream.readRequestMessage(ServletUpnpStream.java:137)
        at org.jupnp.transport.impl.ServletUpnpStream.run(ServletUpnpStream.java:61)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)
Caused by: java.util.concurrent.TimeoutException: Idle timeout expired: 30001/30000 ms
        at org.eclipse.jetty.io.IdleTimeout.checkIdleTimeout(IdleTimeout.java:161)
        at org.eclipse.jetty.io.IdleTimeout$1.run(IdleTimeout.java:50)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)

Edit: Sorry, forgot to add the exception… :smile:

checking… :slight_smile:

Sounds to me as if you might have some misbehaving UPnP devices in your network. The exception says that Jetty is processing an incoming UPnP request (which must originate from some device) and it seems as if this request is not correctly terminated and runs into a timeout.

So did you maybe also add some new devices in your network recently?

No, I haven’t added anything to the network, I’m suspecting Sonos in this case, some of them are running wireless with sometimes poor reception. Will power them off over the night, and see if that makes a difference.

Strange I haven’t seen this before though.
The only thing I can remember that is different is that I have started to use the Sonos android app last couple of days, maybe that is the bad boy. Will terminate it first.

OK, so terminating the android app did not change any thing. But I then powered off all sonoses during the night, and no excpetion!
So somehow Sonos seams to be causing this. This is odd, since I haven’t changed anything with the sonos devices since about two years.

Possibly, I have missed these exceptions earlier, but I doubt it, since they are occuring so often. I guess I have to live with the exceptions, since Sonos is never leaving my house… :slight_smile: