生成了索引库后,直接删除了索引文件,出现错误,怎么清空这个项目的所有数据,现在执行 [php] util/Indexer.php --source=csv changnetv8 --clean[/php] 时, 报[php][XSException] lib/XS.php(1898): DB has been rebuilding(S#407)[/php] 错误
重启一下服务 端吧,应该是直接 rebuild 没有完成。 bin/xs-ctl.sh restart
重启后不应该还会提示 rebuilding 你可以 ps 看一下是不是重启成功了 试试先 bin/xs-ctl.sh fastrestart
[quote='hightman' pid='184' dateline='1320990561'] 重启一下服务 端吧,应该是直接 rebuild 没有完成。 bin/xs-ctl.sh restart [/quote] 重新启动服务试过,后来服务器也重启过了。但一直是这个错误,估计是和我删除了部分临时文件有关系?
后来查看进程,发现stop后还有xunsearch进程在运行,kill之,然后重启搞定。 后来查明原因是因为用bin/xs-ctl.sh -b inet start 启动,但关闭时用的bin/xs-ctl.sh restart ,这个的话就会出现上面描述的问题了。 其实就是用bin/xs-ctl.sh -b in...
...不得不需要重建索引,可以用 [XSIndex::clean] 立即全部清空所有数据, 然后再把现有数据全部添加到索引数据库中。 但这种方式的缺点对于线上项目是难以容忍的,因此可以选择使用平滑重建方式。它的内部实现 相当于在一个...
...->del('abc', 'subject'); // 删除字段 subject 上带有索引词 abc 的所有记录 $index->del(array('abc', 'def'), 'subject'); // 删除字段 subject 上带有索引词 abc 或 def 的所有记录 ~~~ > note: 如果您删除时指定的主键或字段索引词包含中文字符,则它的...
...触到的几个重要对象(类)。 * [XS] 搜索项目的总对象,所有操作均基于此对象或其属性。 * [XSException] 所有操作中出现的异常、错误均抛出此类型的异常,搜索代码中应该尝试捕捉该异常以确定操作是否成功。 * [XSDocument] 文档...
...http://www.xunsearch.com/doc/php/guide/index.rebuild // 这里是开始,所有的索引操作都放在里面,update操作会先执行删除操作,然后执行add操作,update也可以的 $index->beginRebuild(); $data = array(); $doc = new XSDocument; $doc->setFileds($data); $index->add($doc);...
...后就在服务端做一个标记,原数据库不变。db 然后接下来所有的 add/update/del 操作全部写入临时数据库。db_re 直到调用 endRebuild() 这时会把 db 改为 db_o,再把 db_re 改为 db 然后清除标记恢复正常。