发表回复 
 
主题评价:
  • 0 次(票) - 平均星级: 0
  • 1
  • 2
  • 3
  • 4
  • 5
咨询2个建索引的问题
2013年05月29日, 16:16
咨询2个建索引的问题
版本:xunsearch-1.4.6
操作系统:centos 5.6
内核:2.6.18-238.19.1.el5.centos.plus x86_64

1、我使用--rebuild建索引,会提示:
[XSException] ../lib/XS.php(2233): DB has been rebuilding(S#407)
#0 ../lib/XS.php(1198): XSServer->execCommand(Array, 257)
#1 Indexer.php(241): XSIndex->beginRebuild()
#2 {main}

[b]这是咋回事?[/b]

2、我又换成--stop-rebuild,可以成功建索引,[b]这是怎么回事?[/b]
但是,在data目录下看到的是 db.re这个目录。必须手动实行:

$ rm -rf db
$ mv db.re db

[b]这又是怎么回事?[/b]
查找这个用户的全部帖子
引用并回复
2013年05月29日, 16:21
RE: 咨询2个建索引的问题
你的 rebuild 没完成就中断了吧。重启下机器或--stop-rebuild,然后重建
查找这个用户的全部帖子
引用并回复
2013年05月29日, 16:24
RE: 咨询2个建索引的问题
谢谢管理员。,我理解是几点:
1、--stop-rebuild不是停止build吗?为什么使用--stop-rebuild反而能成功建索引?
2、使用--stop-rebuild建完索引之后,得到的是db.re,不会改成db
3、如果以前--rebuild不成功,我xunsearchd已经重启过很多次了,那么他的状态保存在哪里?
其次,我执行--stop-rebuild之后(建好索引),再使用--rebuild,还是报那个错。


所以没搞明白。
查找这个用户的全部帖子
引用并回复
2013年05月29日, 16:27 (这个帖子最后修改于: 2013年05月29日 16:28 by hightman.)
RE: 咨询2个建索引的问题
--stop-rebuild 后要等一段时间让服务器调整过来。

--rebuild 不成功就重启服务器的话,文件系统就停留在 db.re 没用了,但可以正常进行再次重建或清空

所以使用这个要小心,确保 rebuild 正常完成不要随便中断啊
查找这个用户的全部帖子
引用并回复
2013年05月29日, 16:33 (这个帖子最后修改于: 2013年05月29日 17:17 by coos.)
RE: 咨询2个建索引的问题
是不是我没有表达清楚

1、我在使用--stop-rebuild的时候,我在服务端看到的不是服务器在调整,而是真真实实的在重建索引,因为我能观察到服务器端会生成一个db.re目录,然后目录会一致变大。
在api端可以能看出重建索引多少条的提示。所以他不应该是停止,而是重建索引了(但是db.re不会改名db)

2、我执行完毕后--stop-rebuild之后,再使用--rebuild,也会提示DB has been rebuilding,我换了服务器版本(包括目录)也是这样。
现在我只能使用--stop-rebuild来建索引,然后手动mv db.re db,没办法正常重建,不知道使用什么办法解除这个问题。

谢谢[hr]
查找这个用户的全部帖子
引用并回复
2013年05月29日, 18:06
RE: 咨询2个建索引的问题
@小毛 --stop-rebuild 的问题已经修正,涉及到服务端和 SDK 端都同步修正,我已经上传了最新开发版修正这个问题,你可以下载开发版测试。
查找这个用户的全部帖子
引用并回复
发表回复 


论坛跳转:


正在浏览该主题的用户: 1 个游客