Установка sphinxsearch

Главные вкладки

Аватар пользователя Dexel Dexel 27 февраля 2010 в 18:48

Как настроить модуль sphinxseach? Демон результаты поиска выдаёт, с консоли. При попытке поиска с фронтенда ошибка:
Sphinx excerpts index not specified.

При попытке запустить демон с консоли:
creating server socket on 127.0.0.1:3312
failed to bind on 127.0.0.1:3312, retrying...
failed to bind on 127.0.0.1:3312, retrying...
failed to bind on 127.0.0.1:3312, retrying...
т.е. не может запуститься.

Что указывать в настройках модуля, в полях:
index name for queryes ?
и index name for building excepts ?
Sphinx indexer IP addresses: ?

Конфигурация:
Drupal: 6.15
Сфинкс: 0.9.8.1
Модуль sphinxsearch:
sphinxapi.php,v 1.1
sphinxsearch.xmlpipe.inc,v 1.4.2.3

Комментарии

Аватар пользователя Dexel Dexel 27 февраля 2010 в 19:24

Да, Master of Tragedy, конечно читал. И делал по тому мануалу. И перечитывал.
Вопрос по запуску демона снимаю.
А здесь автор пример приводит без дельты, стало быть у неё были на то причины. И ответов там на мои вопросы не последовало. По ходу ещё вопрос. Нужно ли удалять родной модуль поиска если установлен Sphinx Seach?

И главное. Только что заметил. Вот тут:
Управление » Настройка сайта » Sphinx search

*
Testing Sphinx searchd daemon connection.
o OK - Your Sphinx searchd daemon is up and running.
*
Testing search query using index main0.
o Query asks for a list of all indexed documents to retrieve the last indexed node.
o MySQL equivalent would look something like:
SELECT nid FROM {node} ORDER BY nid DESC LIMIT 1;
o ERROR - Search query failed.
+ Sphinx message: unknown local index 'main0' in search request
*
Testing excerpts builder using index .
o ERROR - Sphinx excerpts index not specified. Please, check module settings to match your Sphinx server configuration.

Так у меня же база - PostgreSQL ;). А индексы тянутся через xmlpipe. Откуда там MySQL?

Аватар пользователя theСанитар theСанитар 27 февраля 2010 в 20:28

Я в итоге на этот модуль плюнул. Кривоват он, причем, в ДНК -- тянуть индексируемые данные через XML-pipe, когда Сфинкс замечательно может лезть в ту базу суть бред. (Некий смысл можно усмотреть только в очень распределенной конфигурации, но не более.) Я в итоге взял другой модуль, чуть допилил и оно работает.

Аватар пользователя Dexel Dexel 27 февраля 2010 в 20:49

Проблему решил. Тест проходит. Поиск с фронтенда идёт. Штеммер работает как звёр!
Итак, ключевыми словами в мануале были: 'фича Сфинкса'
Т.е. после того как сфинкс выдал сообщение
'distributed index 'index_join' can not be directly indexed; skipping.'
- я ним стал бороться, и исключил секцию конфига:
index index_join
{
type = distributed
local = index_main0
local = index_main1
# local = index_delta
}
чего делать не нужно было.
Вернул, как показано сейчас. Теперь в настройках прописываем join, как на скриншоте:
index name for queryes: index_join
index name for building excepts: index_main0 ,
и жизнь прекрасна!

theСанитар, на счёт передачи индексов через XML полностью с тобой согласен. Не для того XML создавали. А если учесть объём этого самого XML... но есть 'горячие поклонники', ради которых и разбираюсь с методом скармливания XML-ем Сфинкса Wink Сам же юзаю его через pgsql соединение, и доволен.

Аватар пользователя andriy.olischuk andriy.olischuk 28 февраля 2010 в 12:00

Там XML нужен, как я понимаю, не в последнюю очередь для того чтобы дать возможность настраивать поиск через админку. Например указывать какие типы контента индексировать. Иначе пришлось бы вручную писать SQL в конфиге (что не есть плохо, но уже не так управляемо).

Аватар пользователя Dark_kz Dark_kz 3 октября 2012 в 9:43

А я поставил себе эти настройки, но в connection status
ERROR - Search query failed.
Sphinx message: unknown local index 'index_join' in search request

В конфигах sphinx.conf именно такие имена и стоят. А вы пробовали запускать indexer через командную строку?
Я написал об ошибках, которые получаю при этом, в той же теме http://www.drupal.ru/node/29191