@Override public String getPlanDescription(IndexPlan plan, NodeState root) { Filter filter = plan.getFilter(); IndexNode index = acquireIndexNode(plan); checkState(index != null, "The fulltext index of type " + getType() + " index is not available"); try { FullTextExpression ft = filter.getFullTextConstraint(); StringBuilder sb = new StringBuilder(getType()).append(":"); String path = getPlanResult(plan).indexPath; sb.append(getIndexName(plan)) .append("(") .append(path) .append(") "); sb.append(getFulltextRequestString(plan, index)); if (plan.getSortOrder() != null && !plan.getSortOrder().isEmpty()) { sb.append(" ordering:").append(plan.getSortOrder()); } if (ft != null) { sb.append(" ft:(").append(ft).append(")"); } addSyncIndexPlan(plan, sb); return sb.toString(); } finally { index.release(); } }
private static Sort getSort(IndexPlan plan) { List<OrderEntry> sortOrder = plan.getSortOrder(); if (sortOrder == null || sortOrder.isEmpty()) { return null; } sortOrder = removeNativeSort(sortOrder); List<SortField> fieldsList = newArrayListWithCapacity(sortOrder.size()); PlanResult planResult = getPlanResult(plan); for (int i = 0; i < sortOrder.size(); i++) { OrderEntry oe = sortOrder.get(i); PropertyDefinition pd = planResult.getOrderedProperty(i); boolean reverse = oe.getOrder() != OrderEntry.Order.ASCENDING; String propName = oe.getPropertyName(); propName = FieldNames.createDocValFieldName(propName); fieldsList.add(new SortField(propName, toLuceneSortType(oe, pd), reverse)); } if (fieldsList.isEmpty()) { return null; } else { return new Sort(fieldsList.toArray(new SortField[0])); } }
private static Sort getSort(IndexPlan plan) { List<OrderEntry> sortOrder = plan.getSortOrder(); if (sortOrder == null || sortOrder.isEmpty()) { return null; } sortOrder = removeNativeSort(sortOrder); List<SortField> fieldsList = newArrayListWithCapacity(sortOrder.size()); PlanResult planResult = getPlanResult(plan); for (int i = 0; i < sortOrder.size(); i++) { OrderEntry oe = sortOrder.get(i); PropertyDefinition pd = planResult.getOrderedProperty(i); boolean reverse = oe.getOrder() != OrderEntry.Order.ASCENDING; String propName = oe.getPropertyName(); propName = FieldNames.createDocValFieldName(propName); fieldsList.add(new SortField(propName, toLuceneSortType(oe, pd), reverse)); } if (fieldsList.isEmpty()) { return null; } else { return new Sort(fieldsList.toArray(new SortField[0])); } }
if (plan != null && plan.getSortOrder() != null) { List<QueryIndex.OrderEntry> sortOrder = plan.getSortOrder(); for (QueryIndex.OrderEntry orderEntry : sortOrder) { SolrQuery.ORDER order;
if (plan != null && plan.getSortOrder() != null) { List<QueryIndex.OrderEntry> sortOrder = plan.getSortOrder(); for (QueryIndex.OrderEntry orderEntry : sortOrder) { SolrQuery.ORDER order;
entryCount = scaleEntryCount(rootState, filter, entryCount); if (sortOrder == null || p.getSortOrder() != null) {
entryCount = scaleEntryCount(rootState, filter, entryCount); if (sortOrder == null || p.getSortOrder() != null) {
entryCount = scaleEntryCount(rootState, filter, entryCount); if (sortOrder == null || p.getSortOrder() != null) {
&& plan.getSortOrder() != null) { List<OrderEntry> orders = removeNativeSort(plan.getSortOrder()); for (int i = 0; i < orders.size(); i++) { OrderEntry oe = orders.get(i);
&& plan.getSortOrder() != null) { List<OrderEntry> orders = removeNativeSort(plan.getSortOrder()); for (int i = 0; i < orders.size(); i++) { OrderEntry oe = orders.get(i);
IndexPlan plan = selectors.get(0).getExecutionPlan().getIndexPlan(); if (plan != null) { List<OrderEntry> list = plan.getSortOrder(); if (list != null && list.size() == orderings.length) { canSortByIndex = true;
IndexPlan plan = selectors.get(0).getExecutionPlan().getIndexPlan(); if (plan != null) { List<OrderEntry> list = plan.getSortOrder(); if (list != null && list.size() == orderings.length) { canSortByIndex = true;
IndexPlan plan = selectors.get(0).getExecutionPlan().getIndexPlan(); if (plan != null) { List<OrderEntry> list = plan.getSortOrder(); if (list != null && list.size() == orderings.length) { canSortByIndex = true;