**Build scan:**
https://gradle-enterprise.elastic.co/s/whiwuz23mtmvq/tests/:x-pack:plugin:rollup:test/org.elasticsearch.xpack.rollup.v2.RollupActionSingleNodeTests/testCannotRollupToExistingIndex

**Reproduction line:**
`./gradlew ':x-pack:plugin:rollup:test' --tests "org.elasticsearch.xpack.rollup.v2.RollupActionSingleNodeTests.testCannotRollupToExistingIndex" -Dtests.seed=9814B01249EAC77D -Dtests.locale=en-SG -Dtests.timezone=Africa/Windhoek -Druntime.java=17`

**Applicable branches:**
main

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

**Failure history:**
https://gradle-enterprise.elastic.co/scans/tests?tests.container=org.elasticsearch.xpack.rollup.v2.RollupActionSingleNodeTests&tests.test=testCannotRollupToExistingIndex

**Failure excerpt:**
```
org.elasticsearch.index.IndexNotFoundException: no such index [rollup-testcannotrollupwhileotherrollupinprogress-svlo]

  at __randomizedtesting.SeedInfo.seed([9814B01249EAC77D:325B86553CE92325]:0)
  at org.elasticsearch.cluster.metadata.Metadata.getIndexSafe(Metadata.java:919)
  at org.elasticsearch.cluster.metadata.MetadataDeleteIndexService.deleteIndices(MetadataDeleteIndexService.java:89)
  at org.elasticsearch.cluster.metadata.MetadataDeleteIndexService$1.execute(MetadataDeleteIndexService.java:70)
  at org.elasticsearch.cluster.service.MasterService$UnbatchedExecutor.execute(MasterService.java:515)
  at org.elasticsearch.cluster.service.MasterService.innerExecuteTasks(MasterService.java:959)
  at org.elasticsearch.cluster.service.MasterService.executeTasks(MasterService.java:929)
  at org.elasticsearch.cluster.service.MasterService.runTasks(MasterService.java:261)
  at org.elasticsearch.cluster.service.MasterService$Batcher.run(MasterService.java:165)
  at org.elasticsearch.cluster.service.TaskBatcher.runIfNotProcessed(TaskBatcher.java:110)
  at org.elasticsearch.cluster.service.TaskBatcher$BatchedTask.run(TaskBatcher.java:148)
  at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:710)
  at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.runAndClean(PrioritizedEsThreadPoolExecutor.java:257)
  at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.run(PrioritizedEsThreadPoolExecutor.java:223)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
  at java.lang.Thread.run(Thread.java:833)

```
x-pack/plugin/rollup/src/test/java/org/elasticsearch/xpack/rollup/v2/RollupActionSingleNodeTests.java
private void rollup(String sourceIndex, String rollupIndex, RollupActionConfig config) {
        AcknowledgedResponse response = client().execute(RollupAction.INSTANCE, new RollupAction.Request(sourceIndex, rollupIndex, config))
            .actionGet();
        assertTrue(response.isAcknowledged());
    }
    private RolloverResponse rollover(String dataStreamName) throws ExecutionException, InterruptedException {
        RolloverResponse response = client().admin().indices().rolloverIndex(new RolloverRequest(dataStreamName, null)).get();
        assertTrue(response.isAcknowledged());
        return response;
    }
    private Aggregations aggregate(final String index, AggregationBuilder aggregationBuilder) {
        return client().prepareSearch(index).addAggregation(aggregationBuilder).get().getAggregations();
    }
    @SuppressWarnings("unchecked")
    private void assertRollupIndex(String sourceIndex, String rollupIndex, RollupActionConfig config) throws IOException {
        
        final GetMappingsResponse getMappingsResponse = client().admin().indices().prepareGetMappings(sourceIndex).get();
        final Map<String, Object> sourceIndexMappings = getMappingsResponse.mappings()
            .entrySet()
            .stream()
            .filter(entry -> sourceIndex.equals(entry.getKey()))
            .findFirst()
            .map(mappingMetadata -> mappingMetadata.getValue().sourceAsMap())
            .orElseThrow(() -> new IllegalArgumentException("No mapping found for rollup source index [" + sourceIndex + "]"));
        IndexMetadata indexMetadata = client().admin().cluster().prepareState().get().getState().getMetadata().index(sourceIndex);
        TimeseriesFieldTypeHelper helper = new TimeseriesFieldTypeHelper.Builder(
            getInstanceFromNode(IndicesService.class),
            sourceIndexMappings,
            indexMetadata
        ).build(config.getTimestampField());