一位同事问了这个问题,我没有立即找到解决方案,所以我在这里发布。他以编程方式在主数据库中插入一个 Sitecore 项目,然后必须插入另一个项目,该项目依赖于索引中存在的第一个项目。他最初每两次插入第二个项目都会失败,但后来在他的代码中插入了一个手动暂停以尝试让索引时间赶上,现在它大约每十次失败一次。更好,但并不完美。
他正在寻找是否有 Sitecore 方法来检查索引是否已更新,然后再继续插入相关项。
我确实找到了 Alex Shyba 的这篇博文(http://sitecoreblog.alexshyba.com/2011/04/search-index-troubleshooting.html),看起来它可能有一些适用性,但我的同事正在严格地工作master DB(不涉及发布),并且我们已经在我们的解决方案中实现了 Alex 文章中的前几个步骤(我没有完成整个事情)。