Index: lucene/src/java/org/apache/lucene/index/codecs/standard/StandardTermsDictReader.java =================================================================== --- lucene/src/java/org/apache/lucene/index/codecs/standard/StandardTermsDictReader.java (revision 943137) +++ lucene/src/java/org/apache/lucene/index/codecs/standard/StandardTermsDictReader.java (working copy) @@ -296,7 +296,7 @@ fieldTerm.term = term; TermState cachedState; if (useCache) { - cachedState = termsCache.get(new FieldAndTerm(fieldTerm)); + cachedState = termsCache.get(fieldTerm); if (cachedState != null) { state.copy(cachedState); seekPending = true; Index: lucene/src/java/org/apache/lucene/util/DoubleBarrelLRUCache.java =================================================================== --- lucene/src/java/org/apache/lucene/util/DoubleBarrelLRUCache.java (revision 943137) +++ lucene/src/java/org/apache/lucene/util/DoubleBarrelLRUCache.java (working copy) @@ -28,8 +28,9 @@ *
At any given time, one hash is primary and the other * is secondary. {@link #get} first checks primary, and if * that's a miss, checks secondary. If secondary has the - * entry, it's promoted to primary. Once primary is full, - * the secondary is cleared and the two are swapped.
+ * entry, it's promoted to primary (NOTE: the key is + * cloned at this point). Once primary is full, the + * secondary is cleared and the two are swapped. * *This is not as space efficient as other possible
* concurrent approaches (see LUCENE-2075): to achieve
@@ -41,7 +42,7 @@
* @lucene.internal
*/
-final public class DoubleBarrelLRUCache