我观察到一个非常奇怪的问题,共享点休息API
(SharePoint Online 和 onPrem)。
我们有一个稍大的库(约 100.000 个文档),具有一些多级文件夹结构。我在文件夹中有两个附加字段,我们称它们为CountryA
和CountryB
,这两个字段都已编入索引。
我观察到的情况如下:
/Items?$filter=(substringof('Ukraine',CountryA))&$select=ID(150 条记录)
/Items?$filter=(substringof('Spain',CountryB))&$select=ID(250 条记录)
/Items?$filter=(substringof('Ukraine',CountryA) and (substringof('Spain',CountryB))&$select=ID (100 条记录)
现在很奇怪的是:
/Items?$filter=(substringof('Ukraine',CountryA) 或 (substringof('Spain',CountryB))&$select=ID
引发 Microsoft.SharePoint.SPQueryThrottledException
老实说,这对我来说没有任何意义。几乎看起来像一个错误..由于我没有太多时间,我通过同时执行两个单字段查询其余查询并在客户端加入结果来“排序”问题。
无论如何,任何反馈都非常感谢;因为我现在通过在服务器上并行抛出两个休息调用实际上增加了对 SharePoint 的负载,我简直不敢相信这是“正确”的方法?!