diff --git a/muted-tests.yml b/muted-tests.yml index 871ed5f5c51cc..75c6043cae59d 100644 --- a/muted-tests.yml +++ b/muted-tests.yml @@ -473,9 +473,6 @@ tests: - class: org.elasticsearch.packaging.test.DockerTests method: test151MachineDependentHeapWithSizeOverride issue: https://github.com/elastic/elasticsearch/issues/123437 -- class: org.elasticsearch.index.mapper.vectors.DenseVectorFieldMapperTests - method: testUpdates - issue: https://github.com/elastic/elasticsearch/issues/131795 - class: org.elasticsearch.xpack.restart.FullClusterRestartIT method: testWatcherWithApiKey {cluster=UPGRADED} issue: https://github.com/elastic/elasticsearch/issues/131964 diff --git a/server/src/test/java/org/elasticsearch/index/mapper/vectors/DenseVectorFieldMapperTests.java b/server/src/test/java/org/elasticsearch/index/mapper/vectors/DenseVectorFieldMapperTests.java index a5c5a9a9b42ef..02ef40eeda0ca 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/vectors/DenseVectorFieldMapperTests.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/vectors/DenseVectorFieldMapperTests.java @@ -342,21 +342,24 @@ protected void registerParameters(ParameterChecker checker) throws IOException { .endObject(), m -> assertTrue(m.toString().contains("\"type\":\"bbq_hnsw\"")) ); - checker.registerUpdateCheck( - b -> b.field("type", "dense_vector") - .field("dims", dims * 16) - .field("index", true) - .startObject("index_options") - .field("type", "flat") - .endObject(), - b -> b.field("type", "dense_vector") - .field("dims", dims * 16) - .field("index", true) - .startObject("index_options") - .field("type", "bbq_disk") - .endObject(), - m -> assertTrue(m.toString().contains("\"type\":\"bbq_disk\"")) - ); + if (IVF_FORMAT.isEnabled()) { + checker.registerUpdateCheck( + b -> b.field("type", "dense_vector") + .field("dims", dims * 16) + .field("index", true) + .startObject("index_options") + .field("type", "flat") + .endObject(), + b -> b.field("type", "dense_vector") + .field("dims", dims * 16) + .field("index", true) + .startObject("index_options") + .field("type", "bbq_disk") + .endObject(), + m -> assertTrue(m.toString().contains("\"type\":\"bbq_disk\"")) + ); + } + // update for int8_flat checker.registerUpdateCheck( b -> b.field("type", "dense_vector") @@ -467,21 +470,23 @@ protected void registerParameters(ParameterChecker checker) throws IOException { .endObject(), m -> assertTrue(m.toString().contains("\"type\":\"bbq_hnsw\"")) ); - checker.registerUpdateCheck( - b -> b.field("type", "dense_vector") - .field("dims", dims * 16) - .field("index", true) - .startObject("index_options") - .field("type", "int8_flat") - .endObject(), - b -> b.field("type", "dense_vector") - .field("dims", dims * 16) - .field("index", true) - .startObject("index_options") - .field("type", "bbq_disk") - .endObject(), - m -> assertTrue(m.toString().contains("\"type\":\"bbq_disk\"")) - ); + if (IVF_FORMAT.isEnabled()) { + checker.registerUpdateCheck( + b -> b.field("type", "dense_vector") + .field("dims", dims * 16) + .field("index", true) + .startObject("index_options") + .field("type", "int8_flat") + .endObject(), + b -> b.field("type", "dense_vector") + .field("dims", dims * 16) + .field("index", true) + .startObject("index_options") + .field("type", "bbq_disk") + .endObject(), + m -> assertTrue(m.toString().contains("\"type\":\"bbq_disk\"")) + ); + } // update for hnsw checker.registerUpdateCheck( b -> b.field("type", "dense_vector") @@ -641,21 +646,23 @@ protected void registerParameters(ParameterChecker checker) throws IOException { .endObject(), m -> assertTrue(m.toString().contains("\"type\":\"bbq_hnsw\"")) ); - checker.registerUpdateCheck( - b -> b.field("type", "dense_vector") - .field("dims", dims * 16) - .field("index", true) - .startObject("index_options") - .field("type", "hnsw") - .endObject(), - b -> b.field("type", "dense_vector") - .field("dims", dims * 16) - .field("index", true) - .startObject("index_options") - .field("type", "bbq_disk") - .endObject(), - m -> assertTrue(m.toString().contains("\"type\":\"bbq_disk\"")) - ); + if (IVF_FORMAT.isEnabled()) { + checker.registerUpdateCheck( + b -> b.field("type", "dense_vector") + .field("dims", dims * 16) + .field("index", true) + .startObject("index_options") + .field("type", "hnsw") + .endObject(), + b -> b.field("type", "dense_vector") + .field("dims", dims * 16) + .field("index", true) + .startObject("index_options") + .field("type", "bbq_disk") + .endObject(), + m -> assertTrue(m.toString().contains("\"type\":\"bbq_disk\"")) + ); + } // update for int8_hnsw checker.registerUpdateCheck( b -> b.field("type", "dense_vector") @@ -801,21 +808,23 @@ protected void registerParameters(ParameterChecker checker) throws IOException { .endObject(), m -> assertTrue(m.toString().contains("\"type\":\"bbq_hnsw\"")) ); - checker.registerUpdateCheck( - b -> b.field("type", "dense_vector") - .field("dims", dims * 16) - .field("index", true) - .startObject("index_options") - .field("type", "int8_hnsw") - .endObject(), - b -> b.field("type", "dense_vector") - .field("dims", dims * 16) - .field("index", true) - .startObject("index_options") - .field("type", "bbq_disk") - .endObject(), - m -> assertTrue(m.toString().contains("\"type\":\"bbq_disk\"")) - ); + if (IVF_FORMAT.isEnabled()) { + checker.registerUpdateCheck( + b -> b.field("type", "dense_vector") + .field("dims", dims * 16) + .field("index", true) + .startObject("index_options") + .field("type", "int8_hnsw") + .endObject(), + b -> b.field("type", "dense_vector") + .field("dims", dims * 16) + .field("index", true) + .startObject("index_options") + .field("type", "bbq_disk") + .endObject(), + m -> assertTrue(m.toString().contains("\"type\":\"bbq_disk\"")) + ); + } // update for int4_flat checker.registerUpdateCheck( b -> b.field("type", "dense_vector") @@ -932,21 +941,23 @@ protected void registerParameters(ParameterChecker checker) throws IOException { .endObject(), m -> assertTrue(m.toString().contains("\"type\":\"bbq_hnsw\"")) ); - checker.registerUpdateCheck( - b -> b.field("type", "dense_vector") - .field("dims", dims * 16) - .field("index", true) - .startObject("index_options") - .field("type", "int4_flat") - .endObject(), - b -> b.field("type", "dense_vector") - .field("dims", dims * 16) - .field("index", true) - .startObject("index_options") - .field("type", "bbq_disk") - .endObject(), - m -> assertTrue(m.toString().contains("\"type\":\"bbq_disk\"")) - ); + if (IVF_FORMAT.isEnabled()) { + checker.registerUpdateCheck( + b -> b.field("type", "dense_vector") + .field("dims", dims * 16) + .field("index", true) + .startObject("index_options") + .field("type", "int4_flat") + .endObject(), + b -> b.field("type", "dense_vector") + .field("dims", dims * 16) + .field("index", true) + .startObject("index_options") + .field("type", "bbq_disk") + .endObject(), + m -> assertTrue(m.toString().contains("\"type\":\"bbq_disk\"")) + ); + } // update for int4_hnsw checker.registerUpdateCheck( b -> b.field("type", "dense_vector") @@ -1157,21 +1168,23 @@ protected void registerParameters(ParameterChecker checker) throws IOException { .endObject(), m -> assertTrue(m.toString().contains("\"type\":\"bbq_hnsw\"")) ); - checker.registerUpdateCheck( - b -> b.field("type", "dense_vector") - .field("dims", dims * 16) - .field("index", true) - .startObject("index_options") - .field("type", "int4_hnsw") - .endObject(), - b -> b.field("type", "dense_vector") - .field("dims", dims * 16) - .field("index", true) - .startObject("index_options") - .field("type", "bbq_disk") - .endObject(), - m -> assertTrue(m.toString().contains("\"type\":\"bbq_disk\"")) - ); + if (IVF_FORMAT.isEnabled()) { + checker.registerUpdateCheck( + b -> b.field("type", "dense_vector") + .field("dims", dims * 16) + .field("index", true) + .startObject("index_options") + .field("type", "int4_hnsw") + .endObject(), + b -> b.field("type", "dense_vector") + .field("dims", dims * 16) + .field("index", true) + .startObject("index_options") + .field("type", "bbq_disk") + .endObject(), + m -> assertTrue(m.toString().contains("\"type\":\"bbq_disk\"")) + ); + } // update for bbq_flat checker.registerUpdateCheck( b -> b.field("type", "dense_vector") @@ -1302,21 +1315,23 @@ protected void registerParameters(ParameterChecker checker) throws IOException { .endObject() ) ); - checker.registerUpdateCheck( - b -> b.field("type", "dense_vector") - .field("dims", dims * 16) - .field("index", true) - .startObject("index_options") - .field("type", "bbq_flat") - .endObject(), - b -> b.field("type", "dense_vector") - .field("dims", dims * 16) - .field("index", true) - .startObject("index_options") - .field("type", "bbq_disk") - .endObject(), - m -> assertTrue(m.toString().contains("\"type\":\"bbq_disk\"")) - ); + if (IVF_FORMAT.isEnabled()) { + checker.registerUpdateCheck( + b -> b.field("type", "dense_vector") + .field("dims", dims * 16) + .field("index", true) + .startObject("index_options") + .field("type", "bbq_flat") + .endObject(), + b -> b.field("type", "dense_vector") + .field("dims", dims * 16) + .field("index", true) + .startObject("index_options") + .field("type", "bbq_disk") + .endObject(), + m -> assertTrue(m.toString().contains("\"type\":\"bbq_disk\"")) + ); + } // update for bbq_hnsw checker.registerConflictCheck( "index_options", @@ -1432,21 +1447,23 @@ protected void registerParameters(ParameterChecker checker) throws IOException { .endObject() ) ); - checker.registerUpdateCheck( - b -> b.field("type", "dense_vector") - .field("dims", dims * 16) - .field("index", true) - .startObject("index_options") - .field("type", "bbq_hnsw") - .endObject(), - b -> b.field("type", "dense_vector") - .field("dims", dims * 16) - .field("index", true) - .startObject("index_options") - .field("type", "bbq_disk") - .endObject(), - m -> assertTrue(m.toString().contains("\"type\":\"bbq_disk\"")) - ); + if (IVF_FORMAT.isEnabled()) { + checker.registerUpdateCheck( + b -> b.field("type", "dense_vector") + .field("dims", dims * 16) + .field("index", true) + .startObject("index_options") + .field("type", "bbq_hnsw") + .endObject(), + b -> b.field("type", "dense_vector") + .field("dims", dims * 16) + .field("index", true) + .startObject("index_options") + .field("type", "bbq_disk") + .endObject(), + m -> assertTrue(m.toString().contains("\"type\":\"bbq_disk\"")) + ); + } } @Override