我们正在使用GAE Search API,因为很长一段时间但是最近达到了2000字节的查询长度限制:
java.lang.IllegalArgumentException:查询字符串不能更长 超过2000字节,是2384
我们基本上保存了将辅助ID设置为原子字段的文档。在我们的查询中,我们进行了一些排序和距离计算,并且还排除了那些辅助ID与具有NOT语句的id列表匹配的文档,如下所示:
... AND NOT sec_id:(x AND y AND ...)
如果有一定数量的排除ID,我们显然会达到查询长度限制。我可以使用相同的基本查询将查询拆分为单独的查询,并且仅使用一组不同的排除ID,但排序是有问题的。
所以我想知道是否有另一种方法来实现这种查询,最好在一个查询中使用黑色和白色列表(AND NOT :( ..)& AND:(..))。 / p>