It looks like this suite timed out because a node of the backing cluster exploded. Looks like an assertion was tripped.

```
» [2023-10-09T21:16:07,555][ERROR][o.e.b.ElasticsearchUncaughtExceptionHandler] [v8.8.2-2] fatal error in thread [elasticsearch[v8.8.2-2][clusterApplierService#updateTask][T#1]], exiting java.lang.AssertionError: provided source [{"_doc":{"_data_stream_timestamp":{"enabled":true},"_source":{"mode":"synthetic"},"properties":{"@timestamp":{"type":"date"},"key":{"type":"keyword","time_series_dimension":true}}}}] differs from mapping [{"_doc":{"_data_stream_timestamp":{"enabled":true},"properties":{"@timestamp":{"type":"date"},"key":{"type":"keyword","time_series_dimension":true}}}}]
»  	at org.elasticsearch.server@8.8.2/org.elasticsearch.index.mapper.DocumentMapper.<init>(DocumentMapper.java:42)
»  	at org.elasticsearch.server@8.8.2/org.elasticsearch.index.mapper.MapperService.newDocumentMapper(MapperService.java:376)
»  	at org.elasticsearch.server@8.8.2/org.elasticsearch.index.mapper.MapperService.updateMapping(MapperService.java:285)
»  	at org.elasticsearch.server@8.8.2/org.elasticsearch.index.IndexService.updateMapping(IndexService.java:700)
»  	at org.elasticsearch.server@8.8.2/org.elasticsearch.indices.cluster.IndicesClusterStateService.createIndicesAndUpdateShards(IndicesClusterStateService.java:493)
»  	at org.elasticsearch.server@8.8.2/org.elasticsearch.indices.cluster.IndicesClusterStateService.applyClusterState(IndicesClusterStateService.java:250)
»  	at org.elasticsearch.server@8.8.2/org.elasticsearch.cluster.service.ClusterApplierService.callClusterStateAppliers(ClusterApplierService.java:536)
»  	at org.elasticsearch.server@8.8.2/org.elasticsearch.cluster.service.ClusterApplierService.callClusterStateAppliers(ClusterApplierService.java:522)
»  	at org.elasticsearch.server@8.8.2/org.elasticsearch.cluster.service.ClusterApplierService.applyChanges(ClusterApplierService.java:495)
»  	at org.elasticsearch.server@8.8.2/org.elasticsearch.cluster.service.ClusterApplierService.runTask(ClusterApplierService.java:426)
»  	at org.elasticsearch.server@8.8.2/org.elasticsearch.cluster.service.ClusterApplierService$UpdateTask.run(ClusterApplierService.java:154)
»  	at org.elasticsearch.server@8.8.2/org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:916)
»  	at org.elasticsearch.server@8.8.2/org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.runAndClean(PrioritizedEsThreadPoolExecutor.java:217)
»  	at org.elasticsearch.server@8.8.2/org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.run(PrioritizedEsThreadPoolExecutor.java:183)
»  	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
»  	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
»  	at java.base/java.lang.Thread.run(Thread.java:1623)
»  
»  
»  ERROR: Elasticsearch exited unexpectedly
```

**Build scan:**
https://gradle-enterprise.elastic.co/s/bte5oskoqsjl6/tests/:qa:mixed-cluster:v8.8.2%23mixedClusterTest/org.elasticsearch.backwards.MixedClusterClientYamlTestSuiteIT
**Reproduction line:**
```
null
```

**Applicable branches:**
main

**Reproduces locally?:**
Didn't try

**Failure history:**
https://gradle-enterprise.elastic.co/scans/tests?tests.container=org.elasticsearch.backwards.MixedClusterClientYamlTestSuiteIT&tests.test=classMethod
**Failure excerpt:**
```
java.lang.Exception: Suite timeout exceeded (>= 2400000 msec).

  at __randomizedtesting.SeedInfo.seed([E230389699262455]:0)

```
server/src/test/java/org/elasticsearch/index/query/SearchExecutionContextTests.java
MappedFieldType result = context.failIfFieldMappingNotFound("name", fieldType);
        assertThat(result, sameInstance(fieldType));
        QueryShardException e = expectThrows(QueryShardException.class, () -> context.failIfFieldMappingNotFound("name", null));
        assertEquals("No field mapping can be found for the field with name [name]", e.getMessage());
        context.setAllowUnmappedFields(true);
        result = context.failIfFieldMappingNotFound("name", fieldType);
        assertThat(result, sameInstance(fieldType));
        result = context.failIfFieldMappingNotFound("name", null);
        assertThat(result, nullValue());
        context.setAllowUnmappedFields(false);
        context.setMapUnmappedFieldAsString(true);
        result = context.failIfFieldMappingNotFound("name", fieldType);
        assertThat(result, sameInstance(fieldType));
        result = context.failIfFieldMappingNotFound("name", null);
        assertThat(result, notNullValue());
        assertThat(result, instanceOf(TextFieldMapper.TextFieldType.class));
        assertThat(result.name(), equalTo("name"));
    }
    public void testBuildAnonymousFieldType() {
        SearchExecutionContext context = createSearchExecutionContext("uuid", null);
        assertThat(context.buildAnonymousFieldType("keyword"), instanceOf(KeywordFieldMapper.KeywordFieldType.class));
        assertThat(context.buildAnonymousFieldType("long"), instanceOf(NumberFieldMapper.NumberFieldType.class));
    }
    public void testToQueryFails() {
        SearchExecutionContext context = createSearchExecutionContext(IndexMetadata.INDEX_UUID_NA_VALUE, null);
        Exception exc = expectThrows(Exception.class, () -> context.toQuery(new DummyQueryBuilder() {
            @Override
            protected Query doToQuery(SearchExecutionContext context) throws IOException {
                throw new RuntimeException("boom");
            }