You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by ju...@apache.org on 2011/04/05 13:46:18 UTC
svn commit: r1088991 -
/jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/LuceneQueryFactory.java
Author: jukka
Date: Tue Apr 5 11:46:18 2011
New Revision: 1088991
URL: http://svn.apache.org/viewvc?rev=1088991&view=rev
Log:
JCR-2928: LuceneQueryFactory should call QueryHits.close() after running a query
Patch by Alex Parvulescu
Modified:
jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/LuceneQueryFactory.java
Modified: jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/LuceneQueryFactory.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/LuceneQueryFactory.java?rev=1088991&r1=1088990&r2=1088991&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/LuceneQueryFactory.java (original)
+++ jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/LuceneQueryFactory.java Tue Apr 5 11:46:18 2011
@@ -171,6 +171,7 @@ public class LuceneQueryFactory {
Map<String, PropertyValue> columns, Selector selector,
Constraint constraint) throws RepositoryException, IOException {
final IndexReader reader = index.getIndexReader(true);
+ QueryHits hits = null;
try {
JackrabbitIndexSearcher searcher = new JackrabbitIndexSearcher(
session, reader, index.getContext().getItemStateManager());
@@ -192,7 +193,7 @@ public class LuceneQueryFactory {
}
List<Row> rows = new ArrayList<Row>();
- QueryHits hits = searcher.evaluate(qp.mainQuery);
+ hits = searcher.evaluate(qp.mainQuery);
ScoreNode node = hits.nextScoreNode();
while (node != null) {
try {
@@ -210,6 +211,9 @@ public class LuceneQueryFactory {
}
return rows;
} finally {
+ if(hits != null){
+ hits.close();
+ }
Util.closeOrRelease(reader);
}
}