aboutsummaryrefslogtreecommitdiffstats
path: root/searchlib/src/main/java/com/yahoo/searchlib/aggregation
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2023-10-11 15:58:59 +0200
committerHenning Baldersheim <balder@yahoo-inc.com>2023-10-11 15:58:59 +0200
commit9a8a5c02a309339e1639c72f9dd7bdfabb1ff21a (patch)
tree1d0a7a4f26a81bf8dd58a2d9e5f58d2141788eeb /searchlib/src/main/java/com/yahoo/searchlib/aggregation
parent3fd2ddd74fe25cddeb59c007f0fa94c1e82b6bcc (diff)
- Use a Supplier<Identifable> to construct objects from id.
- Provide lambda for default constructing frequently used objects to avoid reflection.
Diffstat (limited to 'searchlib/src/main/java/com/yahoo/searchlib/aggregation')
-rw-r--r--searchlib/src/main/java/com/yahoo/searchlib/aggregation/AverageAggregationResult.java2
-rw-r--r--searchlib/src/main/java/com/yahoo/searchlib/aggregation/CountAggregationResult.java2
-rw-r--r--searchlib/src/main/java/com/yahoo/searchlib/aggregation/ExpressionCountAggregationResult.java3
-rw-r--r--searchlib/src/main/java/com/yahoo/searchlib/aggregation/FS4Hit.java2
-rw-r--r--searchlib/src/main/java/com/yahoo/searchlib/aggregation/HitsAggregationResult.java4
-rw-r--r--searchlib/src/main/java/com/yahoo/searchlib/aggregation/MaxAggregationResult.java2
-rw-r--r--searchlib/src/main/java/com/yahoo/searchlib/aggregation/MinAggregationResult.java2
-rw-r--r--searchlib/src/main/java/com/yahoo/searchlib/aggregation/StandardDeviationAggregationResult.java4
-rw-r--r--searchlib/src/main/java/com/yahoo/searchlib/aggregation/SumAggregationResult.java2
-rw-r--r--searchlib/src/main/java/com/yahoo/searchlib/aggregation/VdsHit.java2
-rw-r--r--searchlib/src/main/java/com/yahoo/searchlib/aggregation/XorAggregationResult.java2
11 files changed, 12 insertions, 15 deletions
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/AverageAggregationResult.java b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/AverageAggregationResult.java
index 5dc7cc1b634..62201db88f4 100644
--- a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/AverageAggregationResult.java
+++ b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/AverageAggregationResult.java
@@ -16,7 +16,7 @@ import com.yahoo.vespa.objects.Serializer;
*/
public class AverageAggregationResult extends AggregationResult {
- public static final int classId = registerClass(0x4000 + 85, AverageAggregationResult.class);
+ public static final int classId = registerClass(0x4000 + 85, AverageAggregationResult.class, AverageAggregationResult::new);
private NumericResultNode sum;
private long count;
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/CountAggregationResult.java b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/CountAggregationResult.java
index 8a4fb7cdae8..3fa8db5f9db 100644
--- a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/CountAggregationResult.java
+++ b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/CountAggregationResult.java
@@ -15,7 +15,7 @@ import com.yahoo.vespa.objects.Serializer;
*/
public class CountAggregationResult extends AggregationResult {
- public static final int classId = registerClass(0x4000 + 81, CountAggregationResult.class);
+ public static final int classId = registerClass(0x4000 + 81, CountAggregationResult.class, CountAggregationResult::new);
private long count = 0;
/** Constructs an empty result node. <b>NOTE:</b> This instance is broken until non-optional member data is set. */
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/ExpressionCountAggregationResult.java b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/ExpressionCountAggregationResult.java
index a02acbef281..9242e01076c 100644
--- a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/ExpressionCountAggregationResult.java
+++ b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/ExpressionCountAggregationResult.java
@@ -15,7 +15,7 @@ import com.yahoo.vespa.objects.Serializer;
*/
public class ExpressionCountAggregationResult extends AggregationResult {
- public static final int classId = registerClass(0x4000 + 88, ExpressionCountAggregationResult.class);
+ public static final int classId = registerClass(0x4000 + 88, ExpressionCountAggregationResult.class, ExpressionCountAggregationResult::new);
private static final int UNDEFINED = -1;
// The unique count estimator
@@ -29,7 +29,6 @@ public class ExpressionCountAggregationResult extends AggregationResult {
/** Constructor used for deserialization. Will be instantiated with a default sketch. */
- @SuppressWarnings("UnusedDeclaration")
public ExpressionCountAggregationResult() {
this(new SparseSketch(), new HyperLogLogEstimator());
}
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/FS4Hit.java b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/FS4Hit.java
index 9b79d8d0f7b..4a29c98ad89 100644
--- a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/FS4Hit.java
+++ b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/FS4Hit.java
@@ -13,7 +13,7 @@ import com.yahoo.vespa.objects.Serializer;
*/
public class FS4Hit extends Hit {
- public static final int classId = registerClass(0x4000 + 95, FS4Hit.class); // shared with c++
+ public static final int classId = registerClass(0x4000 + 95, FS4Hit.class, FS4Hit::new); // shared with c++
private int path = 0;
private GlobalId globalId = new GlobalId(new byte[GlobalId.LENGTH]);
private int distributionKey = -1;
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/HitsAggregationResult.java b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/HitsAggregationResult.java
index d6df04b2122..c737add21c0 100644
--- a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/HitsAggregationResult.java
+++ b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/HitsAggregationResult.java
@@ -7,8 +7,6 @@ import com.yahoo.text.Utf8;
import com.yahoo.vespa.objects.*;
import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
import java.util.List;
/**
@@ -20,7 +18,7 @@ import java.util.List;
*/
public class HitsAggregationResult extends AggregationResult {
- public static final int classId = registerClass(0x4000 + 87, HitsAggregationResult.class);
+ public static final int classId = registerClass(0x4000 + 87, HitsAggregationResult.class, HitsAggregationResult::new);
private String summaryClass = "default";
private int maxHits = -1;
private List<Hit> hits = new ArrayList<>();
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/MaxAggregationResult.java b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/MaxAggregationResult.java
index 0b347185f09..6d9b50b52b1 100644
--- a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/MaxAggregationResult.java
+++ b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/MaxAggregationResult.java
@@ -15,7 +15,7 @@ import com.yahoo.vespa.objects.Serializer;
*/
public class MaxAggregationResult extends AggregationResult {
- public static final int classId = registerClass(0x4000 + 83, MaxAggregationResult.class);
+ public static final int classId = registerClass(0x4000 + 83, MaxAggregationResult.class, MaxAggregationResult::new);
private SingleResultNode max;
/**
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/MinAggregationResult.java b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/MinAggregationResult.java
index 0ae5587da69..1ffedb9aedc 100644
--- a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/MinAggregationResult.java
+++ b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/MinAggregationResult.java
@@ -15,7 +15,7 @@ import com.yahoo.vespa.objects.Serializer;
*/
public class MinAggregationResult extends AggregationResult {
- public static final int classId = registerClass(0x4000 + 84, MinAggregationResult.class);
+ public static final int classId = registerClass(0x4000 + 84, MinAggregationResult.class, MinAggregationResult::new);
private SingleResultNode min;
/**
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/StandardDeviationAggregationResult.java b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/StandardDeviationAggregationResult.java
index c6ece6a2525..91716f00750 100644
--- a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/StandardDeviationAggregationResult.java
+++ b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/StandardDeviationAggregationResult.java
@@ -11,7 +11,7 @@ import com.yahoo.vespa.objects.Serializer;
* @author bjorncs
*/
public class StandardDeviationAggregationResult extends AggregationResult {
- public static final int classId = registerClass(0x4000 + 89, StandardDeviationAggregationResult.class);
+ public static final int classId = registerClass(0x4000 + 89, StandardDeviationAggregationResult.class, StandardDeviationAggregationResult::new);
private long count;
private double sum;
@@ -56,7 +56,7 @@ public class StandardDeviationAggregationResult extends AggregationResult {
@Override
protected boolean equalsAggregation(AggregationResult obj) {
StandardDeviationAggregationResult other = (StandardDeviationAggregationResult) obj;
- return count == this.count && sum == other.sum && sumOfSquared == other.sumOfSquared;
+ return count == other.count && sum == other.sum && sumOfSquared == other.sumOfSquared;
}
@Override
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/SumAggregationResult.java b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/SumAggregationResult.java
index 2a78e5fde36..1f0dd0b90af 100644
--- a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/SumAggregationResult.java
+++ b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/SumAggregationResult.java
@@ -15,7 +15,7 @@ import com.yahoo.vespa.objects.Serializer;
*/
public class SumAggregationResult extends AggregationResult {
- public static final int classId = registerClass(0x4000 + 82, SumAggregationResult.class);
+ public static final int classId = registerClass(0x4000 + 82, SumAggregationResult.class, SumAggregationResult::new);
private SingleResultNode sum;
/**
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/VdsHit.java b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/VdsHit.java
index 6f130137008..5f14b6a937f 100644
--- a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/VdsHit.java
+++ b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/VdsHit.java
@@ -8,7 +8,7 @@ import com.yahoo.vespa.objects.Serializer;
public class VdsHit extends Hit {
- public static final int classId = registerClass(0x4000 + 96, VdsHit.class);
+ public static final int classId = registerClass(0x4000 + 96, VdsHit.class, VdsHit::new);
private String docId = "";
private RawData summary = new RawData();
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/XorAggregationResult.java b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/XorAggregationResult.java
index fea59debd86..beb03160a05 100644
--- a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/XorAggregationResult.java
+++ b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/XorAggregationResult.java
@@ -15,7 +15,7 @@ import com.yahoo.vespa.objects.Serializer;
*/
public class XorAggregationResult extends AggregationResult {
- public static final int classId = registerClass(0x4000 + 86, XorAggregationResult.class);
+ public static final int classId = registerClass(0x4000 + 86, XorAggregationResult.class, XorAggregationResult::new);
private long xor = 0;
/**