版本: 6.8-8.9
简要来说,当 Elasticsearch 在期望十六进制字符的位置遇到非十六进制字符时,就会发生此错误。这可能是由于数据输入不正确或请求格式不正确导致的。要解决此问题,首先应该检查导致错误的数据或请求。确保它只包含有效的十六进制字符(0-9,A-F)。如果错误仍然存在,可能是由于您的 Elasticsearch 版本中的 bug 导致的。考虑更新到最新的稳定版本。
日志上下文 #
日志 “{}expected hexadecimal at offset[{}]; found [{}]” 的类名是 ExpressionBuilder.java。我们从 Elasticsearch 源代码中提取了以下内容,以供那些深入了解上下文的人参考:
} else if (pos > i) {
break;
}
}
if (inspect && HEXA.indexOf(lowerCase.charAt(i)) < 0) {
throw new ParsingException(source, "{}expected hexadecimal at offset[{}]; found [{}]", errorPrefix, i, string.charAt(i));
}
}
return new Literal(source(ctx), string, DataTypes.KEYWORD);





