Hi,
The "request split points for chunk" messages come about from a splitVector operation taking place. The splitVector command is issued relatively early in the maximum size of a chunk, at a somewhat random point around 20%, and then frequently afterward. It is somewhat random because this prevents all of the threads and processes testing splitting chunks at exactly the same time. More often than not, these tests return nothing, meaning that the chunk does not need to be split. If the splitVector command does return some values, then it means the chunk can be split and we can then start a split process.
SplitVector commands are designed to yield often, so that they do not compete on I/O. This also means long running splitVector commands do not necessarily indicate slow performance.
Are you getting high I/O on specific shards, or is more general across all shards?
What could also have happened after these log messages appear is that a split took place and then a subsequent moveChunk. As moveChunks actually migrate the data between shards you would see higher load on the shards that are involved in the move.
Regards,
André