web-dev-qa-db-ja.com

Elasticsearch 1.2.1例外:解析後にルートタイプマッピングが空にならない

Elasticsearchに更新した後1.2.1次のマッピングで次の例外が発生し続けます。

{
    "tags": {
        "properties": {
            "tags": {
                "type": "string",
                "index": "not_analyzed"
            }
        }
    }
}

これは例外です:

Caused by: org.elasticsearch.index.mapper.MapperParsingException: Root type mapping not empty after parsing! Remaining fields: [tags : {properties={tags={index=not_analyzed, type=string}}}]
    at org.elasticsearch.index.mapper.DocumentMapperParser.parse(DocumentMapperParser.Java:265)
    at org.elasticsearch.index.mapper.DocumentMapperParser.parseCompressed(DocumentMapperParser.Java:189)
    at org.elasticsearch.index.mapper.MapperService.parse(MapperService.Java:387)
    at org.elasticsearch.index.mapper.MapperService.merge(MapperService.Java:253)
    at org.elasticsearch.cluster.metadata.MetaDataCreateIndexService$2.execute(MetaDataCreateIndexService.Java:363)

何故ですか?

23
Mark

@Markこれは1.2.Xのバグのようです。同様の問題を報告している他の人が複数いました。以下のチケットにリンクします。基本的に、1.2.Xではマッピングの構文を厳しくしているようですが、以前は有効だったマッピングで問題が発生したようです。あなたのものはその一例です。

バグレポートを開くことをお勧めします。 1.2.1で問題を再現したので、チケットを開くと「私も」と言って喜んでください。

今のところ、私はあなたが同じ望ましい結果を与えると信じている次の作業をすることができました:

curl -XPUT localhost:9200/yourindexname -d 
'{
   "mappings":
   {
    "tags":
      {
       "properties":
         {
          "tags":
            {
             "type":"string",
             "index":"not_analyzed"
            }
          }
        }
    }
}'

切符売場:

https://github.com/elasticsearch/elasticsearch/issues/6414

https://github.com/elasticsearch/elasticsearch/issues/6304

https://github.com/elasticsearch/elasticsearch/issues/6415

10
John Petrone

これはあなたを助けます

あなたはやりたいと思うでしょう

curl -XPUT localhost:9200/new_index -d '
{
  "mappings": { 
    "tags": {
      "properties": {
        "tags": { 
           "type":"string",
           "index":"not_analyzed"
        }
      }
    }
  }
}'

またはあなたもこのようにすることができます

curl -XPUT localhost:9200/new_index/new_index_type/_mappings -d '
{
  "new_index_type": {
    "properties": {
      "tags": {
        "type": "string",
        "index": "not_analyzed"
      }
    }
  }
}'
6
Akash Yadav

エラスティックconfig/mappingsディレクトリに同じタイプのマッピングがあるため、同じ問題が発生しました。マッピングファイルを削除すると問題が解決しました。

1
c-toesca