diff options
author | Jon Bratseth <bratseth@oath.com> | 2018-05-28 13:47:57 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@oath.com> | 2018-05-28 13:47:57 +0200 |
commit | 86629b1412ee4fe45b9c0c54ceb10f0287f2ece3 (patch) | |
tree | 5421ca547b8e0a7428d1baef80314ca9d2755a31 /container-search/src/main/java/com/yahoo/prelude/querytransform | |
parent | c721dbc32a95a5a754464461bf154141ad6c5f07 (diff) |
Replace by parse query only
Diffstat (limited to 'container-search/src/main/java/com/yahoo/prelude/querytransform')
-rw-r--r-- | container-search/src/main/java/com/yahoo/prelude/querytransform/IndexCombinatorSearcher.java | 40 |
1 files changed, 21 insertions, 19 deletions
diff --git a/container-search/src/main/java/com/yahoo/prelude/querytransform/IndexCombinatorSearcher.java b/container-search/src/main/java/com/yahoo/prelude/querytransform/IndexCombinatorSearcher.java index dd8f4eff666..238265df2cc 100644 --- a/container-search/src/main/java/com/yahoo/prelude/querytransform/IndexCombinatorSearcher.java +++ b/container-search/src/main/java/com/yahoo/prelude/querytransform/IndexCombinatorSearcher.java @@ -12,6 +12,7 @@ import com.yahoo.prelude.Index.Attribute; import com.yahoo.prelude.IndexFacts; import com.yahoo.prelude.query.*; import com.yahoo.search.Query; +import com.yahoo.search.Result; import com.yahoo.search.Searcher; import com.yahoo.search.searchchain.Execution; import com.yahoo.search.searchchain.PhaseNames; @@ -63,8 +64,10 @@ public class IndexCombinatorSearcher extends Searcher { } @Override - public com.yahoo.search.Result search(Query query, Execution execution) { + public Result search(Query query, Execution execution) { + // TODO Item root = query.getModel().getQueryTree().getRoot(); + if (1==1) return execution.search(query); IndexFacts.Session session = execution.context().getIndexFacts().newSession(query); String oldQuery = (query.getTraceLevel() >= 2) ? root.toString() : ""; @@ -176,22 +179,22 @@ public class IndexCombinatorSearcher extends Searcher { if (c instanceof NotItem) { c = rewriteNot((NotItem) c, session); return c; - } else if (c instanceof CompositeItem) { + } else { switch (chooseRewriteStrategy(c, session)) { - case NONE: - c = traverse(c, session); - break; - case CHEAP_AND: - c = cheapTransform(c, session); - break; - case EXPENSIVE_AND: - c = expensiveTransform((AndItem) c, session); - break; - case FLAT: - c = flatTransform(c, session); - break; - default: - break; + case NONE: + c = traverse(c, session); + break; + case CHEAP_AND: + c = cheapTransform(c, session); + break; + case EXPENSIVE_AND: + c = expensiveTransform((AndItem) c, session); + break; + case FLAT: + c = flatTransform(c, session); + break; + default: + break; } } return c; @@ -201,8 +204,7 @@ public class IndexCombinatorSearcher extends Searcher { int length = c.getItemCount(); for (int i = 0; i < length; ++i) { Item word = c.getItem(i); - if (word instanceof CompositeItem && !(word instanceof PhraseItem) - && !(word instanceof BlockItem)) { + if (word instanceof CompositeItem && !(word instanceof PhraseItem) && !(word instanceof BlockItem)) { c.setItem(i, rewrite((CompositeItem) word, session)); } } @@ -336,7 +338,7 @@ public class IndexCombinatorSearcher extends Searcher { WordItem newWord = new WordItem(asPhrase.getIndexedString(), newIndex.name, false); return newWord; } else if (word instanceof IndexedItem) { - word.setIndexName(newIndex.name); + word.setIndexName(newIndex.name); } else if (word instanceof CompositeItem) { CompositeItem asComposite = (CompositeItem) word; for (Iterator<Item> i = asComposite.getItemIterator(); i.hasNext();) { |