coreseek常见错误原因及解决方法

时间:2021-08-03 21:55:59

coreseek常见错误原因及解决方法

Coreseek 中文全文检索引擎

Coreseek 是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和信息处理领域,适用于行业/垂直搜索、论坛/站内搜索、数据库搜索、文档/文献检索、信息检索、数据挖掘等应用场景,用户可以免费下载使用


本文为大家整理了coreseek/sphinx中文检索引擎的常见问题和解决方法,感兴趣的同学参考下。

Coreseek 是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和信息处理领域,适用于行业/垂直搜索、论坛/站内搜索、数据库搜索、文档/文献检索、信息检索、数据挖掘等应用场景,用户可以免费下载使用

1. Unigram dictionary load Error:

词典路径设置不正确,所设置的路径下没有uni.lib;特别要注意使用相对路径时,是否正确对应到了实际的目录;测试是否存在,可以在命令行执行:dir charset_dictpath所设置的目录,检查是否存在!

2. Segmentation fault 或者 段错误:可能原因如下

词典路径设置不正确,或者自己构造的词典数据过多(建议不超过20w条);
max_matches参数设置过大,建议设置在10000以内;

3. iniparser: cannot open ......mmseg.ini:

mmseg.ini没有设置,请在提示的位置创建mmseg.ini,然后前往mmseg.ini参考设置所需要的参数即可!

4. FATAL: failed to parse config file '......csft.conf':

或者:FATAL: config file '......csft.conf' does not exist or is not readable   没有设置配置文件或者配置文件位置不正确,使用相对路径时需要特别注意(例如在bin目录中直接运行indexer);请使用“-c 配置文件完整路径/csft.conf”,来进行设置

5. WARNING: no such index '......', skipping.:

配置文件中没有找到对应的索引名称,请查看提示的名称是否设置!

6. ERROR: unknown key name 'charset_dictpath' in ......:

当前运行的程序不支持或者没有安装启用中文分词,请参考安装说明进行操作以便支持中文分词

7. FATAL: index '......': unknown charset type 'zh_cn.utf-8':

没有设置charset_dictpath,或者charset_dictpath设置的路径下没有uni.lib;或者使用的不是coreseek。

8. Windows下面出现"应用程序错误:应用程序无法正常启动(0x????????)。请单击”确定“关闭应用程序。":(如下图所示)

此时需要下载安装Python2.6 Windows (x86);请使用x86版本,如果使用64位版本的Python将无法正常运行。

coreseek常见错误原因及解决方法

9. 编译时错误提示:undefined reference to:

posixmodule.c:(.text+0x367e): undefined reference to `forkpty'
posixmodule.c:(.text+0x3714): undefined reference to `openpty'

启用Python数据源支持时,没有按照提示设置LIBS,请查看安装指南Python数据源部分设置LIBS,然后重新configure后编译安装

10. 编译时错误提示:typedef unsigned int DWORD

/usr/local/mmseg3/include/mmseg/csr_typedefs.h:64: 错误: 相互冲突的声明‘typedef unsigned int DWORD’
/usr/include/sqltypes.h:97: 错误: ‘DWORD’早先被声明为‘typedef long unsigned int DWORD’

解决方法:vi /usr/local/mmseg3/include/mmseg/csr_typedefs.h,到64行,注释该行,保存退出重新编译即可!

11. failed to open ....spl或者FATAL: no valid indexes to serve或者类似错误提示:

首先,执行命令:dir 提示的文件,检查提示的文件是否存在;
其次,执行命令:dir 提示的文件所在目录,检查提示的文件所在目录是否存在;
然后,请确认是否执行了indexer并正确建立了索引;
特别要注意,要在出现以上提示后,马上执行上面的命令检查;
如果,使用相对路径时,要仔细检查是否正确对应到了实际的目录;

12. Windows下面出现"应用程序错误:应用程序无法正常启动(0x????????)。请单击”确定“关闭应用程序。":(如下图所示)

coreseek常见错误原因及解决方法
如果使用coreseek 3.x,此时需要下载安装Microsoft Visual C++ 2005 Redistributable Package (x86,2.6M大小);请使用x86版本,如果使用64位版本的将无法正常运行。
如果使用coreseek 4.x,此时需要下载安装Microsoft Visual C++ 2008 Redistributable Package (x86,1.7M大小);请使用x86版本,如果使用64位版本的将无法正常运行。

13. 搜索时出现:unknown local index '索引名称' in search request:

该提示表示Query("搜索字符串","索引名称")时的第二个参数-索引名称-在配置文件中不存在,请仔细核对!或者将其修改为“*”,表示在所有索引中搜索!

14. Windows2003:The Application failed to initialize properly ( 0xc0150002 )或者“应用程序错误:应用程序无法正常启动(0x????????)。”

可以安装:Microsoft Visual C++ 2005 SP1 Redistributable Package (x86),进行测试,下载地址:http://www.microsoft.com/downloads/details.aspx?familyid=200B2FD9-AE1A-4A14-984D-389C36F85647&displaylang=zh-cn

