我正在尝试使用gae游标来分块大数据库请求的结果。 测试涉及在实体的75到300之间插入一个随机数,然后尝试使用获取页面以50的块为单位将其拉出。
z
其中CHUNK_SIZE为50.但是,测试不断失败,因为fetch_page在查询中没有条目之前返回'more'作为false wayyy,并且如果剩下少于50个条目,则返回'cursor'作为None查询。我不明白。根据方法描述,这些都不会发生。
据说Fetch_page最多返回“指定”的条目,这意味着我应该尝试获得尽可能多的条目。更多应该永远不会返回假阴性,因为它基于might_has_next,如下所述:
与has_next()类似,但使用更快(有时不准确)的快捷方式。
可能会返回误报(当next()实际上会提升StopIteration时为True),但是永远不会 false negative(当next()实际返回结果时为False。)
如果这是他们实际行为的方式,我觉得这些方法都不能依赖。请帮忙。谢谢!
编辑:认为这可能是一致性问题,所以我在帖子后睡了30秒(在我的本地机器上)。尽管如此,我仍然遇到同样的问题,即使只发布了40个实体。