solr處理括號的一個bug

這兩天碰到solr的一個bug,在括號中使用非表達式,造成沒有任何結果命中:

檢索到這個已經有人提bug了,https://issues.apache.org/jira/browse/SOLR-2209

 

Indexed documents:
id: 1, UserId: 0, AccountId: 1
id: 2, UserId: 0, AccountId: 1
id: 3, UserId: 1, AccountId: 1
id: 4, UserId: 2, AccountId: 1
id: 5, UserId: 3, AccountId: 1

正確的Query:
account_id: 1 AND -user_id: 0

正確的Results:
Document Ids: 3, 4, 5

異常的Query:
account_id: 1 AND ( -user_id: 0 )

異常的Results:
--No matched documents –

 

 

官方現在還沒有解決這個問題,不過可以採取*:*的辦法暫時避免這個問題,上面的Query改造爲:

account_id:1 AND (*:* -user_id:0) 這樣就能正常查詢出結果了。

 

期待官方對這個bug的原因進行深入說明,偶爾碰到這種無厘頭的問題也挺鬱悶的。

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章