很不幸,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在调试版本中没有重现,请回到非调试版本并在报告中说明这个情况。