I ran into this problem, and discovered this StackOverflow post (with no 
answer):
http://stackoverflow.com/questions/23348172/elasticsearch-index-name-with-multi-field

That original poster included a gist that reproduces it quite nicely 
(confirmed on 1.4.1):
https://gist.github.com/pmishev/11375297

Partially replicated here for convenience (see the link for full curl steps 
to reproduce):

# Create mapping
curl -XPOST localhost:9200/index1/ -d '{
  "mappings": {
     "people": {
        "properties": {
           "work_email": {
              "type": "string",
              "index_name": "email",
              "fields": {
                 "raw": {
                    "type": "string",
                    "index": "not_analyzed"
                 }
              }
           }
        }
     }
  }
}'



Basically, I have an analyzed string field and a non-analyzed version of it 
so that I can sort by it. But instead of sorting by "field.sort" or 
"field.raw", I need to use "field_sort", basically for back compat reasons. 
To accomplish that I tried giving the non-analyzed sortable version of the 
string field an index_name. But trying to sort using the given index_name 
results in an error: "No mapping found for [field_sort] in order to sort 
on".

The gist referenced above is slightly different than I am explaining, 
because it puts the "index_name" on the parent field instead of the sorted 
part, but the result is the same.

To put it simply, it seems that you cannot sort by a field by its 
index_name, you have to use the full path to it, which is a problem for me. 
Is this expected? Why should I be able to search for a field by its 
index_name but not sort by it -- that seems unintended. Am I doing it 
wrong? Is there a better way to accomplish the same thing?

Thanks for the help!

-- 
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/af25ab54-407b-4e58-95ea-94c12fb3fb65%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to