### Description

Currently, when we execute retention policy, we also refresh the destination index by setting:
```
setRefresh(true)
```
on the DBQ request.
This can cause permission errors which are surprising to the user as the permissions are not required when the transform starts:
```
task encountered irrecoverable failure: org.elasticsearch.ElasticsearchSecurityException: action [indices:admin/refresh] is unauthorized for user [found-internal-kibana4-server] with roles [kibana_system,found-internal-kibana4-server] on indices [logs-cloud_security_posture.findings_latest-default], this action is granted by the index privileges [maintenance,manage,all]
```

We still want the user to have the permissions to delete the documents. But we should execute `refresh` as the system user.
x-pack/plugin/transform/src/main/java/org/elasticsearch/xpack/transform/transforms/TransformIndexer.java
if (transformConfig.getSettings() != null && transformConfig.getSettings().getDocsPerSecond() != null) {
            docsPerSecond = transformConfig.getSettings().getDocsPerSecond();
        }
    }
    abstract void doGetInitialProgress(SearchRequest request, ActionListener<SearchResponse> responseListener);
    abstract void doGetFieldMappings(ActionListener<Map<String, String>> fieldMappingsListener);
    abstract void doDeleteByQuery(DeleteByQueryRequest deleteByQueryRequest, ActionListener<BulkByScrollResponse> responseListener);
    abstract void refreshDestinationIndex(ActionListener<RefreshResponse> responseListener);
    abstract void persistState(TransformState state, ActionListener<Void> listener);
    public int getPageSize() {
        return pageSize;
    }
    @Override
    protected String getJobId() {
        return transformConfig.getId();
    }
    @Override
    protected float getMaxDocsPerSecond() {
        return docsPerSecond;
    }
    @Override
    protected boolean triggerSaveState() {
        
        return saveStateListeners.get() != null || super.triggerSaveState();
    }
    public TransformConfig getConfig() {
        return transformConfig;
    }
    public boolean isContinuous() {
        return getConfig().getSyncConfig() != null;