Tiny supportability nit: today we emit these log messages when adding a write block to an index:

```
[2022-03-22T19:43:26,897][INFO ][o.e.c.m.MetadataIndexStateService] [node_t1] adding block write to indices [[test-blocks/eLkrYpm_S3WNemfWpXrhPA]]
[2022-03-22T19:43:26,933][INFO ][o.e.c.m.MetadataIndexStateService] [node_t1] completed adding block write to indices [test-blocks]
```

This is kind of confusing, a `block write` sounds like we're writing a block of data. It's not clear that `write` is variable (we also say `block read`) or the name of a block setting. I think we should word this as `adding [index.blocks.write] block to indices` instead.
server/src/main/java/org/elasticsearch/cluster/metadata/MetadataIndexStateService.java
@Override
                    public void innerOnFailure(final Exception e) {
                        AddBlockShardResult.Failure failure = new AddBlockShardResult.Failure(index.getName(), shardId, e);
                        results.setOnce(shardId, new AddBlockShardResult(shardId, new AddBlockShardResult.Failure[] { failure }));
                        processIfFinished();
                    }
                    private void processIfFinished() {
                        if (countDown.countDown()) {
                            AddBlockResult result = new AddBlockResult(index, results.toArray(new AddBlockShardResult[results.length()]));
                            logger.debug("result of applying block to index {}: {}", index, result);
                            onResponse.accept(result);
                        }
                    }
                });
            }
        }
        private void sendVerifyShardBlockRequest(
            final IndexShardRoutingTable shardRoutingTable,
            final ClusterBlock block,
            final ActionListener<ReplicationResponse> listener
        ) {
            final ShardId shardId = shardRoutingTable.shardId();
            if (shardRoutingTable.primaryShard().unassigned()) {
                logger.debug("primary shard {} is unassigned, ignoring", shardId);
                final ReplicationResponse response = new ReplicationResponse();
                response.setShardInfo(new ReplicationResponse.ShardInfo(shardRoutingTable.size(), shardRoutingTable.size()));
                listener.onResponse(response);
                return;
            }
            final TaskId parentTaskId = new TaskId(clusterService.localNode().getId(), request.taskId());