public <IFD extends IndexFieldData<?>> IFD getForField(MappedFieldType fieldType) { return getForField(fieldType, index().getName()); }
try { final long start = System.nanoTime(); IndexFieldData.Global ifd = indexFieldDataService.getForField(fieldType); DirectoryReader reader = searcher.getDirectoryReader(); IndexFieldData<?> global = ifd.loadGlobal(reader);
public <IFD extends IndexFieldData<?>> IFD getForField(MappedFieldType mapper) { return indexQueryParser.fieldDataService.getForField(mapper); }
@Override public <IFD extends IndexFieldData<?>> IFD getForField(MappedFieldType fieldType) { return serviceHolder.indexFieldDataService.getForField(fieldType); // need to build / parse inner hits sort fields }
public <IFD extends IndexFieldData<?>> IFD getForField(MappedFieldType mapper) { return indexFieldDataService.getForField(mapper); }
BatchQueriesLoaderCollector(BatchPercolatorQueriesRegistry percolator, ESLogger logger, MapperService mapperService, IndexFieldDataService indexFieldDataService) { this.percolator = percolator; this.logger = logger; final FieldMapper<?> idMapper = mapperService.smartNameFieldMapper(ID_FIELD); //we use our own ID field. this.idFieldData = indexFieldDataService.getForField(idMapper); }
QueriesLoaderCollector(PercolatorQueriesRegistry percolator, ESLogger logger, MapperService mapperService, IndexFieldDataService indexFieldDataService) { this.percolator = percolator; this.logger = logger; final MappedFieldType uidMapper = mapperService.smartNameFieldType(UidFieldMapper.NAME); this.uidFieldData = indexFieldDataService.getForField(uidMapper); }
@Override public ScriptDocValues run() { return fieldDataService.getForField(fieldType).load(reader).getScriptValues(); } });
@Override public ScriptDocValues<?> run() { return fieldDataService.getForField(fieldType).load(reader).getScriptValues(); } });
public <IFD extends IndexFieldData<?>> IFD getForField(MappedFieldType fieldType) { return getForField(fieldType, index().getName()); }
public <IFD extends IndexFieldData<?>> IFD getForField(MappedFieldType fieldType) { return getForField(fieldType, index().getName()); }
@SuppressWarnings("unchecked") private <IFD> IFD getFieldData(final String facetName, final String fieldName, final SearchContext context) { if(fieldName != null) { final FieldMapper<?> mapper = context.smartNameFieldMapper(fieldName); if(mapper == null) { throw new FacetPhaseExecutionException(facetName, "no mapping found for " + fieldName); } // This cast is a workaround to deal with issue #41 return (IFD) context.fieldData().getForField(mapper); } return null; }
private LongArrayIndexFieldData getKeyFieldData(final String facetName, final String fieldName, final SearchContext context) { if(fieldName != null) { final FieldMapper<?> mapper = context.smartNameFieldMapper(fieldName); if(mapper == null) { throw new FacetPhaseExecutionException(facetName, "no mapping found for " + fieldName); } if(!"long".equals(mapper.fieldDataType().getType())) { throw new FacetPhaseExecutionException(facetName, "key field " + fieldName + " is not of type long"); } return context.fieldData().getForField(mapper); } else throw new FacetPhaseExecutionException(facetName, "[key_field] is required to be set for date facet"); }
final IndexFieldData<?> indexFieldData = context.fieldData().getForField(mapper);
@Override public void run() { try { final long start = System.nanoTime(); indexFieldDataService.getForField(fieldType).load(ctx); if (indexShard.warmerService().logger().isTraceEnabled()) { indexShard.warmerService().logger().trace("warmed fielddata for [{}], took [{}]", fieldType.names().fullName(), TimeValue.timeValueNanos(System.nanoTime() - start)); } } catch (Throwable t) { indexShard.warmerService().logger().warn("failed to warm-up fielddata for [{}]", t, fieldType.names().fullName()); } finally { latch.countDown(); } }
@Override public void run() { try { final long start = System.nanoTime(); IndexFieldData.Global ifd = indexFieldDataService.getForField(fieldType); ifd.loadGlobal(context.getDirectoryReader()); if (indexShard.warmerService().logger().isTraceEnabled()) { indexShard.warmerService().logger().trace("warmed global ordinals for [{}], took [{}]", fieldType.names().fullName(), TimeValue.timeValueNanos(System.nanoTime() - start)); } } catch (Throwable t) { indexShard.warmerService().logger().warn("failed to warm-up global ordinals for [{}]", t, fieldType.names().fullName()); } finally { latch.countDown(); } } });
throw new FacetPhaseExecutionException(facetName, "failed to find mapping for [" + fieldName + "]"); IndexGeoPointFieldData indexFieldData = context.fieldData().getForField(fieldMapper); return new GeoClusterFacetExecutor(indexFieldData, factor);
@Override public void hitExecute(SearchContext context, HitContext hitContext) { for (FieldDataFieldsContext.FieldDataField field : context.getFetchSubPhaseContext(CONTEXT_FACTORY).fields()) { if (hitContext.hit().fieldsOrNull() == null) { hitContext.hit().fields(new HashMap<String, SearchHitField>(2)); } SearchHitField hitField = hitContext.hit().fields().get(field.name()); if (hitField == null) { hitField = new InternalSearchHitField(field.name(), new ArrayList<>(2)); hitContext.hit().fields().put(field.name(), hitField); } MappedFieldType fieldType = context.mapperService().smartNameFieldType(field.name()); if (fieldType != null) { AtomicFieldData data = context.fieldData().getForField(fieldType).load(hitContext.readerContext()); ScriptDocValues values = data.getScriptValues(); values.setNextDocId(hitContext.docId()); hitField.values().addAll(values.getValues()); } } } }
AtomicFieldData data = context.fieldData().getForField(fieldType).load(hitContext.readerContext()); ScriptDocValues values = data.getScriptValues(); values.setNextDocId(hitContext.docId());
QueryCollector(ESLogger logger, PercolateContext context, boolean isNestedDoc) throws IOException { this.logger = logger; this.queries = context.percolateQueries(); this.searcher = context.docSearcher(); final MappedFieldType uidMapper = context.mapperService().smartNameFieldType(UidFieldMapper.NAME); this.uidFieldData = context.fieldData().getForField(uidMapper); this.isNestedDoc = isNestedDoc; List<Aggregator> aggregatorCollectors = new ArrayList<>(); if (context.aggregations() != null) { AggregationContext aggregationContext = new AggregationContext(context); context.aggregations().aggregationContext(aggregationContext); Aggregator[] aggregators = context.aggregations().factories().createTopLevelAggregators(aggregationContext); for (int i = 0; i < aggregators.length; i++) { if (!(aggregators[i] instanceof GlobalAggregator)) { Aggregator aggregator = aggregators[i]; aggregatorCollectors.add(aggregator); } } context.aggregations().aggregators(aggregators); } aggregatorCollector = BucketCollector.wrap(aggregatorCollectors); aggregatorCollector.preCollection(); }