我们在 Web 应用程序中使用 Lucene .NET。我们从 SQL 数据库构建索引,然后对其进行搜索。
我们有一个令人困惑的情况:两台服务器上的相同数据库,相同的代码,相同的配置(相信我,我们已经彻底检查过了)。但是运行相同的搜索会返回截然不同的文档数量(一个产生很多,另一个不是这样)。
我们记录了针对 Lucene 运行的实际查询,并在 Lucene 查询分析器中运行了这些查询,我们在两台服务器上都得到了预期的结果。但是,通过我们的代码执行查询会在服务器之间给出完全不同的结果。
我们甚至在服务器之间复制了索引文件,我们得到了相同的结果——一台服务器总是给出很多结果,而另一台则没有。
我们检查了两台服务器的配置 - 两台服务器都是 Windows 2008 R2,64 位版本,都设置为相同的区域设置等。
我们很困惑 - 任何想法都非常感谢