FAQ Установка Sphinx на примере FreeBSD

Mikotka

Пользователь
И еще. Я не совсем понимаю вот это объединение в запросе
Код:
LEFT JOIN bb_topics t on pt.post_id = t.topic_first_post_id \
В таком варианте конкретным образом кладется сервер. Моя достаточно мощная машина 140000 записей обрабатывает больше часа. Это неправильно
Ради эксперимента (один черт поиск по постам не пашет) изменил запрос на такой
Код:
sql_query              = \
        SELECT pt.post_id, pt.post_text, t.topic_id, t.forum_id \
        FROM bb_posts_text pt, bb_posts t \
        WHERE pt.post_id = t.post_id AND pt.post_id BETWEEN $start AND $end
Обработался секунд за 20.

:confused:
 

Mikotka

Пользователь
DarkMod,
Да работает, только по полным словам. сокращенным не как
Кажется, я с этим разобрался. Попробуйте сначала поискать полное слово, но ЧАСТО использующееся на торренте. Например, "скачать" или "золото" или что-то такое. 99.9% что поиск выдаст "Нету ничего такого". Если так, попробуйте вот это

/includes/sphinxapi.php
Код:
$this->_limit        = 20;

Выставите параметр этак в 100, а лучше больше. Дело в том, что сфинкс выдает совпадения не по отдельной теме при поиске, а по всему индексу, а уж потом ТП2 их фильтрует на нужные. И совпадений обычно гораздо больше этого лимита в 20. Особенно, если использовать *
 

Mikotka

Пользователь
deymon,
Не знаю. Две задачи там с поиском связаны. Теоретически убрать можно, практичски - не изучал
 
D

diim

Гость
Установил sphinx
Проверка работы сфинкса

Please Login or Register to view hidden text.

, отрабатывает правильно !
Исходник скрипта:
PHP:
<?php

$s = new SphinxClient;
$s->setServer("localhost", '3312');
$s->setMatchMode(SPH_MATCH_ANY);
$s->setMaxQueryTime(3);

$result = $s->query("DVD9");

var_dump($result);

?>

Сфинкс слушает на 127.0.0.1:3312
И после того как включил его в конфиге, при поиске пишет ошибку:

Код:
Fatal error: Cannot redeclare class SphinxClient in /sd/tt/includes/sphinxapi.php on line 0 Call Stack: 0.0001 631712 1. {main}() /sd/tt/tracker.php:0 0.0691 2224176 2. get_title_match_topics() /sd/tt/tracker.php:508 0.0692 2224616 3. init_sphinx() /sd/tt/includes/functions.php:2621

Подскажите как исправить , версия релиза последняя R339
 

andros

Пользователь
поставил сфинкс, исправил запрос упоминаемый Mikotka - действительно вешает сервер. Не могу понять почему через сфинкс выдает 20 результатов поиска, когда через mysql гораздо больше. Где искать это ограничение?
 
Сверху