如何使用太阳黑子手动重新索引solr?

时间:2011-11-24 03:49:40

标签: couchdb sunspot reindex

我有couchdb。太阳黑子正确地索引了一切。但是Solr服务器崩溃了。我需要重新索引整个事情。耙太阳黑子:reindex不会工作,因为它与活跃的记录相结合。 sunspot.index(model.all)没有用。即使这样做,solr核心也会说0个索引文档。还有出路吗?

3 个答案:

答案 0 :(得分:14)

Post.solr_reindex

有许多选项可以传递给solr_reindex。与索引相同的选项;来自documentation

批量为50的索引,每个

后提交
Post.index 

一次索引所有行,然后提交

Post.index(:batch_size => nil) 

批量为50的索引,在所有批次完成时提交

Post.index(:batch_commit => false) 

在加载到索引

时包含关联的+ author +对象
Post.index(:include => :author) 

答案 1 :(得分:3)

我在寻找的是:

Post.index!(Model.all)

当我尝试索引假设批量提交会自动发生时,发生了一些不好的事情。这对我来说完全没问题。

答案 2 :(得分:2)

我通常在下面写命令来索引模型。它每次都很完美。

对于模型,即(帖子)

Sunspot.index Post.all

对于模型行,即(Post.where(id:5))

Sunspot.index Post.where(id: 5)

它会起作用。

干杯!