Ошибки сфинкса

SpyCam
Posts: 736
Joined: Fri Oct 26, 2012 9:52 am

Ошибки сфинкса

Post by SpyCam »

Появились такие ошибки, хотелось бы знать, как пофиксить?

Warning, you have following CORE errors (You have to fix it and delete those messages from Home - Script Messages after that)

Core error: Mysql error 1064: sphinxql: syntax error, unexpected $undefined, expecting IDENT (or 50 other tokens) near '`site_scj__hu_index` WHERE match ('@(alt,description,tags,group_names) "japanese\\-groped"/1') AND sponsor_id NOT IN (3) LIMIT 240, 60 OPTION max_matches=20000' (SELECT id FROM `site_scj__hu_index` WHERE match ('@(alt,description,tags,group_names) "japanese\\-groped"/1') AND sponsor_id NOT IN (3) LIMIT 240, 60 OPTION max_matches=20000)

Core error: Mysql error 1064: sphinxql: syntax error, unexpected $undefined, expecting IDENT (or 50 other tokens) near '`site_scj__ko_index` WHERE match ('@(alt,description,tags,group_names) "spartacus"/1') AND sponsor_id NOT IN (3) LIMIT 0, 60 OPTION max_matches=20000' (SELECT id FROM `site_scj__ko_index` WHERE match ('@(alt,description,tags,group_names) "spartacus"/1') AND sponsor_id NOT IN (3) LIMIT 0, 60 OPTION max_matches=20000)

Core error: Mysql error 1064: sphinxql: syntax error, unexpected $undefined, expecting IDENT (or 50 other tokens) near '`site_scj__sv_index` WHERE match ('@(alt,description,tags,group_names) "sweet"/1') AND sponsor_id NOT IN (3) LIMIT 720, 120 OPTION max_matches=20000' (SELECT id FROM `site_scj__sv_index` WHERE match ('@(alt,description,tags,group_names) "sweet"/1') AND sponsor_id NOT IN (3) LIMIT 720, 120 OPTION max_matches=20000)

Core error: Mysql error 1064: sphinxql: syntax error, unexpected $undefined, expecting IDENT (or 50 other tokens) near '`site_scj__fr_index` WHERE match ('@(alt,description,tags,group_names) "cahs\\-russian"/1') AND sponsor_id NOT IN (3) AND categories IN (645,653,663,668,671,672,679,691,701,727,731,736,749,755,760,769,772,773,776,782,789,801,805,823,831,836,838,842,846,852,860,863,895,907,916,923,941,949,952,955,960) LIMIT 0, 60 OPTION max_matches=20000' (SELECT id FROM `site_scj__fr_index` WHERE match ('@(alt,description,tags,group_names) "cahs\\-russian"/1') AND sponsor_id NOT IN (3) AND categories IN (645,653,663,668,671,672,679,691,701,727,731,736,749,755,760,769,772,773,776,782,789,801,805,823,831,836,838,842,846,852,860,863,895,907,916,923,941,949,952,955,960) LIMIT 0, 60 OPTION max_matches=20000)
admin
Site Admin
Posts: 37995
Joined: Wed Sep 10, 2008 11:43 am

Re: Ошибки сфинкса

Post by admin »

а какая это версия сфинкса?
проверил на локале - это запросы не ошибок выполняются
Don't forget to run script update
admin
Site Admin
Posts: 37995
Joined: Wed Sep 10, 2008 11:43 am

Re: Ошибки сфинкса

Post by admin »

для теста можно без скрипта, просто к сфинкс законектиться и дать любой из этих запросов
Don't forget to run script update
SpyCam
Posts: 736
Joined: Fri Oct 26, 2012 9:52 am

Re: Ошибки сфинкса

Post by SpyCam »

что конкретно и как надо сделать?
admin
Site Admin
Posts: 37995
Joined: Wed Sep 10, 2008 11:43 am

Re: Ошибки сфинкса

Post by admin »

надо законектиться к сфинкс и
1. увидеть версию
2. выполнить запрос

SELECT id FROM `site_scj__fr_index` WHERE match ('@(alt,description,tags,group_names) "cahs\\-russian"/1') AND sponsor_id NOT IN (3) AND categories IN (645,653,663,668,671,672,679,691,701,727,731,736,749,755,760,769,772,773,776,782,789,801,805,823,831,836,838,842,846,852,860,863,895,907,916,923,941,949,952,955,960) LIMIT 0, 60 OPTION max_matches=20000
Don't forget to run script update
SpyCam
Posts: 736
Joined: Fri Oct 26, 2012 9:52 am

