diff --git a/lucene/core/src/java/org/apache/lucene/util/hnsw/HnswLock.java b/lucene/core/src/java/org/apache/lucene/util/hnsw/HnswLock.java index d7947c7fab1a..a5f3c985e512 100644 --- a/lucene/core/src/java/org/apache/lucene/util/hnsw/HnswLock.java +++ b/lucene/core/src/java/org/apache/lucene/util/hnsw/HnswLock.java @@ -18,7 +18,6 @@ package org.apache.lucene.util.hnsw; import java.io.Closeable; -import java.util.Objects; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantReadWriteLock; @@ -40,14 +39,14 @@ class HnswLock { } LockedRow read(int level, int node) { - int lockid = Objects.hash(level, node) % NUM_LOCKS; + int lockid = hash(level, node) % NUM_LOCKS; Lock lock = locks[lockid].readLock(); lock.lock(); return new LockedRow(graph.getNeighbors(level, node), lock); } LockedRow write(int level, int node) { - int lockid = Objects.hash(level, node) % NUM_LOCKS; + int lockid = hash(level, node) % NUM_LOCKS; Lock lock = locks[lockid].writeLock(); lock.lock(); return new LockedRow(graph.getNeighbors(level, node), lock); @@ -67,4 +66,8 @@ public void close() { lock.unlock(); } } + + static int hash(int v1, int v2) { + return v1 * 31 + v2; + } }