15. Query()查询后没有结果?

如果是PHP环境,请使用

print("<pre>");
print_r($cl->GetLastError());
print_r($cl->GetLastWarning ());
print_r($res);
print("$lt;pre>")

来输出当前状态并获取提示信息。其中$cl表示SphinxClient对象实例,$res表示Query()的返回;其他语言类似处理。

16. 索引时提示:FATAL: out of memory (unable to allocate ?????? bytes)

该提示表示当前环境下,可以使用的内存不足够;可能是因为其他程序占用内存较多导致可用内存太少;也有可能是因为配置中mem_limit设置太大。

17. searchd启动时提示:bind() failed on ......, retrying...

该提示表示已有其他搜索服务运行,或者有其他程序占用了配置文件中设置的端口;
如果是Linux/BSD环境,可以通过ps auxww | grep searchd查看当前运行的searchd程序,使用kill杀灭无需使用的进程;
如果是Windows环境,可以使用任务管理器查看当前运行的程序,并结束无需使用的程序。

18. Windows下安装为系统服务,启动时出现1067错误;或者启动出现错误:FATAL: failed to create pid file

该问题出现的原因比较复杂,可能与配置有关,也可能与Windows自身环境有关(Windows自己都可能出现内存错误等)。有可能的解决方法:
将配置文件中的所有路径设置,修改为绝对路径,路径不得包含中文,也不得包含空格,路径分隔符使用“/”而不是“\”,例如:应该使用c:/usr/local/coreseek/etc/,而不使用c:\usr\local\coreseek\etc\

19. 命令行search搜索结果的字段中出现乱码或者???怎么办:

首先,该乱码只是显示乱码,对搜索不产生任何影响,只是因为mysql默认字符集导致查询结果读取数据显示出来不正确;
然后,如果使用的是MySQL4.1、MySQL5.0.x、MySQL5.1.x,请设置my.cnf(Linux/BSD)或者my.ini(Windows),在[client]、[mysql]、[mysqld]的配置段下面,设置或者加上:
default-character-set=utf8
接着,重启mysql服务,继续查询即可正确显示。
注意:Windows需要按照Windows系统安装测试说明文档中方式正确查询和显示UTF-8字符。

20. 索引或者查询时提示:no such filter attribute '

请仔细查看属性说明,请确保你调用的属性或者字段名使用"sql_attr_类型"设置了。

21. 编译时,出现 DWORD 错误:

如果编译中出现如下错误:
DWORD定义冲突: /usr/local/mmseg3/include/mmseg/csr_typedefs.h:64: 错误: 相互冲突的声明‘typedef unsigned int DWORD’
/usr/include/sqltypes.h:97: 错误: ‘DWORD’早先被声明为‘typedef long unsigned int DWORD’
解决方法:vi /usr/local/mmseg3/include/mmseg/csr_typedefs.h,到64行,注释该行,保存退出重新编译即可!

22. 索引或者查询时提示:ERROR: invalid token in 配置文件 line 1 col 1.:

该提示表示当前的配置文件的编码不是UTF-8(无BOM头)格式,无法正确解析,请使用编辑软件打开配置文件,另存为UTF-8(无BOM头)格式;
错误的编码格式包括:Unicode、Unicode BOM、Unicode big endian、Unicode 低位在前、UTF-8 + BOM、UTF-8 Signature、UTF-8 包含签名等;
特别注意:Windows自带的记事本(Notepad)或者写字板(WordPad)无法正确保存为所需格式,请勿使用其编辑配置文件;
推荐编辑器:点击下载Notepad2绿色版;使用Notepad2打开配置文件,依次选择:“文件”菜单--“编码”--“UTF-8”,然后保存文件(快捷键CTRL+S)即可。

23. ERROR: connection to localhost:**** failed (errno=111, msg=Connection refused).:

原因很简单,可能为:1. searchd没有启动;2. 连接的IP和端口不正确;3. 跨服务器时,检查防火墙是否允许连接。

24. 编译时提示:libtool: unrecognized option `--tag=CC' ...... make[2]: *** ......:

系统上老版本libtool的配置影响了libtool的正常使用,执行mv /usr/share/libtool /usr/share/libtool_old ; ln -s /usr/local/share/libtool /usr/share/libtool,然后再次解压coreseek(先删除旧的),并重新进行安装编译过程。

25. 搜索时提示:searchd error: client version is higher than daemon version ......:

该问题说明你所使用的SphinxClient接口,与服务器端的版本不一致。需要使用安装Coreseek/Sphinx的包里面的api/目录下对应的Client库。

26. 编译时提示:tokenizer_zhcn.h:26:30: error: SegmenterManager.h:

该问题说明编译mmseg的时候,没有执行:$ ./bootstrap,请前往编译安装指南查看具体步骤。

27. 编译时提示:undefined reference to `libiconv':

