У меня есть приложение CakePHP 1.3, подключающееся к поиску Solr 3.3.
Есть два документа с одинаковыми атрибутами, за исключением их широты и долготы. Документ с более близким широтой / долготой был введен вторым (более высокий идентификатор), но с бостом от geodist () я ожидаю, что он появится первым. Фактическое поведение - док с более близким широтой / долготой, появляется вторым. Вот массив, который служба PHP Solr возвращает обратно моему приложению:
protected '_rawResponse' => string '{
"responseHeader":{
"status":0,
"QTime":0,
"params":{
"start":"0",
"q":"beethoven eroica",
"sfield":"lat_lon",
"pt":"45.3306,-122.5290",
"bf":"recip(geodist(),1,1000,1000)",
"json.nl":"map",
"wt":"json",
"rows":"10",
"version":"1.4"
}
},
"response":{
"numFound":7,
"start":0,
"docs":[{
"id":"2",
"title":"Symphony No 3, Eroica",
"composer":"Beethoven, Ludwig van",
"publisher":"Schott Musik International",
"location":"Seattle, WA",
"lat_lon":"47.6115,-122.3343"
},{
"id":"28",
"title":"Symphony No 3, Eroica",
"composer":"Beethoven, Ludwig'... (length=1418)
У этого второго документа (с id = 28) широта / долгота, которые соответствуют значению "pt" в запросе.
Что я делаю не так?