Wildcard search issue sphinx

django-sphinx, sphinx, thinking-sphinx

Solution

The issue is that star(*) for wildcard is also in your ignore_chars (U+002A).

Update it to:

ignore_chars = U+0021..U+0029,U+002B..U+002F,U+003A..U+003F,U+0060

Problem

I'm getting the following error while trying a wildcard(*) enabled search in Sphinx 2.0.6 index products: syntax error, unexpected $undefined near '*' My search term is `iphone 4s*` It's using the products index as defined below. ``` index users { enable_star = 1 docinfo = extern morphology = stem_en charset_table = 0..9, A..Z->a..z, _, a..z, U+410..U+42F->U+430..U+44F, U+430..U+44F ignore_chars = U+0021..U+002F,U+003A..U+003F,U+0060 charset_type = utf-8 html_strip = 0 source = gdgt_user path = /var/lib/sphinxsearch/data/gdgt/users min_infix_len = 3 min_word_len = 3 } index products : users { enable_star = 1 min_infix_len = 1 min_word_len = 1 source = gdgt_products path = /var/lib/sphinxsearch/data/gdgt/products } ``` I am using the php api that can be found in the source tar ball. I am able to see the error when using search CLI. ``` search -c app/config/sphinx.compiled.conf -i products -e "ipho*" Sphinx 2.0.6-id64-release (r3473) Copyright (c) 2001-2012, Andrew Aksyonoff Copyright (c) 2008-2012, Sphinx Technologies Inc (http://sphinxsearch.com) using config file 'app/config/sphinx.compiled.conf'... index 'products': search error: . ``` My php code looks like ``` $client = new SphinxClient(); $client->SetServer($serverIp, $serverPort); $client->SetMaxQueryTime(5000); $client->SetSortMode(SPH_SORT_RELEVANCE); $client->SetMatchMode(SPH_MATCH_EXTENDED); $res = $client->query('ipho*', 'products'); var_dump($res, $client->getLastError(), $client->getLastWarning()); ```

Original source