Reword INDEX_READ_ONLY_ALLOW_DELETE_BLOCK message (#58410)
Users are perennially confused by the message they get when writing to an index is blocked due to excessive disk usage: TOO_MANY_REQUESTS/12/index read-only / allow delete (api) Of course this is technically accurate but it is hard to join the dots from this message to "your disk was too full" without some searching of forums and documentation. Additionally in #50166 we changed the status code to today's `429` from the previous `403` which changed the message from the one that's widely documented elsewhere: FORBIDDEN/12/index read-only / allow delete (api) Since #42559 we've considered this block to be under the sole control of the disk-based shard allocator, and we have seen no evidence to suggest that anyone is applying this block manually. Therefore this commit adjusts this block's message to indicate that it's caused by a lack of disk space.
This commit is contained in:
parent
d251a482e9
commit
796cb9e9ca
|
@ -72,7 +72,8 @@ public class DeleteIndexBlocksIT extends ESIntegTestCase {
|
|||
client().admin().indices().prepareUpdateSettings("test").setSettings(settings).get();
|
||||
ClusterBlockException e = expectThrows(ClusterBlockException.class, () ->
|
||||
client().prepareIndex().setIndex("test").setType("doc").setId("1").setSource("foo", "bar").get());
|
||||
assertEquals("index [test] blocked by: [TOO_MANY_REQUESTS/12/index read-only / allow delete (api)];", e.getMessage());
|
||||
assertEquals("index [test] blocked by: [TOO_MANY_REQUESTS/12/disk usage exceeded flood-stage watermark, " +
|
||||
"index has read-only-allow-delete block];", e.getMessage());
|
||||
} finally {
|
||||
assertAcked(client().admin().indices().prepareUpdateSettings("test")
|
||||
.setSettings(Settings.builder().putNull(IndexMetadata.SETTING_READ_ONLY_ALLOW_DELETE).build()).get());
|
||||
|
|
|
@ -96,7 +96,7 @@ public class IndexMetadata implements Diffable<IndexMetadata>, ToXContentFragmen
|
|||
new ClusterBlock(9, "index metadata (api)", false, false, false,
|
||||
RestStatus.FORBIDDEN, EnumSet.of(ClusterBlockLevel.METADATA_WRITE, ClusterBlockLevel.METADATA_READ));
|
||||
public static final ClusterBlock INDEX_READ_ONLY_ALLOW_DELETE_BLOCK =
|
||||
new ClusterBlock(12, "index read-only / allow delete (api)", false, false,
|
||||
new ClusterBlock(12, "disk usage exceeded flood-stage watermark, index has read-only-allow-delete block", false, false,
|
||||
true, RestStatus.TOO_MANY_REQUESTS, EnumSet.of(ClusterBlockLevel.METADATA_WRITE, ClusterBlockLevel.WRITE));
|
||||
|
||||
public enum State {
|
||||
|
|
Loading…
Reference in New Issue