Open
Description
Elasticsearch Version
main
Installed Plugins
No response
Java Version
bundled
OS Version
null
Problem Description
we find that the vector data input is slow in MemorySegmentIndexInput case, this result slow io in flat type vector search and peer recovery.
In peer recovery case, even if set indices.recovery.max_bytes_per_sec
to a large value like “4000mb”, the rate of vec file copy is slow.
The size of every read size is 8kb, it can’t use the readahead mechanism.
Do you know this case, is some feature about MemorySegmentIndexInput, or if we don’t call MemorySegmentIndexInput.prefetch, it can’t use the readahead?
this is the iostat record:

I added a line of code in RecoverySourceHandler:
currentInput.updateReadAdvice(ReadAdvice.SEQUENTIAL);
The rate of vec file copy is fast. The size of every read size become bigger.


Steps to Reproduce
peer recovery of vector data
Logs (if relevant)
No response