You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@lucene.apache.org by mi...@apache.org on 2009/01/16 11:48:13 UTC
svn commit: r734967 -
/lucene/java/trunk/src/java/org/apache/lucene/index/CheckIndex.java
Author: mikemccand
Date: Fri Jan 16 02:48:11 2009
New Revision: 734967
URL: http://svn.apache.org/viewvc?rev=734967&view=rev
Log:
LUCENE-1520: prevent OOM in CheckIndex with large segment that has many fields w/ norms
Modified:
lucene/java/trunk/src/java/org/apache/lucene/index/CheckIndex.java
Modified: lucene/java/trunk/src/java/org/apache/lucene/index/CheckIndex.java
URL: http://svn.apache.org/viewvc/lucene/java/trunk/src/java/org/apache/lucene/index/CheckIndex.java?rev=734967&r1=734966&r2=734967&view=diff
==============================================================================
--- lucene/java/trunk/src/java/org/apache/lucene/index/CheckIndex.java (original)
+++ lucene/java/trunk/src/java/org/apache/lucene/index/CheckIndex.java Fri Jan 16 02:48:11 2009
@@ -414,7 +414,8 @@
Iterator it = fieldNames.iterator();
while(it.hasNext()) {
final String fieldName = (String) it.next();
- byte[] b = reader.norms(fieldName);
+ final byte[] b = new byte[reader.maxDoc()];
+ reader.norms(fieldName, b, 0);
if (b.length != info.docCount)
throw new RuntimeException("norms for field \"" + fieldName + "\" is length " + b.length + " != maxDoc " + info.docCount);