Briefly, this error occurs when the “safety_gap_millis” parameter in Elasticsearch is set to a negative value. This parameter is used to define the safety interval for certain operations and it should always be a non-negative number. To resolve this issue, you should check your Elasticsearch configuration or the specific request where this parameter is set, and ensure that “safety_gap_millis” is set to a valid non-negative value. If it’s not being explicitly set, you may need to investigate why it’s defaulting to a negative value.
This guide will help you check for common problems that cause the log ” safety_gap_millis should be non-negative ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: .
Log Context
Log “safety_gap_millis should be non-negative” class name is AbstractCleanupCommand.java. We extracted the following from Elasticsearch source code for those seeking an in-depth context :
} Long safetyGapMillis = safetyGapMillisOption.value(options); if (safetyGapMillis != null && safetyGapMillis < 0L) { throw new ElasticsearchException("safety_gap_millis should be non-negative"); } Integer parallelism = parallelismOption.value(options); if (parallelism != null && parallelism < 1) { throw new ElasticsearchException("parallelism should be at least 1");