### Description

Currently every index delete task is processed individually. Additionally, they are marked at the `urgent` level. This leads to scenarios where a number of index delete tasks that are queued up very quickly can lead to starvation. We have seen these tasks delaying the processing of `node-join` tasks disrupting cluster state processing.
server/src/main/java/org/elasticsearch/action/admin/indices/delete/TransportDeleteIndexAction.java
* Delete index action.
 */
public class TransportDeleteIndexAction extends AcknowledgedTransportMasterNodeAction<DeleteIndexRequest> {
    private static final Logger logger = LogManager.getLogger(TransportDeleteIndexAction.class);
    private final MetadataDeleteIndexService deleteIndexService;
    private final DestructiveOperations destructiveOperations;
    @Inject
    public TransportDeleteIndexAction(
        TransportService transportService,
        ClusterService clusterService,
        ThreadPool threadPool,
        MetadataDeleteIndexService deleteIndexService,
        ActionFilters actionFilters,
        IndexNameExpressionResolver indexNameExpressionResolver,
        DestructiveOperations destructiveOperations
    ) {
        super(
            DeleteIndexAction.NAME,
            transportService,
            clusterService,
            threadPool,
            actionFilters,
            DeleteIndexRequest::new,
            indexNameExpressionResolver,
            ThreadPool.Names.SAME
        );
        this.deleteIndexService = deleteIndexService;
        this.destructiveOperations = destructiveOperations;
    }
    @Override