У меня есть простой мышление индекс Sphinx, определенный на моей Account
модели: (. Игнор дельты на данный момент, я генерация полного индекса и поиск account_core
)Почему мой индекс не хватает документов с Thinking Sphinx?
define_index do
indexes display_name
indexes email_addresses.email_address
has created_at
set_property :delta => :datetime, :threshold => 2.minutes
end
Но я получаю некоторые неожиданные результаты:
>> Account.count
# => 885138
>> Account.search.total_entries
# => 260795
>> Account.search("[email protected]")
# => []
Однако, в командной строке, с помощью утилиты search
, я смог найти Ленни:
$ search -c /etc/sphinx/water.sphinx.conf -i account_core [email protected]
index 'account_core': query '[email protected] ': returned 2 matches of 2 total in 0.759 sec
displaying matches:
1. document=3543432, weight=4, sphinx_internal_id=442101, sphinx_deleted=0, class_crc=0, created_at=Mon Apr 11 12:18:08 2011
2. document=5752816, weight=2, sphinx_internal_id=719552, sphinx_deleted=0, class_crc=0, created_at=Tue Dec 27 12:01:12 2011
Действительно, это учетные записи Дрю.
Почему я не могу найти Ленни при поиске с использованием мыслящего сфинкса? Почему номер total_entries
намного меньше, чем полные строки в таблице accounts
?