You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by mv...@apache.org on 2016/07/14 08:56:42 UTC
[1/2] lucene-solr:master: LUCENE-7376: Add support for
ToParentBlockJoinQuery to fast vector highlighter's FieldQuery.
Repository: lucene-solr
Updated Branches:
refs/heads/branch_6x 625979113 -> 4edba9463
refs/heads/master 51d4af685 -> 3a71c7d8d
LUCENE-7376: Add support for ToParentBlockJoinQuery to fast vector highlighter's FieldQuery.
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/3a71c7d8
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/3a71c7d8
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/3a71c7d8
Branch: refs/heads/master
Commit: 3a71c7d8df59ae815be28495905f88b1c3207cb4
Parents: 51d4af6
Author: Martijn van Groningen <mv...@apache.org>
Authored: Thu Jul 14 10:06:15 2016 +0200
Committer: Martijn van Groningen <mv...@apache.org>
Committed: Thu Jul 14 10:10:44 2016 +0200
----------------------------------------------------------------------
lucene/CHANGES.txt | 3 +++
.../lucene/search/vectorhighlight/FieldQuery.java | 6 ++++++
.../search/vectorhighlight/FieldQueryTest.java | 15 +++++++++++++++
3 files changed, 24 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/3a71c7d8/lucene/CHANGES.txt
----------------------------------------------------------------------
diff --git a/lucene/CHANGES.txt b/lucene/CHANGES.txt
index ec8ecf0..9e19d35 100644
--- a/lucene/CHANGES.txt
+++ b/lucene/CHANGES.txt
@@ -109,6 +109,9 @@ Improvements
chain that is about normalization for range/fuzzy/wildcard queries.
(Adrien Grand)
+* LUCENE-7376: Add support for ToParentBlockJoinQuery to fast vector highlighter's
+ FieldQuery. (Martijn van Groningen)
+
Optimizations
* LUCENE-7330, LUCENE-7339: Speed up conjunction queries. (Adrien Grand)
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/3a71c7d8/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/FieldQuery.java
----------------------------------------------------------------------
diff --git a/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/FieldQuery.java b/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/FieldQuery.java
index ac6cd94..8abeaff 100644
--- a/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/FieldQuery.java
+++ b/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/FieldQuery.java
@@ -37,6 +37,7 @@ import org.apache.lucene.search.MultiTermQuery;
import org.apache.lucene.search.PhraseQuery;
import org.apache.lucene.search.Query;
import org.apache.lucene.search.TermQuery;
+import org.apache.lucene.search.join.ToParentBlockJoinQuery;
import org.apache.lucene.search.vectorhighlight.FieldTermStack.TermInfo;
/**
@@ -137,6 +138,11 @@ public class FieldQuery {
if (q != null) {
flatten( q, reader, flatQueries, boost);
}
+ } else if (sourceQuery instanceof ToParentBlockJoinQuery) {
+ Query childQuery = ((ToParentBlockJoinQuery) sourceQuery).getChildQuery();
+ if (childQuery != null) {
+ flatten(childQuery, reader, flatQueries, boost);
+ }
} else if (reader != null) {
Query query = sourceQuery;
Query rewritten;
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/3a71c7d8/lucene/highlighter/src/test/org/apache/lucene/search/vectorhighlight/FieldQueryTest.java
----------------------------------------------------------------------
diff --git a/lucene/highlighter/src/test/org/apache/lucene/search/vectorhighlight/FieldQueryTest.java b/lucene/highlighter/src/test/org/apache/lucene/search/vectorhighlight/FieldQueryTest.java
index ce82546..1976327 100644
--- a/lucene/highlighter/src/test/org/apache/lucene/search/vectorhighlight/FieldQueryTest.java
+++ b/lucene/highlighter/src/test/org/apache/lucene/search/vectorhighlight/FieldQueryTest.java
@@ -27,12 +27,16 @@ import org.apache.lucene.search.BooleanClause.Occur;
import org.apache.lucene.search.BooleanQuery;
import org.apache.lucene.search.BoostQuery;
import org.apache.lucene.search.ConstantScoreQuery;
+import org.apache.lucene.search.MatchAllDocsQuery;
import org.apache.lucene.search.PrefixQuery;
import org.apache.lucene.search.Query;
import org.apache.lucene.search.RegexpQuery;
import org.apache.lucene.search.TermQuery;
import org.apache.lucene.search.TermRangeQuery;
import org.apache.lucene.search.WildcardQuery;
+import org.apache.lucene.search.join.QueryBitSetProducer;
+import org.apache.lucene.search.join.ScoreMode;
+import org.apache.lucene.search.join.ToParentBlockJoinQuery;
import org.apache.lucene.search.vectorhighlight.FieldQuery.QueryPhraseMap;
import org.apache.lucene.search.vectorhighlight.FieldTermStack.TermInfo;
import org.apache.lucene.util.BytesRef;
@@ -951,4 +955,15 @@ public class FieldQueryTest extends AbstractTestCase {
assertCollectionQueries( flatQueries, tq( boost, "A" ) );
}
+ public void testFlattenToParentBlockJoinQuery() throws Exception {
+ initBoost();
+ Query childQuery = tq(boost, "a");
+ Query query = new ToParentBlockJoinQuery(childQuery, new QueryBitSetProducer(new MatchAllDocsQuery()), ScoreMode.None);
+ query = new BoostQuery(query, boost );
+ FieldQuery fq = new FieldQuery(query, true, true );
+ Set<Query> flatQueries = new HashSet<>();
+ fq.flatten(query, reader, flatQueries, 1f );
+ assertCollectionQueries(flatQueries, tq(boost, "a"));
+ }
+
}
[2/2] lucene-solr:branch_6x: LUCENE-7376: Add support for
ToParentBlockJoinQuery to fast vector highlighter's FieldQuery.
Posted by mv...@apache.org.
LUCENE-7376: Add support for ToParentBlockJoinQuery to fast vector highlighter's FieldQuery.
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/4edba946
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/4edba946
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/4edba946
Branch: refs/heads/branch_6x
Commit: 4edba9463135558146f69081028adef52682de9b
Parents: 6259791
Author: Martijn van Groningen <mv...@apache.org>
Authored: Thu Jul 14 10:06:15 2016 +0200
Committer: Martijn van Groningen <mv...@apache.org>
Committed: Thu Jul 14 10:56:08 2016 +0200
----------------------------------------------------------------------
lucene/CHANGES.txt | 3 +++
.../lucene/search/vectorhighlight/FieldQuery.java | 6 ++++++
.../search/vectorhighlight/FieldQueryTest.java | 15 +++++++++++++++
3 files changed, 24 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/4edba946/lucene/CHANGES.txt
----------------------------------------------------------------------
diff --git a/lucene/CHANGES.txt b/lucene/CHANGES.txt
index 50ba1b2..f3da37c 100644
--- a/lucene/CHANGES.txt
+++ b/lucene/CHANGES.txt
@@ -84,6 +84,9 @@ Improvements
chain that is about normalization for range/fuzzy/wildcard queries.
(Adrien Grand)
+* LUCENE-7376: Add support for ToParentBlockJoinQuery to fast vector highlighter's
+ FieldQuery. (Martijn van Groningen)
+
Optimizations
* LUCENE-7330, LUCENE-7339: Speed up conjunction queries. (Adrien Grand)
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/4edba946/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/FieldQuery.java
----------------------------------------------------------------------
diff --git a/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/FieldQuery.java b/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/FieldQuery.java
index ac6cd94..8abeaff 100644
--- a/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/FieldQuery.java
+++ b/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/FieldQuery.java
@@ -37,6 +37,7 @@ import org.apache.lucene.search.MultiTermQuery;
import org.apache.lucene.search.PhraseQuery;
import org.apache.lucene.search.Query;
import org.apache.lucene.search.TermQuery;
+import org.apache.lucene.search.join.ToParentBlockJoinQuery;
import org.apache.lucene.search.vectorhighlight.FieldTermStack.TermInfo;
/**
@@ -137,6 +138,11 @@ public class FieldQuery {
if (q != null) {
flatten( q, reader, flatQueries, boost);
}
+ } else if (sourceQuery instanceof ToParentBlockJoinQuery) {
+ Query childQuery = ((ToParentBlockJoinQuery) sourceQuery).getChildQuery();
+ if (childQuery != null) {
+ flatten(childQuery, reader, flatQueries, boost);
+ }
} else if (reader != null) {
Query query = sourceQuery;
Query rewritten;
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/4edba946/lucene/highlighter/src/test/org/apache/lucene/search/vectorhighlight/FieldQueryTest.java
----------------------------------------------------------------------
diff --git a/lucene/highlighter/src/test/org/apache/lucene/search/vectorhighlight/FieldQueryTest.java b/lucene/highlighter/src/test/org/apache/lucene/search/vectorhighlight/FieldQueryTest.java
index ce82546..1976327 100644
--- a/lucene/highlighter/src/test/org/apache/lucene/search/vectorhighlight/FieldQueryTest.java
+++ b/lucene/highlighter/src/test/org/apache/lucene/search/vectorhighlight/FieldQueryTest.java
@@ -27,12 +27,16 @@ import org.apache.lucene.search.BooleanClause.Occur;
import org.apache.lucene.search.BooleanQuery;
import org.apache.lucene.search.BoostQuery;
import org.apache.lucene.search.ConstantScoreQuery;
+import org.apache.lucene.search.MatchAllDocsQuery;
import org.apache.lucene.search.PrefixQuery;
import org.apache.lucene.search.Query;
import org.apache.lucene.search.RegexpQuery;
import org.apache.lucene.search.TermQuery;
import org.apache.lucene.search.TermRangeQuery;
import org.apache.lucene.search.WildcardQuery;
+import org.apache.lucene.search.join.QueryBitSetProducer;
+import org.apache.lucene.search.join.ScoreMode;
+import org.apache.lucene.search.join.ToParentBlockJoinQuery;
import org.apache.lucene.search.vectorhighlight.FieldQuery.QueryPhraseMap;
import org.apache.lucene.search.vectorhighlight.FieldTermStack.TermInfo;
import org.apache.lucene.util.BytesRef;
@@ -951,4 +955,15 @@ public class FieldQueryTest extends AbstractTestCase {
assertCollectionQueries( flatQueries, tq( boost, "A" ) );
}
+ public void testFlattenToParentBlockJoinQuery() throws Exception {
+ initBoost();
+ Query childQuery = tq(boost, "a");
+ Query query = new ToParentBlockJoinQuery(childQuery, new QueryBitSetProducer(new MatchAllDocsQuery()), ScoreMode.None);
+ query = new BoostQuery(query, boost );
+ FieldQuery fq = new FieldQuery(query, true, true );
+ Set<Query> flatQueries = new HashSet<>();
+ fq.flatten(query, reader, flatQueries, 1f );
+ assertCollectionQueries(flatQueries, tq(boost, "a"));
+ }
+
}