### Elasticsearch Version

main

### Installed Plugins

_No response_

### Java Version

_bundled_

### OS Version

MacOS

### Problem Description

Currently, transform state persistence failures are being retried with a constant interval (`60s`).
This is different to how other types of errors are retried (exponential backoff).
We should implement exponential backoff for state persistence failures too.

### Steps to Reproduce

n/a

### Logs (if relevant)

_No response_
x-pack/plugin/transform/src/main/java/org/elasticsearch/xpack/transform/transforms/TransformIndexer.java
sourceBuilder.query(filteredQuery);
        logger.debug("[{}] Querying {} for changes: {}", getJobId(), request.indices(), sourceBuilder);
        return request.source(sourceBuilder);
    }
    private SearchRequest buildQueryToUpdateDestinationIndex() {
        TransformIndexerPosition position = getPosition();
        TransformConfig config = getConfig();
        SearchSourceBuilder sourceBuilder = new SearchSourceBuilder().runtimeMappings(getConfig().getSource().getRuntimeMappings());
        function.buildSearchQuery(sourceBuilder, position != null ? position.getIndexerPosition() : null, context.getPageSize());
        SearchRequest request = new SearchRequest();
        QueryBuilder queryBuilder = config.getSource().getQueryConfig().getQuery();
        if (isContinuous()) {
            BoolQueryBuilder filteredQuery = new BoolQueryBuilder().filter(queryBuilder)
                .filter(config.getSyncConfig().getRangeQuery(nextCheckpoint));
            
            if (changeCollector != null) {
                QueryBuilder filter = changeCollector.buildFilterQuery(lastCheckpoint, nextCheckpoint);
                if (filter != null) {
                    filteredQuery.filter(filter);
                }
                /*
                 * gh#81252 transform can fail if an index gets deleted during searches
                 *
                 * Until proper checkpoint searches (seq_id per shard) are possible, we have to query
                 *  - all indices
                 *  - resolve indices at search time
                 *
                 * request.indices(changeCollector.getIndicesToQuery(lastCheckpoint, nextCheckpoint).toArray(new String[0]));
                 */