From 45e1f94db01610c1dc75298ff9ed50423a34b5f2 Mon Sep 17 00:00:00 2001 From: Stanislav Malyshev Date: Tue, 26 Aug 2025 12:23:35 -0600 Subject: [PATCH] Use safe double range to test long mapper (#133423) Until https://github.com/elastic/elasticsearch/issues/132893 is fixed this sounds like the best way to handle it. (cherry picked from commit 8f424781dfe8dc42a6aa9c536677a7745e736ee7) # Conflicts: # muted-tests.yml # server/src/test/java/org/elasticsearch/index/mapper/LongFieldMapperTests.java --- .../elasticsearch/index/mapper/LongFieldMapperTests.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/server/src/test/java/org/elasticsearch/index/mapper/LongFieldMapperTests.java b/server/src/test/java/org/elasticsearch/index/mapper/LongFieldMapperTests.java index 9a0f4baa8f21a..95ec2752b1a6d 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/LongFieldMapperTests.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/LongFieldMapperTests.java @@ -103,6 +103,9 @@ public void testLongIndexingCoercesIntoRange() throws Exception { assertThat(doc.rootDoc().getFields("field"), hasSize(1)); } + // This is the biggest long that double can represent exactly + public static final long MAX_SAFE_LONG_FOR_DOUBLE = 1L << 53; + @Override protected Number randomNumber() { if (randomBoolean()) { @@ -111,8 +114,8 @@ protected Number randomNumber() { if (randomBoolean()) { return randomDouble(); } - assumeFalse("https://github.com/elastic/elasticsearch/issues/70585", true); - return randomDoubleBetween(Long.MIN_VALUE, Long.MAX_VALUE, true); + // TODO: increase the range back to full LONG range once https://github.com/elastic/elasticsearch/issues/132893 is fixed + return randomDoubleBetween(-MAX_SAFE_LONG_FOR_DOUBLE, MAX_SAFE_LONG_FOR_DOUBLE, true); } @AwaitsFix(bugUrl = "https://github.com/elastic/elasticsearch/issues/70585")