Index: lucene/contrib/memory/src/java/org/apache/lucene/index/memory/MemoryIndex.java =================================================================== --- lucene/contrib/memory/src/java/org/apache/lucene/index/memory/MemoryIndex.java (revision 1302509) +++ lucene/contrib/memory/src/java/org/apache/lucene/index/memory/MemoryIndex.java (working copy) @@ -514,7 +514,6 @@ public String toString() { StringBuilder result = new StringBuilder(256); sortFields(); - int sumBytes = 0; int sumPositions = 0; int sumTerms = 0; @@ -525,7 +524,6 @@ info.sortTerms(); result.append(fieldName + ":\n"); - int numBytes = 0; int numPositions = 0; for (int j=0; j < info.sortedTerms.length; j++) { Map.Entry e = info.sortedTerms[j]; @@ -535,22 +533,20 @@ result.append(positions.toString(stride)); // ignore offsets result.append("\n"); numPositions += numPositions(positions); - numBytes += term.length; } result.append("\tterms=" + info.sortedTerms.length); result.append(", positions=" + numPositions); - result.append(", Kbytes=" + (numBytes/1000.0f)); + result.append(", memory=" + RamUsageEstimator.humanReadableUnits(RamUsageEstimator.sizeOf(info))); result.append("\n"); sumPositions += numPositions; - sumBytes += numBytes; sumTerms += info.sortedTerms.length; } result.append("\nfields=" + sortedFields.length); result.append(", terms=" + sumTerms); result.append(", positions=" + sumPositions); - result.append(", Kbytes=" + (sumBytes/1000.0f)); + result.append(", memory=" + RamUsageEstimator.humanReadableUnits(getMemorySize())); return result.toString(); } Index: lucene/contrib/memory/src/test/org/apache/lucene/index/memory/MemoryIndexTest.java =================================================================== --- lucene/contrib/memory/src/test/org/apache/lucene/index/memory/MemoryIndexTest.java (revision 1302509) +++ lucene/contrib/memory/src/test/org/apache/lucene/index/memory/MemoryIndexTest.java (working copy) @@ -52,7 +52,9 @@ import org.apache.lucene.search.spans.SpanOrQuery; import org.apache.lucene.search.spans.SpanQuery; import org.apache.lucene.store.Directory; +import org.apache.lucene.store.RAMDirectory; import org.apache.lucene.util.BytesRef; +import org.apache.lucene.util.RamUsageEstimator; import org.apache.lucene.util._TestUtil; /** @@ -119,7 +121,7 @@ termField.append(randomTerm()); } - Directory ramdir = newDirectory(); + Directory ramdir = new RAMDirectory(); Analyzer analyzer = randomAnalyzer(); IndexWriter writer = new IndexWriter(ramdir, new IndexWriterConfig(TEST_VERSION_CURRENT, analyzer).setCodec(_TestUtil.alwaysPostingsFormat(new Lucene40PostingsFormat()))); @@ -134,8 +136,18 @@ MemoryIndex memory = new MemoryIndex(); memory.addField("foo", fooField.toString(), analyzer); memory.addField("term", termField.toString(), analyzer); + + if (VERBOSE) { + System.out.println("Random MemoryIndex:\n" + memory.toString()); + System.out.println("Same index as RAMDirectory: " + + RamUsageEstimator.humanReadableUnits(RamUsageEstimator.sizeOf(ramdir))); + System.out.println(); + } else { + assertTrue(memory.getMemorySize() > 0L); + } + assertAllQueries(memory, ramdir, analyzer); - ramdir.close(); + ramdir.close(); } /**