From fb56948e70f6468db27d7182add57d338104ba5e Mon Sep 17 00:00:00 2001 From: ChristophKaser Date: Thu, 11 May 2017 15:53:51 +0200 Subject: [PATCH] LUCENE-7817: pass cached query to onQueryCache instead of null Closes #199 --- .../core/src/java/org/apache/lucene/search/LRUQueryCache.java | 2 +- .../src/test/org/apache/lucene/search/TestLRUQueryCache.java | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/lucene/core/src/java/org/apache/lucene/search/LRUQueryCache.java b/lucene/core/src/java/org/apache/lucene/search/LRUQueryCache.java index 451ce814ecd..e30de031569 100644 --- a/lucene/core/src/java/org/apache/lucene/search/LRUQueryCache.java +++ b/lucene/core/src/java/org/apache/lucene/search/LRUQueryCache.java @@ -298,7 +298,7 @@ public class LRUQueryCache implements QueryCache, Accountable { try { Query singleton = uniqueQueries.putIfAbsent(query, query); if (singleton == null) { - onQueryCache(singleton, LINKED_HASHTABLE_RAM_BYTES_PER_ENTRY + ramBytesUsed(query)); + onQueryCache(query, LINKED_HASHTABLE_RAM_BYTES_PER_ENTRY + ramBytesUsed(query)); } else { query = singleton; } diff --git a/lucene/core/src/test/org/apache/lucene/search/TestLRUQueryCache.java b/lucene/core/src/test/org/apache/lucene/search/TestLRUQueryCache.java index ee3f4ad9bb2..4e80f9e9ed0 100644 --- a/lucene/core/src/test/org/apache/lucene/search/TestLRUQueryCache.java +++ b/lucene/core/src/test/org/apache/lucene/search/TestLRUQueryCache.java @@ -660,12 +660,14 @@ public class TestLRUQueryCache extends LuceneTestCase { @Override protected void onQueryCache(Query query, long ramBytesUsed) { super.onQueryCache(query, ramBytesUsed); + assertNotNull("cached query is null", query); ramBytesUsage.addAndGet(ramBytesUsed); } @Override protected void onQueryEviction(Query query, long ramBytesUsed) { super.onQueryEviction(query, ramBytesUsed); + assertNotNull("evicted query is null", query); ramBytesUsage.addAndGet(-ramBytesUsed); }