Skip to content

Commit 945ac4f

Browse files
committed
Merge branch 'main' of github.com:elastic/elasticsearch into reshard-install-source-search-filter
2 parents 779eca4 + dff5196 commit 945ac4f

File tree

314 files changed

+22102
-1308
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

314 files changed

+22102
-1308
lines changed

benchmarks/build.gradle

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,12 @@ tasks.named("run").configure {
9191
systemProperty 'es.nativelibs.path', TestUtil.getTestLibraryPath(file("../libs/native/libraries/build/platform/").toString())
9292
}
9393

94+
tasks.named('test').configure {
95+
if (buildParams.getRuntimeJavaVersion().map{ it.majorVersion.toInteger() }.get() >= 21) {
96+
jvmArgs '--add-modules=jdk.incubator.vector'
97+
}
98+
}
99+
94100
spotless {
95101
java {
96102
// IDEs can sometimes run annotation processors that leave files in

benchmarks/src/main/java/org/elasticsearch/benchmark/_nightly/esql/QueryPlanningBenchmark.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@
5252
import java.util.LinkedHashMap;
5353
import java.util.Locale;
5454
import java.util.Map;
55+
import java.util.Set;
5556
import java.util.concurrent.TimeUnit;
5657

5758
import static java.util.Collections.emptyMap;
@@ -101,7 +102,7 @@ public void setup() {
101102
mapping.put("field" + i, new EsField("field-" + i, TEXT, emptyMap(), true, EsField.TimeSeriesFieldType.NONE));
102103
}
103104

104-
var esIndex = new EsIndex("test", mapping, Map.of("test", IndexMode.STANDARD));
105+
var esIndex = new EsIndex("test", mapping, Map.of("test", IndexMode.STANDARD), Set.of());
105106

106107
var functionRegistry = new EsqlFunctionRegistry();
107108

benchmarks/src/main/java/org/elasticsearch/benchmark/index/codec/tsdb/TSDBDocValuesMergeBenchmark.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import org.elasticsearch.cluster.metadata.DataStream;
2828
import org.elasticsearch.common.logging.LogConfigurator;
2929
import org.elasticsearch.index.codec.Elasticsearch92Lucene103Codec;
30+
import org.elasticsearch.index.codec.tsdb.BinaryDVCompressionMode;
3031
import org.elasticsearch.index.codec.tsdb.es819.ES819TSDBDocValuesFormat;
3132
import org.openjdk.jmh.annotations.Benchmark;
3233
import org.openjdk.jmh.annotations.BenchmarkMode;
@@ -257,7 +258,13 @@ private static IndexWriterConfig createIndexWriterConfig(boolean optimizedMergeE
257258
);
258259
config.setLeafSorter(DataStream.TIMESERIES_LEAF_READERS_SORTER);
259260
config.setMergePolicy(new LogByteSizeMergePolicy());
260-
var docValuesFormat = new ES819TSDBDocValuesFormat(4096, 512, optimizedMergeEnabled);
261+
var docValuesFormat = new ES819TSDBDocValuesFormat(
262+
4096,
263+
512,
264+
optimizedMergeEnabled,
265+
BinaryDVCompressionMode.COMPRESSED_ZSTD_LEVEL_1,
266+
true
267+
);
261268
config.setCodec(new Elasticsearch92Lucene103Codec() {
262269
@Override
263270
public DocValuesFormat getDocValuesFormatForField(String field) {

benchmarks/src/main/java/org/elasticsearch/benchmark/vector/ComputeNeighboursBenchmark.java renamed to benchmarks/src/main/java/org/elasticsearch/benchmark/vector/quantization/ComputeNeighboursBenchmark.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* License v3.0 only", or the "Server Side Public License, v 1".
88
*/
99

10-
package org.elasticsearch.benchmark.vector;
10+
package org.elasticsearch.benchmark.vector.quantization;
1111

1212
import org.elasticsearch.common.logging.LogConfigurator;
1313
import org.elasticsearch.index.codec.vectors.cluster.NeighborHood;

benchmarks/src/main/java/org/elasticsearch/benchmark/vector/OptimizedScalarQuantizerBenchmark.java renamed to benchmarks/src/main/java/org/elasticsearch/benchmark/vector/quantization/OptimizedScalarQuantizerBenchmark.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* License v3.0 only", or the "Server Side Public License, v 1".
88
*/
99

10-
package org.elasticsearch.benchmark.vector;
10+
package org.elasticsearch.benchmark.vector.quantization;
1111

1212
import org.apache.lucene.index.VectorSimilarityFunction;
1313
import org.elasticsearch.common.logging.LogConfigurator;

benchmarks/src/main/java/org/elasticsearch/benchmark/vector/PackAsBinaryBenchmark.java renamed to benchmarks/src/main/java/org/elasticsearch/benchmark/vector/quantization/PackAsBinaryBenchmark.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
* your election, the "Elastic License 2.0", the "GNU Affero General Public
77
* License v3.0 only", or the "Server Side Public License, v 1".
88
*/
9-
package org.elasticsearch.benchmark.vector;
9+
package org.elasticsearch.benchmark.vector.quantization;
1010

1111
import org.elasticsearch.common.logging.LogConfigurator;
1212
import org.elasticsearch.index.codec.vectors.BQVectorUtils;

benchmarks/src/main/java/org/elasticsearch/benchmark/vector/TransposeHalfByteBenchmark.java renamed to benchmarks/src/main/java/org/elasticsearch/benchmark/vector/quantization/TransposeHalfByteBenchmark.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
* your election, the "Elastic License 2.0", the "GNU Affero General Public
77
* License v3.0 only", or the "Server Side Public License, v 1".
88
*/
9-
package org.elasticsearch.benchmark.vector;
9+
package org.elasticsearch.benchmark.vector.quantization;
1010

1111
import org.elasticsearch.common.logging.LogConfigurator;
1212
import org.elasticsearch.index.codec.vectors.BQVectorUtils;

benchmarks/src/main/java/org/elasticsearch/benchmark/vector/DistanceBulkBenchmark.java renamed to benchmarks/src/main/java/org/elasticsearch/benchmark/vector/scorer/VectorScorerDistanceBulkBenchmark.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
* your election, the "Elastic License 2.0", the "GNU Affero General Public
77
* License v3.0 only", or the "Server Side Public License, v 1".
88
*/
9-
package org.elasticsearch.benchmark.vector;
9+
package org.elasticsearch.benchmark.vector.scorer;
1010

1111
import org.apache.lucene.util.VectorUtil;
1212
import org.apache.lucene.util.quantization.OptimizedScalarQuantizer;
@@ -38,7 +38,7 @@
3838
@Measurement(iterations = 5, time = 1)
3939
// engage some noise reduction
4040
@Fork(value = 1)
41-
public class DistanceBulkBenchmark {
41+
public class VectorScorerDistanceBulkBenchmark {
4242

4343
static {
4444
LogConfigurator.configureESLogging(); // native access requires logging to be initialized

benchmarks/src/main/java/org/elasticsearch/benchmark/vector/DistanceFunctionBenchmark.java renamed to benchmarks/src/main/java/org/elasticsearch/benchmark/vector/scorer/VectorScorerDistanceFunctionBenchmark.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* License v3.0 only", or the "Server Side Public License, v 1".
88
*/
99

10-
package org.elasticsearch.benchmark.vector;
10+
package org.elasticsearch.benchmark.vector.scorer;
1111

1212
import org.apache.lucene.util.BytesRef;
1313
import org.elasticsearch.common.logging.LogConfigurator;
@@ -49,9 +49,9 @@
4949
@Measurement(iterations = 2)
5050
@BenchmarkMode(Mode.AverageTime)
5151
@OutputTimeUnit(TimeUnit.NANOSECONDS)
52-
@OperationsPerInvocation(DistanceFunctionBenchmark.OPERATIONS)
52+
@OperationsPerInvocation(VectorScorerDistanceFunctionBenchmark.OPERATIONS)
5353
@State(Scope.Benchmark)
54-
public class DistanceFunctionBenchmark {
54+
public class VectorScorerDistanceFunctionBenchmark {
5555

5656
public static final int OPERATIONS = 25000;
5757

@@ -223,7 +223,7 @@ public void findBenchmarkImpl() {
223223
}
224224

225225
@Fork(1)
226-
@Benchmark
226+
// @Benchmark
227227
public void benchmark(Blackhole blackhole) {
228228
for (int i = 0; i < OPERATIONS; ++i) {
229229
blackhole.consume(benchmarkImpl.getAsDouble());

benchmarks/src/main/java/org/elasticsearch/benchmark/vector/Int4ScorerBenchmark.java renamed to benchmarks/src/main/java/org/elasticsearch/benchmark/vector/scorer/VectorScorerInt4Benchmark.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
* your election, the "Elastic License 2.0", the "GNU Affero General Public
77
* License v3.0 only", or the "Server Side Public License, v 1".
88
*/
9-
package org.elasticsearch.benchmark.vector;
9+
package org.elasticsearch.benchmark.vector.scorer;
1010

1111
import org.apache.lucene.index.VectorSimilarityFunction;
1212
import org.apache.lucene.store.Directory;
@@ -48,7 +48,7 @@
4848
@Measurement(iterations = 5, time = 1)
4949
// engage some noise reduction
5050
@Fork(value = 1)
51-
public class Int4ScorerBenchmark {
51+
public class VectorScorerInt4Benchmark {
5252

5353
static {
5454
LogConfigurator.configureESLogging(); // native access requires logging to be initialized

0 commit comments

Comments
 (0)