Releasing read-only-allow-delete block on indices – How to solve this Elasticsearch error

Opster Team

Aug-23, Version: 7.4-7.17

Briefly, this error occurs when Elasticsearch has automatically applied a “read-only-allow-delete” block on an index. This usually happens when the disk usage exceeds a certain threshold, causing Elasticsearch to protect the data from any further writes. To resolve this issue, you can either increase the disk space or delete unnecessary data to free up space. After that, you can manually remove the block by updating the index settings. Also, consider adjusting the “cluster.routing.allocation.disk.watermark” settings to prevent this from happening in the future.

This guide will help you check for common problems that cause the log ” releasing read-only-allow-delete block on indices: [{}] ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: routing, cluster, allocation.

Log Context

Log “releasing read-only-allow-delete block on indices: [{}]” classname is DiskThresholdMonitor.java.
We extracted the following from Elasticsearch source code for those seeking an in-depth context :

            .filter(index -> indicesOnReplaceSourceOrTarget.contains(index) == false)
            .collect(Collectors.toSet());

        if (indicesToAutoRelease.isEmpty() == false) {
            if (diskThresholdSettings.isAutoReleaseIndexEnabled()) {
                logger.info("releasing read-only-allow-delete block on indices: [{}]"; indicesToAutoRelease);
                updateIndicesReadOnly(indicesToAutoRelease; listener; false);
            } else {
                deprecationLogger.critical(
                    DeprecationCategory.SETTINGS;
                    DiskThresholdSettings.AUTO_RELEASE_INDEX_ENABLED_KEY.replace("."; "_");

 

 [ratemypost]