Skip to content

Commit

Permalink
Rename AggregateDoubleMetric to *MetricDouble (#121254) (#121701)
Browse files Browse the repository at this point in the history
Some areas of the code call this field type
AggregateDoubleMetric and others AggregateMetricDouble, but the docs
use aggregate_metric_double, so for consistency this commit refactors
the former into the latter.
  • Loading branch information
limotova authored Feb 4, 2025
1 parent cf4ba3c commit f89ac2c
Show file tree
Hide file tree
Showing 22 changed files with 124 additions and 124 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -10,18 +10,18 @@
import org.elasticsearch.index.fielddata.IndexFieldData;
import org.elasticsearch.index.mapper.MappedFieldType;
import org.elasticsearch.index.mapper.NumberFieldMapper;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateDoubleMetricFieldMapper;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateDoubleMetricFieldMapper.AggregateDoubleMetricFieldType;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateMetricDoubleFieldMapper;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateMetricDoubleFieldMapper.AggregateMetricDoubleFieldType;

public final class AggregateMetricFieldValueFetcher extends FieldValueFetcher {

private final AggregateDoubleMetricFieldType aggMetricFieldType;
private final AggregateMetricDoubleFieldType aggMetricFieldType;

private final AbstractDownsampleFieldProducer fieldProducer;

AggregateMetricFieldValueFetcher(
MappedFieldType fieldType,
AggregateDoubleMetricFieldType aggMetricFieldType,
AggregateMetricDoubleFieldType aggMetricFieldType,
IndexFieldData<?> fieldData
) {
super(fieldType.name(), fieldType, fieldData);
Expand All @@ -34,7 +34,7 @@ public AbstractDownsampleFieldProducer fieldProducer() {
}

private AbstractDownsampleFieldProducer createFieldProducer() {
AggregateDoubleMetricFieldMapper.Metric metric = null;
AggregateMetricDoubleFieldMapper.Metric metric = null;
for (var e : aggMetricFieldType.getMetricFields().entrySet()) {
NumberFieldMapper.NumberFieldType metricSubField = e.getValue();
if (metricSubField.name().equals(name())) {
Expand All @@ -52,7 +52,7 @@ private AbstractDownsampleFieldProducer createFieldProducer() {
case min -> new MetricFieldProducer.Min();
case sum -> new MetricFieldProducer.Sum();
// To compute value_count summary, we must sum all field values
case value_count -> new MetricFieldProducer.Sum(AggregateDoubleMetricFieldMapper.Metric.value_count.name());
case value_count -> new MetricFieldProducer.Sum(AggregateMetricDoubleFieldMapper.Metric.value_count.name());
};
return new MetricFieldProducer.GaugeMetricFieldProducer(aggMetricFieldType.name(), metricOperation);
} else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
import org.elasticsearch.index.mapper.flattened.FlattenedFieldMapper;
import org.elasticsearch.index.query.SearchExecutionContext;
import org.elasticsearch.search.DocValueFormat;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateDoubleMetricFieldMapper;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateMetricDoubleFieldMapper;

import java.util.ArrayList;
import java.util.Collections;
Expand Down Expand Up @@ -82,7 +82,7 @@ static List<FieldValueFetcher> create(SearchExecutionContext context, String[] f
MappedFieldType fieldType = context.getFieldType(field);
assert fieldType != null : "Unknown field type for field: [" + field + "]";

if (fieldType instanceof AggregateDoubleMetricFieldMapper.AggregateDoubleMetricFieldType aggMetricFieldType) {
if (fieldType instanceof AggregateMetricDoubleFieldMapper.AggregateMetricDoubleFieldType aggMetricFieldType) {
// If the field is an aggregate_metric_double field, we should load all its subfields
// This is a downsample-of-downsample case
for (NumberFieldMapper.NumberFieldType metricSubField : aggMetricFieldType.getMetricFields().values()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
import org.elasticsearch.index.fielddata.HistogramValue;
import org.elasticsearch.index.mapper.flattened.FlattenedFieldSyntheticWriterHelper;
import org.elasticsearch.xcontent.XContentBuilder;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateDoubleMetricFieldMapper.Metric;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateMetricDoubleFieldMapper.Metric;

import java.io.IOException;
import java.util.ArrayList;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@
import org.elasticsearch.xcontent.XContentBuilder;
import org.elasticsearch.xcontent.XContentFactory;
import org.elasticsearch.xcontent.XContentType;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateDoubleMetricFieldMapper;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateMetricDoubleFieldMapper;
import org.elasticsearch.xpack.core.ClientHelper;
import org.elasticsearch.xpack.core.downsample.DownsampleShardPersistentTaskState;
import org.elasticsearch.xpack.core.downsample.DownsampleShardTask;
Expand Down Expand Up @@ -755,9 +755,9 @@ private static void addMetricFieldMapping(final XContentBuilder builder, final S
final String[] supportedAggsArray = metricType.supportedAggs();
// We choose max as the default metric
final String defaultMetric = List.of(supportedAggsArray).contains("max") ? "max" : supportedAggsArray[0];
builder.field("type", AggregateDoubleMetricFieldMapper.CONTENT_TYPE)
.array(AggregateDoubleMetricFieldMapper.Names.METRICS, supportedAggsArray)
.field(AggregateDoubleMetricFieldMapper.Names.DEFAULT_METRIC, defaultMetric)
builder.field("type", AggregateMetricDoubleFieldMapper.CONTENT_TYPE)
.array(AggregateMetricDoubleFieldMapper.Names.METRICS, supportedAggsArray)
.field(AggregateMetricDoubleFieldMapper.Names.DEFAULT_METRIC, defaultMetric)
.field(TIME_SERIES_METRIC_PARAM, metricType);
}
builder.endObject();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
import org.elasticsearch.plugins.SearchPlugin;
import org.elasticsearch.search.aggregations.support.ValuesSourceRegistry;
import org.elasticsearch.xpack.aggregatemetric.aggregations.metrics.AggregateMetricsAggregatorsRegistrar;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateDoubleMetricFieldMapper;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateMetricDoubleFieldMapper;
import org.elasticsearch.xpack.core.action.XPackInfoFeatureAction;
import org.elasticsearch.xpack.core.action.XPackUsageFeatureAction;

Expand All @@ -32,7 +32,7 @@ public class AggregateMetricMapperPlugin extends Plugin implements MapperPlugin,

@Override
public Map<String, Mapper.TypeParser> getMappers() {
return singletonMap(AggregateDoubleMetricFieldMapper.CONTENT_TYPE, AggregateDoubleMetricFieldMapper.PARSER);
return singletonMap(AggregateMetricDoubleFieldMapper.CONTENT_TYPE, AggregateMetricDoubleFieldMapper.PARSER);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,14 @@
import org.elasticsearch.search.aggregations.support.AggregationContext;
import org.elasticsearch.search.aggregations.support.ValuesSourceConfig;
import org.elasticsearch.xpack.aggregatemetric.aggregations.support.AggregateMetricsValuesSource;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateDoubleMetricFieldMapper.Metric;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateMetricDoubleFieldMapper.Metric;

import java.io.IOException;
import java.util.Map;

class AggregateMetricBackedAvgAggregator extends NumericMetricsAggregator.SingleValue {

final AggregateMetricsValuesSource.AggregateDoubleMetric valuesSource;
final AggregateMetricsValuesSource.AggregateMetricDouble valuesSource;

LongArray counts;
DoubleArray sums;
Expand All @@ -47,7 +47,7 @@ class AggregateMetricBackedAvgAggregator extends NumericMetricsAggregator.Single
) throws IOException {
super(name, context, parent, metadata);
assert valuesSourceConfig.hasValues();
this.valuesSource = (AggregateMetricsValuesSource.AggregateDoubleMetric) valuesSourceConfig.getValuesSource();
this.valuesSource = (AggregateMetricsValuesSource.AggregateMetricDouble) valuesSourceConfig.getValuesSource();
final BigArrays bigArrays = context.bigArrays();
counts = bigArrays.newLongArray(1, true);
sums = bigArrays.newDoubleArray(1, true);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,14 @@
import org.elasticsearch.search.aggregations.support.AggregationContext;
import org.elasticsearch.search.aggregations.support.ValuesSourceConfig;
import org.elasticsearch.xpack.aggregatemetric.aggregations.support.AggregateMetricsValuesSource;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateDoubleMetricFieldMapper.Metric;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateMetricDoubleFieldMapper.Metric;

import java.io.IOException;
import java.util.Map;

class AggregateMetricBackedMaxAggregator extends NumericMetricsAggregator.SingleValue {

private final AggregateMetricsValuesSource.AggregateDoubleMetric valuesSource;
private final AggregateMetricsValuesSource.AggregateMetricDouble valuesSource;
final DocValueFormat formatter;
DoubleArray maxes;

Expand All @@ -44,7 +44,7 @@ class AggregateMetricBackedMaxAggregator extends NumericMetricsAggregator.Single
) throws IOException {
super(name, context, parent, metadata);
assert config.hasValues();
this.valuesSource = (AggregateMetricsValuesSource.AggregateDoubleMetric) config.getValuesSource();
this.valuesSource = (AggregateMetricsValuesSource.AggregateMetricDouble) config.getValuesSource();
maxes = context.bigArrays().newDoubleArray(1, false);
maxes.fill(0, maxes.size(), Double.NEGATIVE_INFINITY);
this.formatter = config.format();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,14 @@
import org.elasticsearch.search.aggregations.support.AggregationContext;
import org.elasticsearch.search.aggregations.support.ValuesSourceConfig;
import org.elasticsearch.xpack.aggregatemetric.aggregations.support.AggregateMetricsValuesSource;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateDoubleMetricFieldMapper.Metric;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateMetricDoubleFieldMapper.Metric;

import java.io.IOException;
import java.util.Map;

class AggregateMetricBackedMinAggregator extends NumericMetricsAggregator.SingleValue {

private final AggregateMetricsValuesSource.AggregateDoubleMetric valuesSource;
private final AggregateMetricsValuesSource.AggregateMetricDouble valuesSource;
final DocValueFormat format;
DoubleArray mins;

Expand All @@ -44,7 +44,7 @@ class AggregateMetricBackedMinAggregator extends NumericMetricsAggregator.Single
) throws IOException {
super(name, context, parent, metadata);
assert config.hasValues();
this.valuesSource = (AggregateMetricsValuesSource.AggregateDoubleMetric) config.getValuesSource();
this.valuesSource = (AggregateMetricsValuesSource.AggregateMetricDouble) config.getValuesSource();
mins = context.bigArrays().newDoubleArray(1, false);
mins.fill(0, mins.size(), Double.POSITIVE_INFINITY);
this.format = config.format();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,14 @@
import org.elasticsearch.search.aggregations.support.AggregationContext;
import org.elasticsearch.search.aggregations.support.ValuesSourceConfig;
import org.elasticsearch.xpack.aggregatemetric.aggregations.support.AggregateMetricsValuesSource;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateDoubleMetricFieldMapper.Metric;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateMetricDoubleFieldMapper.Metric;

import java.io.IOException;
import java.util.Map;

class AggregateMetricBackedSumAggregator extends NumericMetricsAggregator.SingleValue {

private final AggregateMetricsValuesSource.AggregateDoubleMetric valuesSource;
private final AggregateMetricsValuesSource.AggregateMetricDouble valuesSource;
private final DocValueFormat format;

private DoubleArray sums;
Expand All @@ -45,7 +45,7 @@ class AggregateMetricBackedSumAggregator extends NumericMetricsAggregator.Single
) throws IOException {
super(name, context, parent, metadata);
assert valuesSourceConfig.hasValues();
this.valuesSource = (AggregateMetricsValuesSource.AggregateDoubleMetric) valuesSourceConfig.getValuesSource();
this.valuesSource = (AggregateMetricsValuesSource.AggregateMetricDouble) valuesSourceConfig.getValuesSource();
sums = context.bigArrays().newDoubleArray(1, true);
compensations = context.bigArrays().newDoubleArray(1, true);
this.format = valuesSourceConfig.format();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
import org.elasticsearch.search.aggregations.support.AggregationContext;
import org.elasticsearch.search.aggregations.support.ValuesSourceConfig;
import org.elasticsearch.xpack.aggregatemetric.aggregations.support.AggregateMetricsValuesSource;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateDoubleMetricFieldMapper;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateMetricDoubleFieldMapper;

import java.io.IOException;
import java.util.Map;
Expand All @@ -32,7 +32,7 @@
*/
class AggregateMetricBackedValueCountAggregator extends NumericMetricsAggregator.SingleValue {

private final AggregateMetricsValuesSource.AggregateDoubleMetric valuesSource;
private final AggregateMetricsValuesSource.AggregateMetricDouble valuesSource;

// a count per bucket
LongArray counts;
Expand All @@ -46,7 +46,7 @@ class AggregateMetricBackedValueCountAggregator extends NumericMetricsAggregator
) throws IOException {
super(name, aggregationContext, parent, metadata);
assert valuesSourceConfig.hasValues();
this.valuesSource = (AggregateMetricsValuesSource.AggregateDoubleMetric) valuesSourceConfig.getValuesSource();
this.valuesSource = (AggregateMetricsValuesSource.AggregateMetricDouble) valuesSourceConfig.getValuesSource();
counts = bigArrays().newLongArray(1, true);
}

Expand All @@ -55,7 +55,7 @@ public LeafBucketCollector getLeafCollector(AggregationExecutionContext aggCtx,
final BigArrays bigArrays = bigArrays();
final SortedNumericDoubleValues values = valuesSource.getAggregateMetricValues(
aggCtx.getLeafReaderContext(),
AggregateDoubleMetricFieldMapper.Metric.value_count
AggregateMetricDoubleFieldMapper.Metric.value_count
);

return new LeafBucketCollectorBase(sub, values) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,23 +13,23 @@
import org.elasticsearch.index.fielddata.SortedNumericDoubleValues;
import org.elasticsearch.search.aggregations.AggregationErrors;
import org.elasticsearch.search.aggregations.support.AggregationContext;
import org.elasticsearch.xpack.aggregatemetric.fielddata.IndexAggregateDoubleMetricFieldData;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateDoubleMetricFieldMapper;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateDoubleMetricFieldMapper.Metric;
import org.elasticsearch.xpack.aggregatemetric.fielddata.IndexAggregateMetricDoubleFieldData;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateMetricDoubleFieldMapper;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateMetricDoubleFieldMapper.Metric;

import java.io.IOException;
import java.util.function.Function;

public class AggregateMetricsValuesSource {
public abstract static class AggregateDoubleMetric extends org.elasticsearch.search.aggregations.support.ValuesSource {
public abstract static class AggregateMetricDouble extends org.elasticsearch.search.aggregations.support.ValuesSource {

public abstract SortedNumericDoubleValues getAggregateMetricValues(LeafReaderContext context, Metric metric) throws IOException;

public static class Fielddata extends AggregateDoubleMetric {
public static class Fielddata extends AggregateMetricDouble {

protected final IndexAggregateDoubleMetricFieldData indexFieldData;
protected final IndexAggregateMetricDoubleFieldData indexFieldData;

public Fielddata(IndexAggregateDoubleMetricFieldData indexFieldData) {
public Fielddata(IndexAggregateMetricDoubleFieldData indexFieldData) {
this.indexFieldData = indexFieldData;
}

Expand All @@ -51,7 +51,7 @@ public boolean advanceExact(int doc) throws IOException {

@Override
protected Function<Rounding, Rounding.Prepared> roundingPreparer(AggregationContext context) throws IOException {
throw AggregationErrors.unsupportedRounding(AggregateDoubleMetricFieldMapper.CONTENT_TYPE);
throw AggregationErrors.unsupportedRounding(AggregateMetricDoubleFieldMapper.CONTENT_TYPE);
}

public SortedNumericDoubleValues getAggregateMetricValues(LeafReaderContext context, Metric metric) throws IOException {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
import org.elasticsearch.search.aggregations.support.ValueType;
import org.elasticsearch.search.aggregations.support.ValuesSource;
import org.elasticsearch.search.aggregations.support.ValuesSourceType;
import org.elasticsearch.xpack.aggregatemetric.fielddata.IndexAggregateDoubleMetricFieldData;
import org.elasticsearch.xpack.aggregatemetric.fielddata.IndexAggregateMetricDoubleFieldData;

import java.util.Locale;
import java.util.function.LongSupplier;
Expand Down Expand Up @@ -43,7 +43,7 @@ public ValuesSource getScript(AggregationScript.LeafFactory script, ValueType sc
public ValuesSource getField(FieldContext fieldContext, AggregationScript.LeafFactory script) {
final IndexFieldData<?> indexFieldData = fieldContext.indexFieldData();

if ((indexFieldData instanceof IndexAggregateDoubleMetricFieldData) == false) {
if ((indexFieldData instanceof IndexAggregateMetricDoubleFieldData) == false) {
throw new IllegalArgumentException(
"Expected aggregate_metric_double type on field ["
+ fieldContext.field()
Expand All @@ -52,7 +52,7 @@ public ValuesSource getField(FieldContext fieldContext, AggregationScript.LeafFa
+ "]"
);
}
return new AggregateMetricsValuesSource.AggregateDoubleMetric.Fielddata((IndexAggregateDoubleMetricFieldData) indexFieldData);
return new AggregateMetricsValuesSource.AggregateMetricDouble.Fielddata((IndexAggregateMetricDoubleFieldData) indexFieldData);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,12 @@
/**
* Specialization of {@link IndexFieldData} for aggregate_metric.
*/
public abstract class IndexAggregateDoubleMetricFieldData implements IndexFieldData<LeafAggregateDoubleMetricFieldData> {
public abstract class IndexAggregateMetricDoubleFieldData implements IndexFieldData<LeafAggregateMetricDoubleFieldData> {

protected final String fieldName;
protected final ValuesSourceType valuesSourceType;

public IndexAggregateDoubleMetricFieldData(String fieldName, ValuesSourceType valuesSourceType) {
public IndexAggregateMetricDoubleFieldData(String fieldName, ValuesSourceType valuesSourceType) {
this.fieldName = fieldName;
this.valuesSourceType = valuesSourceType;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@

import org.elasticsearch.index.fielddata.LeafFieldData;
import org.elasticsearch.index.fielddata.SortedNumericDoubleValues;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateDoubleMetricFieldMapper.Metric;
import org.elasticsearch.xpack.aggregatemetric.mapper.AggregateMetricDoubleFieldMapper.Metric;

/**
* {@link LeafFieldData} specialization for aggregate_double_metric data.
* {@link LeafFieldData} specialization for aggregate_metric_double data.
*/
public interface LeafAggregateDoubleMetricFieldData extends LeafFieldData {
public interface LeafAggregateMetricDoubleFieldData extends LeafFieldData {

/**
* Return aggregate_metric of double values for a given metric
Expand Down
Loading

0 comments on commit f89ac2c

Please sign in to comment.