Java.lang.NumberFormatException when doing geo searches


(martin hoegh) #1

I've indexed documents in this form (GeoJSON):
{
"geometry":{
"type":"Point",
"coordinates":[
12.216,
55.648
]
},
"type":"Feature",
"properties":{
"gid":30,
"text":"Man bliver #moppet mere"
}
}

With the mapping:

{ "mappings" : {
"hedehusene" : {
"properties" : {
"properties.text" : {
"type" : "string",
"search_analyzer" : "str_search_analyzer",
"index_analyzer" : "str_index_analyzer"
},
"geometry.coordinates" : {
"type" : "geo_point" }
}
}
},
"settings" : {
"analysis" : {
"analyzer" : {
"str_search_analyzer" : {
"tokenizer" : "whitespace",
"filter" : ["lowercase"]
},
"str_index_analyzer" : {
"tokenizer" : "whitespace",
"filter" : ["lowercase", "substring"]
}
},
"filter" : {
"substring" : {
"type" : "edgeNGram",
"min_gram" : 1,
"max_gram" : 255
}
}
}
}
}

When I run a query with a geo filter like this:

{
"query": {
"filtered": {
"query": {
"query_string": {
"default_field": "text",
"query": "godt",
"default_operator": "AND"
}
},
"filter": {
"geo_bounding_box": {
"geometry.coordinates": {
"top_left": {
"lat": 40.73,
"lon": -74.1
},
"bottom_right": {
"lat": 40.717,
"lon": -73.99
}
}
}
}
}
}
}

I get exceptions like this:

query[filtered(properties.text:godt)->GeoBoundingBoxFilter(geometry.coordinates, [40.73, -74.1], [40.717, -73.99])],from[0],size[10]: Query Failed [Failed to execute main query]]; nested: ElasticSearchException[java.lang.NumberFormatException: For input string: "@\u0014\u00176"h9"]

With out the geo filtering queries runs all right. I'm using version 0.90.5 on a Ubuntu 12.04 Server

--
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.
For more options, visit https://groups.google.com/groups/opt_out.


(Adrien Grand) #2

Hi,

You need to give explicit definitions of the nested JSON objects on the
path yo your geo point. Here is a curl recreation that should help you
solve this problem:

--
Adrien Grand

--
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.
For more options, visit https://groups.google.com/groups/opt_out.


(martin hoegh) #3

Thanks. It works.

/Martin

On Monday, September 23, 2013 6:30:59 PM UTC+2, Adrien Grand wrote:

Hi,

You need to give explicit definitions of the nested JSON objects on the
path yo your geo point. Here is a curl recreation that should help you
solve this problem:
https://gist.github.com/jpountz/6673167

--
Adrien Grand

--
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.
For more options, visit https://groups.google.com/groups/opt_out.


(system) #4