Details
-
Bug
-
Status: Resolved
-
Blocker
-
Resolution: Fixed
-
(Java) V4 4.5.0, (Java) V4 4.6.0
-
Patch
Description
Deadlocking in PipedInputStream often happens on communication errors (e.g. proxy timeouts) when using Olingo with Spring Batch:
"spring_batch13" #46 prio=5 os_prio=0 tid=0x00000000250e0800 nid=0xf50 in Object.wait() [0x000000002d42e000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.io.PipedInputStream.awaitSpace(PipedInputStream.java:273)
at java.io.PipedInputStream.receive(PipedInputStream.java:231)
- locked <0x000000075f4ccfd8> (a java.io.PipedInputStream)
at java.io.PipedOutputStream.write(PipedOutputStream.java:149)
at java.io.OutputStream.write(OutputStream.java:75)
at org.apache.olingo.client.core.communication.request.batch.ODataBatchRequestImpl.rawAppend(ODataBatchRequestImpl.java:57)
at org.apache.olingo.client.core.communication.request.AbstractODataBasicRequest.batch(AbstractODataBasicRequest.java:107)
at org.apache.olingo.client.core.communication.request.batch.ODataChangesetImpl.addRequest(ODataChangesetImpl.java:125)
Full thread dump in attached file.