该问题说明当前环境的iconv没有安装或者没有正确设置,请前往编译安装指南查看具体解决方法。

coreseek常见错误原因及解决方法的更多相关文章

  1. Excel公式的常见错误值及其解决方法

    Excel公式的常见错误值及其解决方法 经常用Excel的朋友可能都会遇到一些莫名奇妙的错误值信息:# N/A!.#VALUE!.#DIV/O!等等,出现这些错误的原因有很多种,如果公式不能计算正确结 ...

  2. ORA-04091错误原因与解决方法

    最近工作中写了一触发器报错:ORA-04091:table XX  is mutating, trigger/function may not see it. 下面通过官方文档及网友提供资料分析一下错 ...

  3. &sol;usr&sol;bin&sol;ld&colon; cannot find -lc错误原因及解决方法

    问题解决 我在执行如下命令的时候,出现了错误. gcc -o main main.c -static -L. –lmylib Linux环境下gcc静态编译/usr/bin/ld: cannot fi ...

  4. Hadoop常见错误问题及解决方法总结二

    问题导读:1.遇到问题该如何排除错误?2.看不到namenode的可能原因是什么?3.地址占用该如何解决?4.could only be replicatied to 0 nodes, instead ...

  5. SpringBoot&plus;Shiro引起事务失效、错误原因、解决方法

    一.问题今天发现用户注册的Service的事务并没有起到作用,再抛出一个RuntimeException后,并没有发生回滚,下面是调试步骤: 1.检查数据库的引擎是否是innoDB 2.启动类上是否加 ...

  6. 【原创】XAF 常见错误以及对应解决方法

    1.Appearance Criteria设置错误 Exception occurs while assigning the 'DetailView, ID:xxx_DetailView' view ...

  7. httpclient org&period;apache&period;http&period;NoHttpResponseException&colon; host&colon;端口 failed to respond 错误原因和解决方法

    原因:httpclient 之前与服务端建立的链接已经失效(例如:tomcat 默认的keep-alive timeout :20s),再次从连接池拿该失效链接进行请求时,就会保存. 解决方法:官方链 ...

  8. SyntaxError&colon; &lpar;unicode error&rpar; &&num;39&semi;unicodeescape&&num;39&semi; codec can&&num;39&semi;t decode bytes in position 2-3&colon; truncated &bsol;UXXXXXXXX escape错误原因及解决方法

    用Python打开文件: with open('C:\Users\PINPIN\test\file1.txt','r') as f2: pass 运行后直接就报错了: File "<i ...

  9. CentOS编译PHP过程中常见错误信息的解决方法

    原文链接:http://www.linuxidc.com/Linux/2014-05/102327.htm ********************************************** ...

随机推荐

  1. 机器学习——k-近邻算法

    k-近邻算法(kNN)采用测量不同特征值之间的距离方法进行分类. 优点:精度高.对异常值不敏感.无数据输入假定 缺点:计算复杂度高.空间复杂度高 使用数据范围:数值型和标称型 工作原理:存在一个样本数 ...

  2. BooleanToVisibilityConverter&period;cs

    //---------------------------------------------------------------------------- // // Copyright (C) M ...

  3. 小P的图论课 &lpar;模拟退火&rpar;

    uses math; ; INF=; var n,m,i,x,y,sum,ans,delta:longint; map:..maxn,..maxn] of longint; flag:..maxn] ...

  4. cout 格式化的一些方法

    cout格式化的方式有很多,和C中的printf相比较,在实现方式上更加容易理解. 1.计数进制. 1.十六进制:hex 2.八进制:oct 3.十进制:dec(默认) 在控制进制的时候,可以使用两种 ...

  5. git底层原理(一)

    1.git仓库的初始化: 输入git init指令,会看到在当前空目录下创建了一个.git隐藏文件夹,这个就是git实现一切版本管理的关键.进入到.git目录下,里面包含三个文件(config/des ...

  6. java~集合分组groupby的实现

    对于数据聚合来说,分组操作是很常见的,在.net里有lambda和linq,而在java里也有lambda,现在我们来实现对一个集合进行分组. 一 准备工作,有两个类型 @Value class It ...

  7. C&num;使用GUID

    全局唯一标识符(GUID,Globally Unique Identifier) What is GUID 也称作 UUID(Universally Unique IDentifier) . GUID ...

  8. python爬虫之git的使用

    一.简单认识: 1.初始化文件夹为版本控制文件夹,首先建立一个文件夹,进入这个文件夹以后输入git init初始化这个文件夹. 2.Git几种位置概念 1.本地代码:本地更改完代码以后,虽然是存放在g ...

  9. gethostbyname和gethostbyaddr

    一.gethostbyname函数原型 #include <netdb.h> struct hostent *gethostbyname(const char *ghostname); 返 ...

  10. 【Linux】Centos下安装ffmpeg

    一.准备工作 1.系统环境:CentOS release 6.9 (Final) 2.安装依赖包 yum install -y autoconf automake cmake freetype-dev ...