当我运行此脚本以将经度和纬度连接成一个geo_point时,我收到错误。
ElasticsearchIllegalArgumentException[the character \'.\' is not a valid geohash character]
这是我的脚本供参考:
mappings: {
'index': {
'transform': {
'lang': 'groovy',
'script': "ctx._source['coords'] = [ctx._source['lon'],ctx._source['lat']]"
}
'properties': {
'lon': {
'type': 'double',
},
'lat': {
'type': 'string',
},
'coords': {
'type': 'geo_point',
}
}
}
}
感谢您的帮助,谢谢!
答案 0 :(得分:0)
由于您是从源中提取数据,因此需要在groovy脚本中将字符串转换为双精度数据:
new Double(ctx._source['lon']);