Mapping order effecting whether or not a field is indexed?


(Brian Hudson) #1

In my mapping I have a field named speed (type double). I also have a field
named location (type geo_point). If I include speed in my mapping before
location, I can query and sort by speed. However, if I include speed in my
mapping after location querying on speed returns no results and attempts to
sort on speed fail (all sort values are -Infinity).

Are there any known issues with mappings which occur after a geo_point
field mapping? I seem to be able to work around the issue for now by
ensuring I map geo_points last.

Broken mapping: queries against speed return no results, sorting fails
(silently), all sort values are -Infinity:

{
"event" : {
"properties": {
"n": {
"type": "string",
"omit_norms": true,
"index_options": "docs"
}
"location": {
"type": "geo_point",
"lat_lon": true
}
"speed": { "type": "float" }
"$speed: {
"type": "string",
"omit_norms": true,
"index_options": "docs"
}
"-mission": {
"type": "string",
"omit_norms": true,
"index_options": "docs"
}
"-type": {
"type": "string",
"omit_norms": true,
"index_options": "docs"
}
"-key": {
"type": "string",
"omit_norms": true,
"index_options": "docs"
}
"-date": { "type": "long" }
"-tod": { "type": "long" }
"-time": { "type": "long" )
"-dow": {
"type": "string",
"omit_norms": true,
"index_options": "docs"
}
"#location": {
"type": "geo_point",
"lat_lon": true
}
}
}
}

Working mapping: speed mapped before location, queries and sorting
involving speed working correctly:
{
"event" : {
"properties": {
"n": {
"type": "string",
"omit_norms": true,
"index_options": "docs"
}
"speed": { "type": "float" }
"$speed: {
"type": "string",
"omit_norms": true,
"index_options": "docs"
} "location": {
"type": "geo_point",
"lat_lon": true
}
"-mission": {
"type": "string",
"omit_norms": true,
"index_options": "docs"
}
"-type": {
"type": "string",
"omit_norms": true,
"index_options": "docs"
}
"-key": {
"type": "string",
"omit_norms": true,
"index_options": "docs"
}
"-date": { "type": "long" }
"-tod": { "type": "long" }
"-time": { "type": "long" )
"-dow": {
"type": "string",
"omit_norms": true,
"index_options": "docs"
}
"#location": {
"type": "geo_point",
"lat_lon": true
}
}
}
}

--
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 elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/78112d3d-0217-4d17-801e-b63f071ce540%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


(system) #2