Soumyaranjan Acharya
Soumyaranjan Acharya

Reputation: 19

How to solve "Failed to parse content to map" error while creating index?

I am getting an error.

Error :

"{"error":{"root_cause":[{"type":"parse_exception","reason":"Failed to parse content to map"}],"type":"parse_exception","reason":"Failed to parse content to map","caused_by":{"type":"json_parse_exception","reason":"Unexpected character ('s' (code 115)): was expecting double-quote to start field name\n at [Source: org.elasticsearch.transport.netty4.ByteBufStreamInput@38a4cd00; line: 2, column: 3]"}},"status":400}" error while trying to create index

Code :

{
  "settings" : {
        "number_of_shards" : 1,
        "number_of_replicas" : 1
    },
   "mappings": {
             "properties": {
        "anonymous": {"type": "boolean"},
        "content_text_form": {"type": "text"},
        "details": {"type": "text"},
        "language": {"type": "keyword"},
        "no_of_comments": {"type": "long"},
        "up_votes": {"type": "long"},
        "down_votes": {"type": "long"},
        "no_of_views": {"type": "long"},
        "no_of_impressions": {"type": "long"},
        "short_id": {"type": "keyword"},
        "no_of_reposts": {"type": "long"},
        "createdAt": {"type": "date"},
        "updatedAt": {"type": "date"},
        "re_post_date": {"type": "date"},
        "media_urls": {
                        "properties": {
                          "url": {"type": "keyword"},
                          "type": {"type": "keyword"},
                          "uploadedOn": {"type": "date"},
                          "description": {"type": "text"},
                          "thumbnail": {"type": "text"},
                          "file_type": {"type": "keyword"},
                          "dimensions": {
                            "properties": {
                              "type": {
                                "properties": {
                                  "height": {"type": "long"},
                                  "width": {"type": "long"},
                                  "aspect_ratio":{"type":"long"}
                                },
                              "required": {"type": "boolean"}
                              }
                            }}
                          }
                          },
      "tags": {"type": "keyword"},
         "tag_positions": {
                          "properties": {
                            "tag": {"type": "keyword"},
                            "tag_start": {"type": "long"},
                            "tag_end": {"type": "long"}}},
          "source": {
          "properties": {
            "title" : {"type": "text"},
            "description": {"type": "text"},
            "media_type": {"type": "text"},
            "url": {"type": "text"}
          }
        },
           "moderation": {
          "properties": {
            "done": {"type":"boolean"}
          }
        }
       }
     }
}

Upvotes: 1

Views: 2468

Answers (1)

JBone
JBone

Reputation: 1836

I am not sure which version of Elasticsearch you are using but I use 6.7 and here is the one that worked after two modifications

1) I added "_doc"
2) I moved `"required": { "type": "boolean"}`  to one curly below ... look at it and it will make sense

Here is the mapping that worked for me

  PUT so_test6
   {
      "settings" : {
         "number_of_shards" : 1,
         "number_of_replicas" : 1
      },
    "mappings": {
        "_doc":{
         "properties": {
           "anonymous": {"type": "boolean"},
           "content_text_form": {"type": "text"},
           "details": {"type": "text"},
           "language": {"type": "keyword"},
           "no_of_comments": {"type": "long"},
           "up_votes": {"type": "long"},
           "down_votes": {"type": "long"},
           "no_of_views": {"type": "long"},
           "no_of_impressions": {"type": "long"},
           "short_id": {"type": "keyword"},
           "no_of_reposts": {"type": "long"},
           "createdAt": {"type": "date"},
           "updatedAt": {"type": "date"},
           "re_post_date": {"type": "date"},
           "media_urls": {
                    "properties": {
                      "url": {"type": "keyword"},
                      "type": {"type": "keyword"},
                      "uploadedOn": {"type": "date"},
                      "description": {"type": "text"},
                      "thumbnail": {"type": "text"},
                      "file_type": {"type": "keyword"},
                      "dimensions": {
                        "properties": {
                          "type": {
                            "properties": {
                              "height": {"type": "long"},
                              "width": {"type": "long"},
                              "aspect_ratio":{"type":"long"}
                            }


                          },
                          "required": {"type": "boolean"}
                        }}
                      }
                      },
         "tags": {"type": "keyword"},
          "tag_positions": {
                      "properties": {
                        "tag": {"type": "keyword"},
                        "tag_start": {"type": "long"},
                        "tag_end": {"type": "long"}}},
      "source": {
      "properties": {
        "title" : {"type": "text"},
        "description": {"type": "text"},
        "media_type": {"type": "text"},
        "url": {"type": "text"}
      }
    },
       "moderation": {
      "properties": {
        "done": {"type":"boolean"}
      }
    }
   }
  }
 }
}

Upvotes: 1

Related Questions