### CI Link

https://gradle-enterprise.elastic.co/s/tegpafzuufyby/tests/:x-pack:plugin:profiler:internalClusterTest/org.elasticsearch.xpack.profiler.GetProfilingActionIT/testAutomaticCancellation?page=eyJvdXRwdXQiOnsiMCI6Mn19

### Repro line

`gradlew ':x-pack:plugin:profiler:internalClusterTest' --tests "org.elasticsearch.xpack.profiler.GetProfilingActionIT.testAutomaticCancellation" -Dtests.seed=95B19E104BBCD69A -Dtests.locale=uk-UA -Dtests.timezone=Pacific/Rarotonga -Druntime.java=19`

### Does it reproduce?

No

### Applicable branches

main

### Failure history

https://gradle-enterprise.elastic.co/scans/tests?search.timeZoneId=Europe/Berlin&tests.container=org.elasticsearch.xpack.profiler.GetProfilingActionIT&tests.test=testAutomaticCancellation

### Failure excerpt

```
java.lang.NullPointerException: Cannot invoke "java.util.Collection.iterator()" because "taskIds" is null	
	at __randomizedtesting.SeedInfo.seed([95B19E104BBCD69A:D213EB75FDBA1AD8]:0)	
	at org.elasticsearch.xpack.profiler.GetProfilingActionIT.lambda$ensureTasksAreCancelled$0(GetProfilingActionIT.java:230)	
	at org.elasticsearch.test.ESTestCase.assertBusy(ESTestCase.java:1100)	
	at org.elasticsearch.test.ESTestCase.assertBusy(ESTestCase.java:1085)	
	at org.elasticsearch.xpack.profiler.GetProfilingActionIT.ensureTasksAreCancelled(GetProfilingActionIT.java:229)	
	at org.elasticsearch.xpack.profiler.GetProfilingActionIT.verifyCancellation(GetProfilingActionIT.java:192)	
	at org.elasticsearch.xpack.profiler.GetProfilingActionIT.testAutomaticCancellation(GetProfilingActionIT.java:179)	
	at jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)	
	at java.lang.reflect.Method.invoke(Method.java:578)	
	at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1758)	
	at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:946)	
	at com.carrotsearch.randomizedtesting.RandomizedRunner$9.evaluate(RandomizedRunner.java:982)	
	at com.carrotsearch.randomizedtesting.RandomizedRunner$10.evaluate(RandomizedRunner.java:996)	
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)	
	at org.apache.lucene.tests.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:44)	
	at org.apache.lucene.tests.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:43)	
	at org.apache.lucene.tests.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:45)	
	at org.apache.lucene.tests.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:60)	
	at org.apache.lucene.tests.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:44)	
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)	
	at com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:390)	
	at com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTask(ThreadLeakControl.java:843)	
	at com.carrotsearch.randomizedtesting.ThreadLeakControl$3.evaluate(ThreadLeakControl.java:490)	
	at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:955)	
	at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:840)	
	at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:891)	
	at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:902)	
	at org.apache.lucene.tests.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:43)	
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)	
	at org.apache.lucene.tests.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:38)	
	at com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)	
	at com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)	
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)	
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)	
	at org.apache.lucene.tests.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:53)	
	at org.apache.lucene.tests.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:43)	
	at org.apache.lucene.tests.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:44)	
	at org.apache.lucene.tests.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:60)	
	at org.apache.lucene.tests.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:47)	
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)	
	at com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:390)	
	at com.carrotsearch.randomizedtesting.ThreadLeakControl.lambda$forkTimeoutingTask$0(ThreadLeakControl.java:850)	
	at java.lang.Thread.run(Thread.java:1589)	
```	
x-pack/plugin/profiler/src/internalClusterTest/java/org/elasticsearch/xpack/profiler/GetProfilingActionIT.java
hits.set(0);
        }
        void disableBlock() {
            shouldBlock.set(false);
        }
        void enableBlock() {
            shouldBlock.set(true);
        }
        void setSlack(int slack) {
            this.slack.set(slack);
        }
        @Override
        public Map<String, Function<Map<String, Object>, Object>> pluginScripts() {
            return Collections.singletonMap(SCRIPT_NAME, params -> {
                LeafStoredFieldsLookup fieldsLookup = (LeafStoredFieldsLookup) params.get("_fields");
                LogManager.getLogger(GetProfilingActionIT.class).info("Blocking on the document {}", fieldsLookup.get("_id"));
                hits.incrementAndGet();
                if (slack.decrementAndGet() < 0) {
                    try {
                        waitUntil(() -> shouldBlock.get() == false);
                    } catch (Exception e) {
                        throw new RuntimeException(e);
                    }
                }
                return true;
            });
        }
    }
}