我正在通过manning阅读Solr in Action,对于提交和各种搜索变暖选项几乎没有任何疑问。
属性告诉solr根据指定的时间间隔(maxTime),doc Count(maxDocs)提交要写入磁盘的文档。
问题1: - maxTime和maxDocs可以一起使用还是相互排斥
autocommit有一个孩子attibute调用openNewSearcher。
本书说openNewSearcher如果在每次提交时设置为true(基于时间或计数),则初始化并加热新的搜索者。
问题2:发生这种情况时,发布提交后发出的所有查询都会被阻止,直到搜索者被加热为止。
问题3:正在进行的查询会发生什么,并且在发布提交时尚未完成执行
答案 0 :(得分:0)
maxTime and maxDocs can be set:
如果达到这些maxDocs或maxTime限制,Solr会自动执行提交操作。如果缺少autoCommit标记,则只有显式提交才会更新索引。是否使用自动提交的决定取决于您的应用程序的需求。
关于阻塞 - 默认情况下Solr不会阻塞。新的搜索者将在准备就绪时可用。你可以使用waitSearcher选项一个明确的提交来说"嘿,我想等到我确定新的搜索者在继续"之前可用。你不应该真的这么做。您还可以在提交过程中向Solr发送更新。
之前的搜索者应该在关闭之前关闭正在进行的任何活动查询。