Поиск сфинксом, как получить более 1000 результатов?
Поиск сфинксом, как получить более 1000 результатов?
В конфиге сфинкса прописали цифру побольше, но софт все равно выдает только 1000.
Re: Поиск сфинксом, как получить более 1000 результатов?
scj/includes/libs/sphinx.php
$this->_maxmatches = 1000;
$this->_maxmatches = 1000;
Don't forget to run script update
Re: Поиск сфинксом, как получить более 1000 результатов?
Есть только sphinxapi.php
Поменял в нем значение, все равно выдает только 1000 максимум
Поменял в нем значение, все равно выдает только 1000 максимум
Re: Поиск сфинксом, как получить более 1000 результатов?
Без кеша так же ?
Don't forget to run script update
Re: Поиск сфинксом, как получить более 1000 результатов?
Запрашиваю с параметром skip_cache=true все равно только тыща
Re: Поиск сфинксом, как получить более 1000 результатов?
если без скрипта в шеле сделать
search keyword
то должно писать что-то вроде
index 'scj_index': query 'балбал': returned XXXXX matches
сколько возвращает ?
search keyword
то должно писать что-то вроде
index 'scj_index': query 'балбал': returned XXXXX matches
сколько возвращает ?
Don't forget to run script update
Re: Поиск сфинксом, как получить более 1000 результатов?
returned 1000 matches of 20177 total in 0.002 sec
Re: Поиск сфинксом, как получить более 1000 результатов?
Тут как вы понимаете скрипт никак не влияет.
Те 1000 возвращает именно сфинкс.
Что говорит админ на это ?
Те 1000 возвращает именно сфинкс.
Что говорит админ на это ?
Don't forget to run script update
Re: Поиск сфинксом, как получить более 1000 результатов?
Вот от админа ответ:
На сервер настроено глобально max_matches=100000
Также учтите, что помимо настройки в конфигурации searchd на сервере, ограничение действует по-умолчанию в API. Вырезка из документации:
CAVEAT EMPTOR! Note that there also is another place where this limit is enforced. max_matches can be decreased on the fly through the corresponding API call, and the default value in the API is also set to 1,000. So in order to retrieve more than 1,000 matches to your application, you will have to change the configuration file, restart searchd, and set proper limit in SetLimits() call. Also note that you can not set the value in the API higher than the value in the .conf file. This is prohibited in order to have some protection against malicious and/or malformed requests.
http://sphinxsearch.com/docs/current.ht ... ax-matches
К примеру используя консольную утилиту search лимит можно увеличить с помощью параметра -l :
(root@server)-(07:46 PM Wed Sep 04)-(/home/ftpaccess/domain.com/www/scj)
# search -c /usr/local/etc/sphinx.conf -l 4000 -i domain_scj_index mature | grep returned
index domain_scj_index': query 'mature ': returned 4000 matches of 4297 total in 0.001 sec
В Вашем случае лимит необходимо увеличить используя функцию SetLimits(). Адресуйте это разработчику скрипта
На сервер настроено глобально max_matches=100000
Также учтите, что помимо настройки в конфигурации searchd на сервере, ограничение действует по-умолчанию в API. Вырезка из документации:
CAVEAT EMPTOR! Note that there also is another place where this limit is enforced. max_matches can be decreased on the fly through the corresponding API call, and the default value in the API is also set to 1,000. So in order to retrieve more than 1,000 matches to your application, you will have to change the configuration file, restart searchd, and set proper limit in SetLimits() call. Also note that you can not set the value in the API higher than the value in the .conf file. This is prohibited in order to have some protection against malicious and/or malformed requests.
http://sphinxsearch.com/docs/current.ht ... ax-matches
К примеру используя консольную утилиту search лимит можно увеличить с помощью параметра -l :
(root@server)-(07:46 PM Wed Sep 04)-(/home/ftpaccess/domain.com/www/scj)
# search -c /usr/local/etc/sphinx.conf -l 4000 -i domain_scj_index mature | grep returned
index domain_scj_index': query 'mature ': returned 4000 matches of 4297 total in 0.001 sec
В Вашем случае лимит необходимо увеличить используя функцию SetLimits(). Адресуйте это разработчику скрипта
Re: Поиск сфинксом, как получить более 1000 результатов?
Сорри , мой ответ был неверный.
Дабы ограничить как-то выдачу по коротким запросам стоит лимит в 1000.
Его можно повысить в конфиге
$config['sphinx_results_limit'] = ...;
Дабы ограничить как-то выдачу по коротким запросам стоит лимит в 1000.
Его можно повысить в конфиге
$config['sphinx_results_limit'] = ...;
Don't forget to run script update







