Github user ivmaykov commented on a diff in the pull request: https://github.com/apache/zookeeper/pull/679#discussion_r233661570 --- Diff: zookeeper-server/src/main/java/org/apache/zookeeper/server/quorum/PrependableSocket.java --- @@ -18,32 +18,47 @@ package org.apache.zookeeper.server.quorum; -import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.InputStream; -import java.io.SequenceInputStream; +import java.io.PushbackInputStream; import java.net.Socket; import java.net.SocketImpl; public class PrependableSocket extends Socket { - private SequenceInputStream sequenceInputStream; + private PushbackInputStream pushbackInputStream; --- End diff -- Yes, SequenceInputStream likely still works in practice, but exposes the discontinuity between the underlying streams to the caller. Using PushbackInputStream hides it and I think is preferable.
---