diff --git a/src/main/java/org/peergos/blockstore/FilteredBlockstore.java b/src/main/java/org/peergos/blockstore/FilteredBlockstore.java index 66840550..e2ef0adc 100644 --- a/src/main/java/org/peergos/blockstore/FilteredBlockstore.java +++ b/src/main/java/org/peergos/blockstore/FilteredBlockstore.java @@ -48,7 +48,7 @@ public CompletableFuture has(Cid c) { return blocks.has(c).thenApply(res -> { if (! res) addAbsentBlock(c); - return false; + return res; }); return CompletableFuture.completedFuture(false); } diff --git a/src/test/java/org/peergos/blockstore/BloomTest.java b/src/test/java/org/peergos/blockstore/BloomTest.java index 6ef62c5f..5ffa771c 100644 --- a/src/test/java/org/peergos/blockstore/BloomTest.java +++ b/src/test/java/org/peergos/blockstore/BloomTest.java @@ -33,6 +33,10 @@ public void bloom() { long t4 = System.currentTimeMillis(); System.out.println("Doubling filter size took: " + (t4-t3)+ "ms"); + for (Cid ref : bs.refs(false).join()) { + Assert.assertTrue(filtered.has(ref).join()); + } + checkFalsePositiveRate(bloom, 14); }