Hi guys,

I am trying to calculate the `_score` of the document as a sum of IDs of my 
nested docs.

Here is the mapping:

```
PUT /test/property/_mapping
{
   "property": {
      "properties": {
         "destination_id": {
            "type": "long"
         },
         "rates": {
            "type": "nested",
            "properties": {
               "id": {
                  "type": "long"
               },
               "end_date": {
                  "type": "date",
                  "format": "dateOptionalTime"
               },
               "start_date": {
                  "type": "date",
                  "format": "dateOptionalTime"
               }
            }
         }
      }
   }
} 
```

and here is my query:

```
GET /test/property/_search
{
   "query": {
      "filtered": {
         "query": {
            "nested": {
               "path": "rates",
               "score_mode": "sum",
               "query": {
                  "function_score": {
                     "functions": [
                        {
                           "script_score": {
                              "script": "doc['id'].value"
                           }
                        }
                     ]
                  }
               }
            }
         }
      }
   }
}
```

It works fine and score is calculated properly when I don't have field `id` 
in my main (top level) document.
Something unexpected happens though as soon as I add document constructed 
that way:

```
POST /test/property/3
{
   "destination_id": 1,
   "id": 12,
   "rates": [
      {
         "id": 9,
         "end_date": "2014-10-15"
      },
      {
         "id": 10,
         "end_date": "2014-10-20"
      }
   ]
}
```
after that all my `_scores` are reduced to 0.
Seems like the top attribute kind of 'overshadows' the nested ones... 
anyway shouldn't happen as I explicitly use nested path?
I wonder why is that happening and how can I make sure that one incorrectly 
indexed document will not have such an impact on the search query?

Thank you,
Gosia

-- 
You received this message because you are subscribed to the Google Groups 
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/ef1c870b-080c-41ec-99c7-5854d6c5a54d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to