Skip to content

Commit ccb0927

Browse files
Merge branch '8.19' into release-notes-fp-8-18-6-8-19
2 parents e5fa597 + 2f16e28 commit ccb0927

File tree

3 files changed

+47
-6
lines changed

3 files changed

+47
-6
lines changed

build-tools-internal/src/integTest/groovy/org/elasticsearch/gradle/internal/transport/TransportVersionValidationFuncTest.groovy

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -223,10 +223,33 @@ class TransportVersionValidationFuncTest extends AbstractTransportVersionFuncTes
223223

224224
def "unreferable definitions can have primary ids that are patches"() {
225225
given:
226-
unreferableTransportVersion("initial_10.0.1", "10000001")
226+
unreferableTransportVersion("initial_7.0.1", "7000001")
227227
when:
228228
def result = gradleRunner(":myserver:validateTransportVersionResources").build()
229229
then:
230230
result.task(":myserver:validateTransportVersionResources").outcome == TaskOutcome.SUCCESS
231231
}
232+
233+
def "highest id in an referable definition should exist in an upper bounds file"() {
234+
given:
235+
referableAndReferencedTransportVersion("some_tv", "10000000")
236+
when:
237+
def result = validateResourcesFails()
238+
then:
239+
assertValidateResourcesFailure(result, "Transport version definition file " +
240+
"[myserver/src/main/resources/transport/definitions/referable/some_tv.csv] " +
241+
"has the highest transport version id [10000000] but is not present in any upper bounds files")
242+
}
243+
244+
def "highest id in an unreferable definition should exist in an upper bounds file"() {
245+
given:
246+
unreferableTransportVersion("initial_10.0.0", "10000000")
247+
when:
248+
def result = validateResourcesFails()
249+
then:
250+
// TODO: this should be _unreferable_ in the error message, but will require some rework
251+
assertValidateResourcesFailure(result, "Transport version definition file " +
252+
"[myserver/src/main/resources/transport/definitions/referable/initial_10.0.0.csv] " +
253+
"has the highest transport version id [10000000] but is not present in any upper bounds files")
254+
}
232255
}

build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/transport/ValidateTransportVersionResourcesTask.java

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,8 @@ public void validateTransportVersions() throws IOException {
8585
for (var upperBound : upperBounds.values()) {
8686
validateUpperBound(upperBound, allDefinitions, idsByBase);
8787
}
88+
89+
validateLargestIdIsUsed(upperBounds, allDefinitions);
8890
}
8991

9092
private Map<String, TransportVersionDefinition> collectAllDefinitions(
@@ -255,6 +257,27 @@ private void validateBase(int base, List<IdAndDefinition> ids) {
255257
}
256258
}
257259

260+
private void validateLargestIdIsUsed(
261+
Map<String, TransportVersionUpperBound> upperBounds,
262+
Map<String, TransportVersionDefinition> allDefinitions
263+
) {
264+
// first id is always the highest within a definition, and validated earlier
265+
// note we use min instead of max because the id comparator is in descending order
266+
var highestDefinition = allDefinitions.values().stream().min(Comparator.comparing(d -> d.ids().get(0))).get();
267+
var highestId = highestDefinition.ids().get(0);
268+
269+
for (var upperBound : upperBounds.values()) {
270+
if (upperBound.id().equals(highestId)) {
271+
return;
272+
}
273+
}
274+
275+
throwDefinitionFailure(
276+
highestDefinition,
277+
"has the highest transport version id [" + highestId + "] but is not present in any upper bounds files"
278+
);
279+
}
280+
258281
private void throwDefinitionFailure(TransportVersionDefinition definition, String message) {
259282
Path relativePath = getResources().get().getReferableDefinitionRepositoryPath(definition);
260283
throw new VerificationException("Transport version definition file [" + relativePath + "] " + message);

server/src/test/java/org/elasticsearch/index/mapper/LongFieldMapperTests.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -118,11 +118,6 @@ protected Number randomNumber() {
118118
return randomDoubleBetween(-MAX_SAFE_LONG_FOR_DOUBLE, MAX_SAFE_LONG_FOR_DOUBLE, true);
119119
}
120120

121-
@AwaitsFix(bugUrl = "https://github.com/elastic/elasticsearch/issues/70585")
122-
public void testFetchCoerced() throws IOException {
123-
assertFetch(randomFetchTestMapper(), "field", 3.783147882954537E18, randomFetchTestFormat());
124-
}
125-
126121
protected IngestScriptSupport ingestScriptSupport() {
127122
return new IngestScriptSupport() {
128123
@Override

0 commit comments

Comments
 (0)