You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by ck...@apache.org on 2007/09/05 08:34:31 UTC
svn commit: r572885 - in /jackrabbit/trunk/jackrabbit-core/src:
main/java/org/apache/jackrabbit/core/query/lucene/ChildAxisQuery.java
test/java/org/apache/jackrabbit/core/query/ChildAxisQueryTest.java
Author: ckiehl
Date: Tue Sep 4 23:34:28 2007
New Revision: 572885
URL: http://svn.apache.org/viewvc?rev=572885&view=rev
Log:
JCR-1041: ChildAxisScorer.skipTo() should check nextDoc > -1
Modified:
jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/ChildAxisQuery.java
jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/query/ChildAxisQueryTest.java
Modified: jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/ChildAxisQuery.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/ChildAxisQuery.java?rev=572885&r1=572884&r2=572885&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/ChildAxisQuery.java (original)
+++ jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/ChildAxisQuery.java Tue Sep 4 23:34:28 2007
@@ -268,7 +268,7 @@
calculateChildren();
do {
nextDoc = hits.next();
- } while (nextDoc >= 0 && !indexIsValid(nextDoc));
+ } while (nextDoc > -1 && !indexIsValid(nextDoc));
return nextDoc > -1;
}
@@ -293,7 +293,7 @@
public boolean skipTo(int target) throws IOException {
calculateChildren();
nextDoc = hits.skipTo(target);
- while (!indexIsValid(nextDoc))
+ while (nextDoc > -1 && !indexIsValid(nextDoc))
next();
return nextDoc > -1;
}
Modified: jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/query/ChildAxisQueryTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/query/ChildAxisQueryTest.java?rev=572885&r1=572884&r2=572885&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/query/ChildAxisQueryTest.java (original)
+++ jackrabbit/trunk/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/query/ChildAxisQueryTest.java Tue Sep 4 23:34:28 2007
@@ -16,12 +16,13 @@
*/
package org.apache.jackrabbit.core.query;
-import javax.jcr.RepositoryException;
import javax.jcr.Node;
-import java.io.ByteArrayOutputStream;
-import java.io.OutputStreamWriter;
+import javax.jcr.RepositoryException;
+
import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
import java.io.IOException;
+import java.io.OutputStreamWriter;
import java.util.Calendar;
/**
@@ -231,4 +232,15 @@
executeXPathQuery(base + "*/*, 'lazy')]",
new Node[]{});
}
+
+ public void testSimpleQuery() throws Exception {
+ Node foo = testRootNode.addNode("foo");
+ testRootNode.addNode("bar");
+
+ testRootNode.save();
+
+ String sql = "SELECT * FROM nt:unstructured WHERE jcr:path LIKE '"+testRoot+"/foo'";
+ executeSQLQuery(sql, new Node[] {foo});
+ }
+
}