From 4bd8957d5be7e38eb487067fc1deead6c0b967b3 Mon Sep 17 00:00:00 2001 From: Jordan Powers Date: Mon, 15 Dec 2025 16:42:05 -0800 Subject: [PATCH 1/5] Unmute tests --- muted-tests.yml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/muted-tests.yml b/muted-tests.yml index bfa1a35111547..03fdcf49b0359 100644 --- a/muted-tests.yml +++ b/muted-tests.yml @@ -448,9 +448,6 @@ tests: - class: org.elasticsearch.xpack.inference.integration.AuthorizationTaskExecutorIT method: testCreatesChatCompletion_AndThenCreatesTextEmbedding issue: https://github.com/elastic/elasticsearch/issues/138012 -- class: org.elasticsearch.xpack.unsignedlong.UnsignedLongSyntheticSourceNativeArrayIntegrationTests - method: testSynthesizeArrayRandom - issue: https://github.com/elastic/elasticsearch/issues/139376 - class: org.elasticsearch.xpack.downsample.DownsampleActionSingleNodeTests method: testDownsampleDatastream issue: https://github.com/elastic/elasticsearch/issues/139438 @@ -487,9 +484,6 @@ tests: - class: org.elasticsearch.repositories.gcs.GoogleCloudStorageBlobStoreRepositoryTests method: testMultipleSnapshotAndRollback issue: https://github.com/elastic/elasticsearch/issues/139556 -- class: org.elasticsearch.index.mapper.LongSyntheticSourceNativeArrayIntegrationTests - method: testSynthesizeArrayRandom - issue: https://github.com/elastic/elasticsearch/issues/139562 # Examples: # From cb529c449544adf129a38899df091cac79021221 Mon Sep 17 00:00:00 2001 From: Jordan Powers Date: Mon, 15 Dec 2025 17:18:56 -0800 Subject: [PATCH 2/5] Revert changes to NativeArrayIntegrationTestCase --- .../mapper/NativeArrayIntegrationTestCase.java | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/test/framework/src/main/java/org/elasticsearch/index/mapper/NativeArrayIntegrationTestCase.java b/test/framework/src/main/java/org/elasticsearch/index/mapper/NativeArrayIntegrationTestCase.java index 4a2cb61f4259a..f8fb0eeff0878 100644 --- a/test/framework/src/main/java/org/elasticsearch/index/mapper/NativeArrayIntegrationTestCase.java +++ b/test/framework/src/main/java/org/elasticsearch/index/mapper/NativeArrayIntegrationTestCase.java @@ -260,17 +260,11 @@ protected void verifySyntheticArray(Object[][] arrays, XContentBuilder mapping, private XContentBuilder arrayToSource(Object[] array) throws IOException { var source = jsonBuilder().startObject(); if (array != null) { - // collapse array if it only consists of one element - // if the only element is null, then we'll skip synthesizing source for that field - if (array.length == 1 && array[0] != null) { - source.field("field", array[0]); - } else { - source.startArray("field"); - for (Object arrayValue : array) { - source.value(arrayValue); - } - source.endArray(); + source.startArray("field"); + for (Object arrayValue : array) { + source.value(arrayValue); } + source.endArray(); } else { source.field("field").nullValue(); } From 70040abb536fe70281377ac8f64d6a27005ea54c Mon Sep 17 00:00:00 2001 From: Jordan Powers Date: Wed, 17 Dec 2025 20:12:31 -0800 Subject: [PATCH 3/5] Unmute HalfFloatSyntheticSourceNativeArrayIntegrationTests --- muted-tests.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/muted-tests.yml b/muted-tests.yml index 5a2963a0da180..ab47a40fa6a89 100644 --- a/muted-tests.yml +++ b/muted-tests.yml @@ -433,9 +433,6 @@ tests: - class: org.elasticsearch.xpack.core.action.XPackUsageResponseTests method: testVersionDependentSerializationWriteToOldStream issue: https://github.com/elastic/elasticsearch/issues/139576 -- class: org.elasticsearch.index.mapper.HalfFloatSyntheticSourceNativeArrayIntegrationTests - method: testSynthesizeArrayRandom - issue: https://github.com/elastic/elasticsearch/issues/139658 - class: org.elasticsearch.smoketest.WatcherYamlRestIT method: test {p0=mustache/10_webhook/Test webhook action with mustache integration} issue: https://github.com/elastic/elasticsearch/issues/139663 From 6b7e042f3ffeb65367aba6f598cf85a9eda5f6c9 Mon Sep 17 00:00:00 2001 From: Jordan Powers Date: Wed, 17 Dec 2025 20:12:58 -0800 Subject: [PATCH 4/5] Fix KeywordSyntheticSourceNativeArrayIntegrationTests --- ...heticSourceNativeArrayIntegrationTests.java | 4 ++-- .../mapper/NativeArrayIntegrationTestCase.java | 18 +++++++++++------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/server/src/test/java/org/elasticsearch/index/mapper/KeywordSyntheticSourceNativeArrayIntegrationTests.java b/server/src/test/java/org/elasticsearch/index/mapper/KeywordSyntheticSourceNativeArrayIntegrationTests.java index ec71e07fc9231..a07a460501cc2 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/KeywordSyntheticSourceNativeArrayIntegrationTests.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/KeywordSyntheticSourceNativeArrayIntegrationTests.java @@ -63,9 +63,9 @@ public void testSynthesizeArrayIgnoreAbove() throws Exception { new Object[] { "1", "2", "3", "blabla" } }; // values in the original array should be deduplicated - var expectedArrayValues = new Object[][] { + var expectedArrayValues = new Object[] { new Object[] { null, "a", "ab", "abc", "abcd", null, "abcde" }, - new Object[] { "12345" }, + "12345", new Object[] { "123", "1234", "12345" }, new Object[] { null, null, null, "blabla" }, new Object[] { "1", "2", "3", "blabla" } }; diff --git a/test/framework/src/main/java/org/elasticsearch/index/mapper/NativeArrayIntegrationTestCase.java b/test/framework/src/main/java/org/elasticsearch/index/mapper/NativeArrayIntegrationTestCase.java index f8fb0eeff0878..4f3e41b563510 100644 --- a/test/framework/src/main/java/org/elasticsearch/index/mapper/NativeArrayIntegrationTestCase.java +++ b/test/framework/src/main/java/org/elasticsearch/index/mapper/NativeArrayIntegrationTestCase.java @@ -257,14 +257,18 @@ protected void verifySyntheticArray(Object[][] arrays, XContentBuilder mapping, verifySyntheticArray(arrays, arrays, mapping, expectedStoredFields); } - private XContentBuilder arrayToSource(Object[] array) throws IOException { + private XContentBuilder arrayToSource(Object obj) throws IOException { var source = jsonBuilder().startObject(); - if (array != null) { - source.startArray("field"); - for (Object arrayValue : array) { - source.value(arrayValue); + if (obj != null) { + if (obj instanceof Object[] array) { + source.startArray("field"); + for (Object arrayValue : array) { + source.value(arrayValue); + } + source.endArray(); + } else { + source.field("field", obj); } - source.endArray(); } else { source.field("field").nullValue(); } @@ -273,7 +277,7 @@ private XContentBuilder arrayToSource(Object[] array) throws IOException { protected void verifySyntheticArray( Object[][] inputArrays, - Object[][] expectedArrays, + Object[] expectedArrays, XContentBuilder mapping, String... expectedStoredFields ) throws IOException { From 551e99f9ab12d0bb3110e94e2a96f2887fce6db5 Mon Sep 17 00:00:00 2001 From: Jordan Powers Date: Wed, 17 Dec 2025 20:16:33 -0800 Subject: [PATCH 5/5] Clean up arrayToSource --- .../index/mapper/NativeArrayIntegrationTestCase.java | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/test/framework/src/main/java/org/elasticsearch/index/mapper/NativeArrayIntegrationTestCase.java b/test/framework/src/main/java/org/elasticsearch/index/mapper/NativeArrayIntegrationTestCase.java index 4f3e41b563510..e4bd8bb0ea5db 100644 --- a/test/framework/src/main/java/org/elasticsearch/index/mapper/NativeArrayIntegrationTestCase.java +++ b/test/framework/src/main/java/org/elasticsearch/index/mapper/NativeArrayIntegrationTestCase.java @@ -260,15 +260,7 @@ protected void verifySyntheticArray(Object[][] arrays, XContentBuilder mapping, private XContentBuilder arrayToSource(Object obj) throws IOException { var source = jsonBuilder().startObject(); if (obj != null) { - if (obj instanceof Object[] array) { - source.startArray("field"); - for (Object arrayValue : array) { - source.value(arrayValue); - } - source.endArray(); - } else { - source.field("field", obj); - } + source.field("field", obj); } else { source.field("field").nullValue(); }