getMinGenerationForSeqNo should acquire read lock
The method Translog#getMinGenerationForSeqNo does not modify the current
translog but only access, it therefore should acquire the readLock
instead of writeLock.
@@ -1515,7 +1515,7 @@ public class Translog extends AbstractIndexShardComponent implements IndexShardC
* @return the minimum generation for the sequence number
*/
public TranslogGeneration getMinGenerationForSeqNo(final long seqNo) {
- try (ReleasableLock ignored = writeLock.acquire()) {
+ try (ReleasableLock ignored = readLock.acquire()) {
/*
* When flushing, the engine will ask the translog for the minimum generation that could contain any sequence number after the
* local checkpoint. Immediately after flushing, there will be no such generation, so this minimum generation in this case will
