Author: jmannix
Date: Thu Jan 21 13:15:54 2010
New Revision: 901693

URL: http://svn.apache.org/viewvc?rev=901693&view=rev
Log:
Nasty little bug in the Open primitive map, only found by walking deep in the 
debugger: clear() wasn't clearing out the last entry in the values array, so if 
it was full, it stayed full after clear()!  This actaully caused infinite loops 
in certain conditions in other parts of the codebase.

Modified:
    
lucene/mahout/trunk/math/src/main/java-templates/org/apache/mahout/math/map/OpenKeyTypeValueTypeHashMap.java.t

Modified: 
lucene/mahout/trunk/math/src/main/java-templates/org/apache/mahout/math/map/OpenKeyTypeValueTypeHashMap.java.t
URL: 
http://svn.apache.org/viewvc/lucene/mahout/trunk/math/src/main/java-templates/org/apache/mahout/math/map/OpenKeyTypeValueTypeHashMap.java.t?rev=901693&r1=901692&r2=901693&view=diff
==============================================================================
--- 
lucene/mahout/trunk/math/src/main/java-templates/org/apache/mahout/math/map/OpenKeyTypeValueTypeHashMap.java.t
 (original)
+++ 
lucene/mahout/trunk/math/src/main/java-templates/org/apache/mahout/math/map/OpenKeyTypeValueTypeHashMap.java.t
 Thu Jan 21 13:15:54 2010
@@ -97,7 +97,7 @@
   /** Removes all (key,value) associations from the receiver. Implicitly calls 
<tt>trimToSize()</tt>. */
   @Override
   public void clear() {
-    Arrays.fill(this.state, 0, state.length - 1, FREE);
+    Arrays.fill(this.state, FREE);
     distinct = 0;
     freeEntries = table.length; // delta
     trimToSize();


Reply via email to