适用版本: 7.16-8.9
简而言之,当您尝试在Elasticsearch中创建一个ID已存在的过滤器时,会出现此错误。Elasticsearch要求每个过滤器具有唯一的ID以避免冲突。要解决此问题,您可以删除具有相同ID的现有过滤器,或者为新过滤器使用不同的唯一ID。如果目的是修改现有过滤器,另一个选择是更新该过滤器。
日志上下文 #
日志 “A filter with id [” + filter.getId() + “] already exists” 的类名是 TransportPutFilterAction.java。我们从Elasticsearch源代码中提取了以下内容,供那些需要深入了解上下文的用户参考:
@Override
public void onFailure(Exception e) {
Exception reportedException;
if (ExceptionsHelper.unwrapCause(e) instanceof VersionConflictEngineException) {
reportedException = new ResourceAlreadyExistsException("A filter with id [" + filter.getId() + "] already exists");
} else {
reportedException = ExceptionsHelper.serverError("Error putting filter with id [" + filter.getId() + "]"; e);
}
listener.onFailure(reportedException);
}





