In general streaming is working much better in 2.0.x than before, but we still get occasional hanging stream sessions.
One of the nodes, the "follower", throws IOException: Broken pipe, causing all streams to fail with the "initiator" node. But the initiator node still thinks its sending and receiving files from the follower, causing the streaming to hang forever.
Relevant lines from the logs of the "follower" attached. There's nothing relevant in the logs on the initiator node. There are no indications of retry attempts.