plugins - Grails可搜索插件

标签 plugins grails searchable

我的应用程序使用Grails可搜索插件,下面使用Compass

开始索引的表约为36 MB,正在构建的索引约为350 MB。在大多数人的书中,这很小。

如果我们删除索引并启动Grails应用程序,则会按预期重建索引文件,但是在运行大约一天后,我们会发现此错误。我们在保存它们的TellMeEntity实例上调用“reindex”,以确保索引已更新。

Exception org.compass.core.engine.SearchEngineException: Failed to delete alias [TellMeEntity] and ids [[stored/uncompressed,indexed,omitNorms,omitTf]]; nested exception is java.io.FileNotFoundException: /var/www/web17/log/mne/index/tellmeentity/segments_2 (No such file or directory) at org.compass.core.lucene.engine.transaction.readcommitted.ReadCommittedTransaction(doDelete:348)



显然,一旦出现此错误,索引就不会更新,并且搜索对新输入的数据也将不起作用。

我们已经检查了磁盘空间等简单的内容。“segments_2”不存在,但是我希望Compass能够自己创建它。

grails-app/conf/Searchable.groovy文件中:

....
  mirrorChanges = true
  bulkIndexOnStartup = "fork"

....

在我的代码中:

....
def formInstance = new TellMeEntity(name:'form',dataOwner:session.community,createBy:session.zoner,tellMeSite:form).save()
formInstance.reindex()

....

我目前的经验是该代码可以在24小时内正常运行,但是随后开始出现问题。我们每天大约产生3000个新条目,这听起来不算很高,所以我认为这与数量无关。

如何解决此问题?

最佳答案

从臀部射击:您的索引位置/var/www/web17/log/mne是否受到某些日志文件轮换过程的影响,该过程会错误地尝试旋转索引文件? 24小时似乎在干扰某些基于cron的工作。

关于plugins - Grails可搜索插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4050323/

相关文章:

具有插件之间共享接口(interface)的 C# 插件架构

unity-game-engine - 如何获取一些Unity内置资源的路径和文件大小?

grails - Grails Spring Security InterceptUrlMap:如何限制对index.gsp的访问

hibernate - Grails 2.4 + Hibernate 4 + 可搜索插件 = ClassNotFoundException : org. hibernate.impl.SessionFactoryImpl

grails - 如何通过可搜索的属性组件进行过滤?

c++ - 确定 NPAPI 中的浏览器代理设置以下载页面 SSL 证书

ubuntu - 使用 jmeter 插件进行 Nagios 测试失败,出现 CRITICAL : . .. java.util.prefs.FileSystemPreferences$1 run

unit-testing - 在Grails测试中重置ID序列或更新ID

grails - 在Grails taglib中获取动态Config参数的问题

Grails 可搜索关系