The junit test failed when iterates a number of times with larger chunk size on Linux. Once a while, the visible number of bytes seen by a reader is slightly less than what was supposed to be.
When run with the following parameter, it failed more often on Linux ( as reported by John George) than my Mac:
private static final int WR_NTIMES = 300;
private static final int WR_CHUNK_SIZE = 10000;
Adding more debugging output to the source, this is a sample of the output:
Caused by: java.io.IOException: readData mismatch in byte read: expected=2770000 ; got 2765312