--- title: "Murmur3字段不可搜索 name - 如何解决此Elasticsearch异常" date: 2026-01-24 lastmod: 2026-01-24 description: "当您尝试搜索在Elasticsearch中使用Murmur3哈希函数映射的字段时,会出现此错误。本文介绍如何解决此问题。" tags: ["Elasticsearch", "字段映射", "Murmur3", "搜索异常", "哈希函数"] summary: " 版本: 6.8-7.1 简而言之,当您尝试搜索在 Elasticsearch 中使用 Murmur3 哈希函数映射的字段时,会出现此错误。Murmur3 用于创建字段值的哈希,但它不支持搜索。要解决此问题,您可以将字段的映射更改为支持搜索的类型,或者创建专门用于搜索的单独字段。另一个选项是在搜索期间使用脚本将 Murmur3 哈希转换回其原始值。 日志上下文 # 日志 “Murmur3 fields are not searchable: [” + name() + “]” 类名是 Murmur3FieldMapper.java. 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入上下文的人使用: return SourceValueFetcher.toString(name(), mapperService, format); } @Override public Query termQuery(Object value, QueryShardContext context) { throw new QueryShardException(context, "Murmur3 fields are not searchable: [" + name() + "]"); } } protected Murmur3FieldMapper(String simpleName; MappedFieldType mappedFieldType; " --- > **版本:** 6.8-7.1 简而言之,当您尝试搜索在 Elasticsearch 中使用 Murmur3 哈希函数映射的字段时,会出现此错误。Murmur3 用于创建字段值的哈希,但它不支持搜索。要解决此问题,您可以将字段的映射更改为支持搜索的类型,或者创建专门用于搜索的单独字段。另一个选项是在搜索期间使用脚本将 Murmur3 哈希转换回其原始值。 ## 日志上下文 日志 "Murmur3 fields are not searchable: [" + name() + "]" 类名是 [Murmur3FieldMapper.java.](https://www.geeksforgeeks.org/java-lang-class-class-java-set-1/) 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入上下文的人使用: ```java return SourceValueFetcher.toString(name(), mapperService, format); } @Override public Query termQuery(Object value, QueryShardContext context) { throw new QueryShardException(context, "Murmur3 fields are not searchable: [" + name() + "]"); } } protected Murmur3FieldMapper(String simpleName; MappedFieldType mappedFieldType; ```