Browse Source

DHT: Always have at least one recent chunk in DhtReader

The RecentChunks cache assumes there is always at least one recent
chunk in the maxSize that it receives from the DhtReaderOptions.
Ensure that is true by requiring the size to be at least 1.

Running with 0 recent chunk cache is very a bad idea, often
during commit walking the parents of a commit will be found
on the same chunk as the commit that was just accessed. In
these cases its a good idea to keep that last chunk around
so the parents can be quickly accessed.

Change-Id: I33b65286e8a4cbf6ef4ced28c547837f173e065d
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
stable-1.1
Shawn O. Pearce 14 years ago
parent
commit
57853e4949
  1. 2
      org.eclipse.jgit.storage.dht/src/org/eclipse/jgit/storage/dht/DhtReaderOptions.java

2
org.eclipse.jgit.storage.dht/src/org/eclipse/jgit/storage/dht/DhtReaderOptions.java

@ -240,7 +240,7 @@ public class DhtReaderOptions {
* @return {@code this} * @return {@code this}
*/ */
public DhtReaderOptions setRecentChunkCacheSize(int chunkCnt) { public DhtReaderOptions setRecentChunkCacheSize(int chunkCnt) {
recentChunkCacheSize = Math.max(0, chunkCnt); recentChunkCacheSize = Math.max(1, chunkCnt);
return this; return this;
} }

Loading…
Cancel
Save