Showing posts with label sphinx. Show all posts
Showing posts with label sphinx. Show all posts

Wednesday, June 20, 2012

Sphinx İçin Türkçe Sorunları

Sphinx ile Türkçe verilerinizde sorunsuz çalışmak için öncelikle tüm tablolarınızın ve alanlarınızın "utf8 " olduğunu kontrol edin. (Mysql kullandığınızı varsayıyıorum.)

Sphinx ayar dosyasında ilgili "index" ayarı için  şu iki satır ekli olmalı :


charset_type            = utf-8

charset_table           = A->a, B->b, C->c, U+C7->U+E7, D..G->d..g, U+011E->U+011F, H->h, U+49->U+131, U+130->i, J..O->j..o, U+D6->U+F6, P->p, R..U->r..u, U+15E->U+15F, U+DC->U+FC, X->x, W->w, V->v, Y->y, Z->z, a, b, c, U+E7, d..g, U+11F, h, U+131, i..o, U+F6, p, r..u, U+15F, U+FC, x, w, v, y, z

Ayar dosyasında "source" ayarı için de bu satır önemli :


sql_query_pre                   = SET NAMES utf8


Ayrıca min_word_len değerini biraz yükseltirseniz de kimseye zarar gelmez.
min_word_len            = 3

Saturday, November 5, 2011

sphinx get's dirty

Sphinx özellike main+delta seklinde calismalarda bazen indexlemeyi durdurabiliyor. Sonra baktığınızda index data dosyalarınız yerine sonuna '.new ve '.tmp'' eklenmiş hallerini gorebilirsiniz.
Tekrar indekslediğinizde başarılı bitebilir ama buyuk ihtimal ./search e query atayamayacaksiniz atsanizda eski gelecek.

Burada konuyla ilgili bug girilmiş
http://sphinxsearch.com/bugs/view.php?id=302

Bu durumla sık karsılasir oldum, ve karsilastigim zaman once searchd'yi kapatiyorum.
./searchd --stop
/opt/sphinx/var/log/searchd.pid dosyasini siliyorum. Bu sizde baska bir yerde olabilir veya olmayabilir, zira searcd kapanınca bu da silinmeli.

Ardından '.new' ve '.tmp' dosyalarini silip searchd yi tekrar baslatiyorum. Hepsi bu ancak can sıkıcı.