Sphinx全文检索引擎使用指南:报告bugs

很不幸,Sphinx还没有达到100%无 bug(尽管我们正向这个目标努力),因此您可能偶尔遇到些问题。

对于每个问题的报告越详细越好,这很重要——因为要想修复 bug,我们必须重现 bug并调试它,或者根据您提供的信息来推断出产生bug的原因。因此在此提供一些如何报告bug的指导。

构建时问题

如果Sphinx构建失败,请您:

1. 确认你的DBMS的头文件和库文件都正确安装了(例如,检查mysql-devel包已经安装)

2. 报告Sphinx的版本和配置文件(别忘了删除数据库连接密码),MySQL(或 PostgreSQL)配置文件信息,gcc版本,操作系统版本和CPU类型(例如 x86、x86-64、PowerPC等)

mysql_config

gcc --version

u">name -a

3. 报告configure脚本或者gcc给出的错误信息(只需错误信息本身,不必附上整个构建日志)

运行时问题

如果Sphinx已经成功构建并能运行,但运行过程中出现了问题,请您:

1. 描述您遇到的bug(即,您预期的行为和实际发生的行为),以及重现您遇到的问题需要的步骤。

2. 附带Sphinx的版本和配置文件(别忘了删除密码),MySQL(或 PostgreSQL)配置文件信息,gcc版本,操作系统版本和CPU类型(例如x86、x86-64、PowerPC等)

mysql --version
gcc --version
uname -a

3. 构建、安装和运行调试版本的全部 Sphinx程序(这会启用很多内部校验,或称断言)

make distclean
./configure --with-debug
make install
killall -TERM searchd

4. 重新索引,检查是否有断言被触发(如果是,那很可能是索引损坏了并造成了问题)

5. 如果bug在调试版本中没有重现,请回到非调试版本并在报告中说明这个情况。

时间: 2024-09-03 23:47:27

Sphinx全文检索引擎使用指南:报告bugs的相关文章

Sphinx全文检索引擎使用指南:简介

1.1.什么是Sphinx Sphinx 是一个在GPLv2 下发布的一个全文检索引擎,商业授权(例如, 嵌入到其他程序中)需要联系我们(Sphinxsearch.com)以获得商业授权. 一般而言,Sphinx是一个独立的搜索引擎,意图为其他应用提供高速.低空间占用.高结果相关度的全文搜索功能.Sphinx可以非常容易的与SQL数据库和脚本语言集成. 当前系统内置MySQL和PostgreSQL数据库数据源的支持,也支持从标准输入读取特定格式的XML数据.通过修改源代码,用户可以自行增加新的数

Sphinx全文检索引擎使用指南:MySQL存储引擎

6.1. SphinxSE概览 SphinxSE是一个可以编译进 MySQL 5.x版本的MySQL存储引擎,它利用了该版本MySQL的插件式体系结构.SphinxSE不能用于 MySQL 4.x系列,它需要MySQL 5.0.22或更高版本:或 MySQL 5.1.12或更高版本. 尽管被称作"存储引擎",SphinxSE自身其实并不存储任何数据.它其实是一个允许 MySQL服务器与searchd交互并获取搜索结果的嵌入式客户端.所有的索引和搜索都发生在 MySQL之外. 显然,Sp

Sphinx全文检索引擎使用指南:搜索

4.1.匹配模式 有如下可选的匹配模式: ? SPH_MATCH_ALL, 匹配所有查询词(默认模式) ? SPH_MATCH_ANY, 匹配查询词中的任意一个 ? SPH_MATCH_PHRASE, 将整个查询看作一个词组,要求按顺序完整匹配 ? SPH_MATCH_BOOLEAN, 将查询看作一个布尔表达式 (参见 节 4.2, "布尔查询语法" ? SPH_MATCH_EXTENDED, 将查询看作一个Sphinx内部查询语言的表达式(参见 节 4.3, " 扩展的查询

Sphinx全文检索引擎使用指南:建立索引

3.1.数据源 索引的数据可以来自各种各样不同的来源:SQL数据库.纯文本.HTML文件.邮件等等.从Sphinx的视角看,索引数据是一个结构化的文档的集合,其中每个文档是字段的集合,这和SQL数据库的视角有所不同,在那里,每一行代表一个文档,每一列代表一个字段. 由于数据来源的不同,需要不同的代码来获取数据.处理数据以供Sphinx进行索引的建立.这种代码被称之为数据源驱动程序(简称:驱动或数据源). 在本文撰写时,Sphinx中包括 MySQL和PostgreSQL数据源的驱动程序,这些驱动

Sphinx全文检索引擎使用指南:安装

2.1.支持的操作系统 在绝大多数现代的Unix类操作系统上,只需要一个C++编译器就可以编译并运行Sphinx,而不需要对源码进行任何改动. 目前,Sphinx可以在以下系统上运行: ? Linux 2.4.x, 2.6.x (包括各种发行版) ? Windows 2000, XP ? FreeBSD 4.x, 5.x, 6.x ? NetBSD 1.6, 3.0 ? Solaris 9, 11 ? Mac OS X 支持的CPU种类包括 X86, X86-64, SPARC64. 我希望Sp

Sphinx全文检索引擎使用指南:searchd程序配置选项

8.4.1. address 要绑定的接口 IP地址.可选项,默认为0.0.0.0(即在所有接口上监听). 此设置指定searchd在哪个接口上绑定.监听和接受输入的http://www.aliyun.com/zixun/aggregation/184.5.html">网络连接.默认值为0.0.0.0,意思是在所有接口上监听.目前不能指定多个接口. 示例: address = 192.168.0.1 8.4.2. port searchd的TCP端口号.必选项,默认为3312. 示例: p

Sphinx全文检索引擎使用指南:索引配置选项

8.2.1. type 索引类型.可选选项,默认值为空(索引为简单本地索引).可用的值包括空字符串或 "distributed" Sphinx支持两种不同的索引类型:本地--在本机上存储和处理,和远程--不仅涉及http://www.aliyun.com/zixun/aggregation/20263.html">本地搜索,而且同时通过网络向远程searchd实力做查询.索引类似选项使您可以选择使用何种索引.索引默认是本地型.指定"distributed&qu

Sphinx全文检索引擎使用指南:sphinx.conf选项参考

8.1.数据源配置选项 8.1.1. type 数据源类型.必须选项,无默认值.已知的类型包括 mysql,pgsql,xmlpipe和xmlpipe2. 所有其他与数据源相关的选项都依赖于这个选项指定的源类型.与SQL数据源(即 MySQL和PostgreSQL)相关的选项以"sql_"开头,而与xmlpipe和xmlpipe2数据源相关的选项则以 "xmlpipe_"开头. 示例: type = mysql 8.1.2. sql_host 要连接的SQL服务器主

Sphinx全文检索引擎使用指南:API参考

Sphnix有几种不同编程语言的searchd客户端 API的实现.在本文完成之时,我们对我们自己的PHP,Python和java实现提供官方支持.此外,也有一些针对 Perl,http://www.aliyun.com/zixun/aggregation/13430.html">Ruby和C++++的第三方免费.开源API实现. API的参考实现是用PHP写成的,因为(我们相信)较之其他语言,Sphinx在PHP中应用最广泛.因此这份参考文档基于 PHP API的参考,而且这节中的所有的