@Override public boolean evaluate() { // disable evaluation if a fulltext index is used, // and because we don't know how to process native // conditions if (!(selector.getIndex() instanceof NativeQueryIndex)) { log.warn("No full-text index was found that can process the condition " + toString()); return false; } // we assume the index only returns the requested entries return true; }
@Override public boolean evaluate() { // disable evaluation if a fulltext index is used, // and because we don't know how to process native // conditions if (!(selector.getIndex() instanceof NativeQueryIndex)) { log.warn("No full-text index was found that can process the condition " + toString()); return false; } // we assume the index only returns the requested entries return true; }
@Override public boolean evaluate() { // disable evaluation if a fulltext index is used, // and because we don't know how to process native // conditions if (!(selector.getIndex() instanceof FulltextQueryIndex)) { log.warn("No full-text index was found that can process the condition " + toString()); return false; } // we assume the index only returns the requested entries return true; }
@Override public boolean evaluate() { // disable evaluation if a fulltext index is used, // and because we don't know how to process native // conditions if (!(selector.getIndex() instanceof FulltextQueryIndex)) { log.warn("No full-text index was found that can process the condition " + toString()); return false; } // we assume the index only returns the requested entries return true; }
@Override public boolean evaluate() { // disable evaluation if a fulltext index is used, // and because we don't know how to process native // conditions if (!(selector.getIndex() instanceof NativeQueryIndex)) { log.warn("No full-text index was found that can process the condition " + toString()); return false; } // we assume the index only returns the requested entries return true; }
@Override public boolean evaluate() { // disable evaluation if a fulltext index is used, // and because we don't know how to process native // conditions if (!(selector.getIndex() instanceof FulltextQueryIndex)) { log.warn("No full-text index was found that can process the condition " + toString()); return false; } // we assume the index only returns the requested entries return true; }
@Override public boolean evaluate() { // disable evaluation if a fulltext index is used, // and because we don't know how to process native // conditions if (!(selector.getIndex() instanceof FulltextQueryIndex)) { log.warn("No full-text index was found that can process the condition " + toString()); return false; } // we assume the index only returns the requested entries return true; }
@Override public boolean evaluate() { // disable evaluation if a fulltext index is used, // and because we don't know how to process native // conditions if (!(selector.getIndex() instanceof FulltextQueryIndex)) { log.warn("No full-text index was found that can process the condition " + toString()); return false; } // we assume the index only returns the requested entries return true; }
@Override public boolean evaluate() { // disable evaluation if a fulltext index is used, // and because we don't know how to process native // conditions if (!(selector.getIndex() instanceof FulltextQueryIndex)) { log.warn("No full-text index was found that can process the condition " + toString()); return false; } // we assume the index only returns the requested entries return true; }
@Override public boolean evaluateStop() { // if a fulltext index is used, then we are fine if (selector.getIndex() instanceof FulltextQueryIndex) { return false; } // OAK-2050 if (!query.getSettings().getFullTextComparisonWithoutIndex()) { return true; } return false; }
@Override public boolean evaluateStop() { // if a fulltext index is used, then we are fine if (selector.getIndex() instanceof FulltextQueryIndex) { return false; } // OAK-2050 if (!query.getSettings().getFullTextComparisonWithoutIndex()) { return true; } return false; }
@Override public boolean evaluateStop() { // if a fulltext index is used, then we are fine if (selector.getIndex() instanceof FulltextQueryIndex) { return false; } // OAK-2050 if (!query.getSettings().getFullTextComparisonWithoutIndex()) { return true; } return false; }
@Override public String getIndexCostInfo(NodeState rootState) { StringBuilder buff = new StringBuilder(); buff.append(quoteJson(selectorName)).append(": "); QueryIndex index = getIndex(); if (index != null) { if (index instanceof AdvancedQueryIndex) { IndexPlan p = plan.getIndexPlan(); buff.append("{ perEntry: ").append(p.getCostPerEntry()); buff.append(", perExecution: ").append(p.getCostPerExecution()); buff.append(", count: ").append(p.getEstimatedEntryCount()); buff.append(" }"); } else { buff.append(index.getCost(createFilter(true), rootState)); } } return buff.toString(); }
@Override public String getIndexCostInfo(NodeState rootState) { StringBuilder buff = new StringBuilder(); buff.append(quoteJson(selectorName)).append(": "); QueryIndex index = getIndex(); if (index != null) { if (index instanceof AdvancedQueryIndex) { IndexPlan p = plan.getIndexPlan(); buff.append("{ perEntry: ").append(p.getCostPerEntry()); buff.append(", perExecution: ").append(p.getCostPerExecution()); buff.append(", count: ").append(p.getEstimatedEntryCount()); buff.append(" }"); } else { buff.append(index.getCost(createFilter(true), rootState)); } } return buff.toString(); }
@Override public String getIndexCostInfo(NodeState rootState) { StringBuilder buff = new StringBuilder(); buff.append(quoteJson(selectorName)).append(": "); QueryIndex index = getIndex(); if (index != null) { if (index instanceof AdvancedQueryIndex) { IndexPlan p = plan.getIndexPlan(); buff.append("{ perEntry: ").append(p.getCostPerEntry()); buff.append(", perExecution: ").append(p.getCostPerExecution()); buff.append(", count: ").append(p.getEstimatedEntryCount()); buff.append(" }"); } else { buff.append(index.getCost(createFilter(true), rootState)); } } return buff.toString(); }
@Override public String getPlan(NodeState rootState) { StringBuilder buff = new StringBuilder(); buff.append(toString()); buff.append(" /* "); QueryIndex index = getIndex(); if (index != null) { if (index instanceof AdvancedQueryIndex) { AdvancedQueryIndex adv = (AdvancedQueryIndex) index; IndexPlan p = plan.getIndexPlan(); buff.append(adv.getPlanDescription(p, rootState)); } else { buff.append(index.getPlan(createFilter(true), rootState)); } } else { buff.append("no-index"); } if (!selectorConstraints.isEmpty()) { buff.append(" where ").append(new AndImpl(selectorConstraints).toString()); } buff.append(" */"); return buff.toString(); }
@Override public String getPlan(NodeState rootState) { StringBuilder buff = new StringBuilder(); buff.append(toString()); buff.append(" /* "); QueryIndex index = getIndex(); if (index != null) { if (index instanceof AdvancedQueryIndex) { AdvancedQueryIndex adv = (AdvancedQueryIndex) index; IndexPlan p = plan.getIndexPlan(); buff.append(adv.getPlanDescription(p, rootState)); } else { buff.append(index.getPlan(createFilter(true), rootState)); } } else { buff.append("no-index"); } if (!selectorConstraints.isEmpty()) { buff.append(" where ").append(new AndImpl(selectorConstraints).toString()); } buff.append(" */"); return buff.toString(); }
@Override public String getPlan(NodeState rootState) { StringBuilder buff = new StringBuilder(); buff.append(toString()); buff.append(" /* "); QueryIndex index = getIndex(); if (index != null) { if (index instanceof AdvancedQueryIndex) { AdvancedQueryIndex adv = (AdvancedQueryIndex) index; IndexPlan p = plan.getIndexPlan(); buff.append(adv.getPlanDescription(p, rootState)); } else { buff.append(index.getPlan(createFilter(true), rootState)); } } else { buff.append("no-index"); } if (!selectorConstraints.isEmpty()) { buff.append(" where ").append(new AndImpl(selectorConstraints).toString()); } buff.append(" */"); return buff.toString(); }
@Override public boolean evaluate() { // disable evaluation if a fulltext index is used, // and because we don't know how to process native // conditions if (!(selector.getIndex() instanceof FulltextQueryIndex)) { log.warn("No full-text index was found that can process the condition " + toString()); return false; } // verify the path is readable PropertyValue p = pathExpression.currentValue(); String path = p.getValue(Type.STRING); if (selector.getTree(path) == null) { return false; } if (propertyName != null) { if (selector.currentProperty(propertyName) == null) { // property not found return false; } } // we assume the index only returns the requested entries return true; }
@Override public boolean evaluate() { // disable evaluation if a fulltext index is used, // and because we don't know how to process native // conditions if (!(selector.getIndex() instanceof FulltextQueryIndex)) { log.warn("No full-text index was found that can process the condition " + toString()); return false; } // verify the path is readable PropertyValue p = pathExpression.currentValue(); String path = p.getValue(Type.STRING); if (selector.getTree(path) == null) { return false; } if (propertyName != null) { if (selector.currentProperty(propertyName) == null) { // property not found return false; } } // we assume the index only returns the requested entries return true; }