Re: Ошибки сфинкса

Post by SpyCam »

Версия: Sphinx 2.2.9-id64-release (rel22-r5006)
Ответ на запрос:

mysql> SELECT id FROM site_scj__fr_index WHERE match ('@(alt,description,tags,group_names) "cahs\\-russian"/1') AND sponsor_id NOT IN (3) AND categories IN (645,653,663,668,671,672,679,691,701,727,731,736,749,755,760,769,772,773,776,782,789,801,805,823,831,836,838,842,846,852,860,863,895,907,916,923,941,949,952,955,960) LIMIT 0, 60 OPTION max_matches=20000;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''@(alt,description,tags,group_names) "cahs\\-russian"/1') AND sponsor_id NOT IN ' at line 1
admin
Site Admin
Posts: 37995
Joined: Wed Sep 10, 2008 11:43 am

Re: Ошибки сфинкса

Post by admin »

у меня 2.2.11 и все ок
думаю стоит начать с того что б просто проадейтить сфинкс
Don't forget to run script update
magicum
Posts: 351
Joined: Mon Nov 18, 2013 11:27 am

Re: Ошибки сфинкса

Post by magicum »

Если можно, я влезу.

По ошибке мы забивали запросы в MySQL, а не в Sphinx.

Теперь сделали правильно, и такие результаты.

Тест 1
SELECT id FROM `domain.com_scj__fr_index` WHERE match ('@(alt,description,tags,group_names) "cahs\\-russian"/1') AND sponsor_id NOT IN (3) AND categories IN (645,653,663,668,671,672,679,691,701,727,731,736,749,755,760,769,772,773,776,782,789,801,805,823,831,836,838,842,846,852,860,863,895,907,916,923,941,949,952,955,960) LIMIT 0, 5 OPTION max_matches=20000;
ERROR 1064 (42000): sphinxql: syntax error, unexpected $undefined near 'domain.com_scj__fr_index WHERE match ('@(alt,description,tags,group_names) "cahs\\-russian"/1') AND sponsor_id NOT IN (3) AND categories IN (645,653,663,668,671,672,679,691,701,727,731,736,749,755,760,769,772,773,776,782,789,801,805,823,831,836,838,842,846,852,860,863,895,907,916,923,941,949,952,955,960) LIMIT 0, 5 OPTION max_matches=20000'

Тест 2
SELECT id FROM `domain_com_scj__fr_index` WHERE match ('@(alt,description,tags,group_names) "cahs\\-russian"/1') AND sponsor_id NOT IN (3) AND categories IN (645,653,663,668,671,672,679,691,701,727,731,736,749,755,760,769,772,773,776,782,789,801,805,823,831,836,838,842,846,852,860,863,895,907,916,923,941,949,952,955,960) LIMIT 0, 5 OPTION max_matches=20000;
+---------+
| id |
+---------+
| 1440655 |
| 1440908 |
| 1441026 |
| 1441707 |
| 1446834 |
+---------+
5 rows in set (0.01 sec)
Я проверил имена индексов в sphinx.conf
В них нет точек, там вместо точек знаки подчеркивания.
Т.е. индексы вида - domain_com_scj__fr_index

Почему-то в смарте эти индексы забиты как:
domain.com_scj__fr_index

Я точно не знаю, должны ли точки какой-то магией интерпретироваться в подчерки при запросах, или же "раз в самом сфинксе подчерки, то и везде должны быть подчерки" ?
admin
Site Admin
Posts: 37995
Joined: Wed Sep 10, 2008 11:43 am

Re: Ошибки сфинкса

Post by admin »

В смарте названия индеков сфинкса должны быть именно в таком виде как они записаны в конфиге сфинкса конечно
Don't forget to run script update
SpyCam
Posts: 736
Joined: Fri Oct 26, 2012 9:52 am

Re: Ошибки сфинкса

Post by SpyCam »

С этим разобрались. Но появилась другая проблема, такие ошибки:

Core error: Mysql error 1064: offset out of bounds (offset=39920, max_matches=20000) (SELECT id FROM domain_com_scj_index_search WHERE MATCH ('"Xmas"') ORDER BY hits DESC LIMIT 39920, 50 OPTION max_matches=20000)

Что делать?


admin wrote: Wed Mar 17, 2021 4:33 am В смарте названия индеков сфинкса должны быть именно в таком виде как они записаны в конфиге сфинкса конечно
Post Reply