try { final long start = System.nanoTime(); IndexFieldData.Global ifd = indexFieldDataService.getForField(fieldType); DirectoryReader reader = searcher.getDirectoryReader(); IndexFieldData<?> global = ifd.loadGlobal(reader);
clearedAtLeastOne = true; if (fields.length == 0) { indexFieldData.clear(); } else { for (String field : fields) { indexFieldData.clearField(field); if (fields.length == 0) { indexCache.clear("api"); indexFieldData.clear(); } else { indexFieldData.clearField(field);
public <IFD extends IndexFieldData<?>> IFD getForField(MappedFieldType fieldType) { return getForField(fieldType, index().getName()); }
when(mapperService.types()).thenReturn(Collections.singleton(TYPE_NAME)); when(searchContext.mapperService()).thenReturn(mapperService); IndexFieldDataService ifds = new IndexFieldDataService(indexSettings, new IndicesFieldDataCache(Settings.EMPTY, new IndexFieldDataCache.Listener() { }), circuitBreakerService, mapperService); when(searchContext.getForField(Mockito.any(MappedFieldType.class))) .thenAnswer(invocationOnMock -> ifds.getForField((MappedFieldType) invocationOnMock.getArguments()[0]));
@Override public void close() throws IOException { clear(); } }
@SuppressWarnings("unchecked") public <IFD extends IndexFieldData<?>> IFD getForField(MappedFieldType fieldType, String fullyQualifiedIndexName) { final String fieldName = fieldType.name(); IndexFieldData.Builder builder = fieldType.fielddataBuilder(fullyQualifiedIndexName); IndexFieldDataCache cache; synchronized (this) { cache = fieldDataCaches.get(fieldName); if (cache == null) { String cacheType = indexSettings.getValue(INDEX_FIELDDATA_CACHE_KEY); if (FIELDDATA_CACHE_VALUE_NODE.equals(cacheType)) { cache = indicesFieldDataCache.buildIndexFieldDataCache(listener, index(), fieldName); } else if ("none".equals(cacheType)){ cache = new IndexFieldDataCache.None(); } else { throw new IllegalArgumentException("cache type not supported [" + cacheType + "] for field [" + fieldName + "]"); } fieldDataCaches.put(fieldName, cache); } } return (IFD) builder.build(indexSettings, fieldType, cache, circuitBreakerService, mapperService); }
@Override public void close() throws IOException { clear(); } }
@SuppressWarnings("unchecked") public <IFD extends IndexFieldData<?>> IFD getForField(MappedFieldType fieldType) { final String fieldName = fieldType.name(); IndexFieldData.Builder builder = fieldType.fielddataBuilder(); IndexFieldDataCache cache; synchronized (this) { cache = fieldDataCaches.get(fieldName); if (cache == null) { String cacheType = indexSettings.getValue(INDEX_FIELDDATA_CACHE_KEY); if (FIELDDATA_CACHE_VALUE_NODE.equals(cacheType)) { cache = indicesFieldDataCache.buildIndexFieldDataCache(listener, index(), fieldName); } else if ("none".equals(cacheType)){ cache = new IndexFieldDataCache.None(); } else { throw new IllegalArgumentException("cache type not supported [" + cacheType + "] for field [" + fieldName + "]"); } fieldDataCaches.put(fieldName, cache); } } return (IFD) builder.build(indexSettings, fieldType, cache, circuitBreakerService, mapperService); }
@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 fieldType) { return getForField(fieldType, index().getName()); }
clearedAtLeastOne = true; if (fields.length == 0) { indexFieldData.clear(); } else { for (String field : fields) { indexFieldData.clearField(field); if (fields.length == 0) { indexCache.clear("api"); indexFieldData.clear(); } else { indexFieldData.clearField(field);
@Override public void close() throws IOException { clear(); } }
@SuppressWarnings("unchecked") public <IFD extends IndexFieldData<?>> IFD getForField(MappedFieldType fieldType, String fullyQualifiedIndexName) { final String fieldName = fieldType.name(); IndexFieldData.Builder builder = fieldType.fielddataBuilder(fullyQualifiedIndexName); IndexFieldDataCache cache; synchronized (this) { cache = fieldDataCaches.get(fieldName); if (cache == null) { String cacheType = indexSettings.getValue(INDEX_FIELDDATA_CACHE_KEY); if (FIELDDATA_CACHE_VALUE_NODE.equals(cacheType)) { cache = indicesFieldDataCache.buildIndexFieldDataCache(listener, index(), fieldName); } else if ("none".equals(cacheType)){ cache = new IndexFieldDataCache.None(); } else { throw new IllegalArgumentException("cache type not supported [" + cacheType + "] for field [" + fieldName + "]"); } fieldDataCaches.put(fieldName, cache); } } return (IFD) builder.build(indexSettings, fieldType, cache, circuitBreakerService, mapperService); }
public <IFD extends IndexFieldData<?>> IFD getForField(MappedFieldType mapper) { return indexQueryParser.fieldDataService.getForField(mapper); }
public <IFD extends IndexFieldData<?>> IFD getForField(MappedFieldType fieldType) { return getForField(fieldType, index().getName()); }
clearedAtLeastOne = true; if (request.fields() == null || request.fields().length == 0) { service.fieldData().clear(); } else { for (String field : request.fields()) { service.fieldData().clearField(field); service.fieldData().clearField(field); service.fieldData().clear(); indicesService.clearRequestCache(shard);
@Override public void close() throws IOException { clear(); } }
@SuppressWarnings("unchecked") public <IFD extends IndexFieldData<?>> IFD getForField(MappedFieldType fieldType, String fullyQualifiedIndexName) { final String fieldName = fieldType.name(); IndexFieldData.Builder builder = fieldType.fielddataBuilder(fullyQualifiedIndexName); IndexFieldDataCache cache; synchronized (this) { cache = fieldDataCaches.get(fieldName); if (cache == null) { String cacheType = indexSettings.getValue(INDEX_FIELDDATA_CACHE_KEY); if (FIELDDATA_CACHE_VALUE_NODE.equals(cacheType)) { cache = indicesFieldDataCache.buildIndexFieldDataCache(listener, index(), fieldName); } else if ("none".equals(cacheType)){ cache = new IndexFieldDataCache.None(); } else { throw new IllegalArgumentException("cache type not supported [" + cacheType + "] for field [" + fieldName + "]"); } fieldDataCaches.put(fieldName, cache); } } return (IFD) builder.build(indexSettings, fieldType, cache, circuitBreakerService, mapperService); }
public <IFD extends IndexFieldData<?>> IFD getForField(MappedFieldType mapper) { return indexFieldDataService.getForField(mapper); }
clearedAtLeastOne = true; if (request.fields() == null || request.fields().length == 0) { service.fieldData().clear(); } else { for (String field : request.fields()) { service.fieldData().clearField(field); service.fieldData().clearField(field); service.fieldData().clear(); indicesRequestCache.clear(shard);