It does not reproduce locally. I found this error in the logs which looks like a possible cause.
```
[2022-07-30T01:22:31,499][ERROR][o.e.r.s.FileSettingsService] [[elasticsearch[file-settings-watcher]]] Error processing operator settings json file
  1> java.lang.IllegalStateException: Error processing state change request for file_settings, errors: org.elasticsearch.xcontent.XContentParseException: [1:0] [reserved_state_chunk] Expected START_OBJECT but was: null
  1> 	at org.elasticsearch.xcontent.ObjectParser.throwExpectedStartObject(ObjectParser.java:330)
  1> 	at org.elasticsearch.xcontent.ObjectParser.parse(ObjectParser.java:275)
  1> 	at org.elasticsearch.xcontent.ConstructingObjectParser.parse(ConstructingObjectParser.java:166)
  1> 	at org.elasticsearch.xcontent.ConstructingObjectParser.apply(ConstructingObjectParser.java:158)
  1> 	at org.elasticsearch.reservedstate.service.ReservedClusterStateService.process(ReservedClusterStateService.java:103)
  1> 	at org.elasticsearch.reservedstate.service.FileSettingsService.processFileSettings(FileSettingsService.java:308)
  1> 	at org.elasticsearch.reservedstate.service.FileSettingsService.lambda$startWatcher$3(FileSettingsService.java:245)
  1> 	at java.base/java.lang.Thread.run(Thread.java:833)

  1> 	at org.elasticsearch.reservedstate.service.ReservedClusterStateService.process(ReservedClusterStateService.java:109) ~[main/:?]
  1> 	at org.elasticsearch.reservedstate.service.FileSettingsService.processFileSettings(FileSettingsService.java:308) ~[main/:?]
  1> 	at org.elasticsearch.reservedstate.service.FileSettingsService.lambda$startWatcher$3(FileSettingsService.java:245) ~[main/:?]
  1> 	at java.lang.Thread.run(Thread.java:833) ~[?:?]
  1> Caused by: org.elasticsearch.xcontent.XContentParseException: [1:0] [reserved_state_chunk] Expected START_OBJECT but was: null
  1> 	at org.elasticsearch.xcontent.ObjectParser.throwExpectedStartObject(ObjectParser.java:330) ~[elasticsearch-x-content-8.5.0-SNAPSHOT.jar:8.5.0-SNAPSHOT]
  1> 	at org.elasticsearch.xcontent.ObjectParser.parse(ObjectParser.java:275) ~[elasticsearch-x-content-8.5.0-SNAPSHOT.jar:8.5.0-SNAPSHOT]
  1> 	at org.elasticsearch.xcontent.ConstructingObjectParser.parse(ConstructingObjectParser.java:166) ~[elasticsearch-x-content-8.5.0-SNAPSHOT.jar:8.5.0-SNAPSHOT]
  1> 	at org.elasticsearch.xcontent.ConstructingObjectParser.apply(ConstructingObjectParser.java:158) ~[elasticsearch-x-content-8.5.0-SNAPSHOT.jar:8.5.0-SNAPSHOT]
  1> 	at org.elasticsearch.reservedstate.service.ReservedClusterStateService.process(ReservedClusterStateService.java:103) ~[main/:?]
  1> 	... 3 more
  1> [2022-07-30T01:22:31,502][INFO ][o.e.r.s.FileSettingsService] [[elasticsearch[file-settings-watcher]]] processing path [/mnt/secret/elastic+elasticsearch+main+periodic+ear/server/build/testrun/internalClusterTest/temp/org.elasticsearch.reservedstate.service.FileSettingsServiceIT_129CA1A8D872CBA3-001/tempDir-003/config/operator/settings.json] for [file_settings]
```


**Build scan:**
https://gradle-enterprise.elastic.co/s/pijicvldxziw4/tests/:server:internalClusterTest/org.elasticsearch.reservedstate.service.FileSettingsServiceIT/testSettingsApplied

**Reproduction line:**
`./gradlew ':server:internalClusterTest' --tests "org.elasticsearch.reservedstate.service.FileSettingsServiceIT.testSettingsApplied" -Dtests.seed=129CA1A8D872CBA3 -Dtests.locale=sr-BA -Dtests.timezone=Asia/Kamchatka -Druntime.java=17`

**Applicable branches:**
main

**Reproduces locally?:**
No

**Failure history:**
https://gradle-enterprise.elastic.co/scans/tests?tests.container=org.elasticsearch.reservedstate.service.FileSettingsServiceIT&tests.test=testSettingsApplied

**Failure excerpt:**
```
java.lang.Exception: Test abandoned because suite timeout was reached.

  at __randomizedtesting.SeedInfo.seed([129CA1A8D872CBA3]:0)

```
server/src/internalClusterTest/java/org/elasticsearch/reservedstate/service/FileSettingsServiceIT.java
import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.core.Strings;
import org.elasticsearch.reservedstate.action.ReservedClusterSettingsAction;
import org.elasticsearch.test.ESIntegTestCase;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicLong;
import static org.elasticsearch.indices.recovery.RecoverySettings.INDICES_RECOVERY_MAX_BYTES_PER_SEC_SETTING;
import static org.elasticsearch.test.NodeRoles.dataOnlyNode;
import static org.hamcrest.Matchers.allOf;
import static org.hamcrest.Matchers.contains;
import static org.hamcrest.Matchers.containsString;
import static org.hamcrest.Matchers.equalTo;
import static org.hamcrest.Matchers.hasSize;
import static org.hamcrest.Matchers.notNullValue;
import static org.hamcrest.Matchers.nullValue;
@ESIntegTestCase.ClusterScope(scope = ESIntegTestCase.Scope.TEST, numDataNodes = 0, autoManageMasterNodes = false)
public class FileSettingsServiceIT extends ESIntegTestCase {
    private AtomicLong versionCounter = new AtomicLong(1);
    private static String testJSON = """
        {
             "metadata": {
                 "version": "%s",
                 "compatibility": "8.4.0"
             },
             "state": {
                 "cluster_settings": {