A guess on how I would test it
1) Upload file A with length X (this writes it to replicas I, J, and K)
2) fail replica K
3) Upload file B with length Y (where X>Y) to the same object name (this writes to replicas I and J)
4) restore replica K
5) begin downloading the object from replica K
6) have replication copy from replica I or J to replica K while the client is downloading the object
A guess on how I would test it
1) Upload file A with length X (this writes it to replicas I, J, and K)
2) fail replica K
3) Upload file B with length Y (where X>Y) to the same object name (this writes to replicas I and J)
4) restore replica K
5) begin downloading the object from replica K
6) have replication copy from replica I or J to replica K while the client is downloading the object