Google应用引擎查询返回空结果

时间:2016-01-05 09:58:19

标签: google-app-engine

我在GAE上使用Java API运行基于种类的查询。 以下是示例代码:

DatastoreService dataStore = DatastoreServiceFactory.getDatastoreService();

        Filter value1Filter = new FilterPredicate(PROPERTY_1, FilterOperator.EQUAL, value1);
        Filter value2Filter = new FilterPredicate(PROPERTY_2, FilterOperator.EQUAL, value2);
        Filter myFilter = CompositeFilterOperator.and(value1Filter, value2Filter);

        Query findQuery = new Query("MyKIND").setFilter(myFilter);
        myEntity = dataStore.prepare(findQuery).asSingleEntity();

PROPERTY_1和PROPERTY_2是索引属性。此查询有效一段时间,现在对某些值一致失败。假设这些值是上面显示的value1和value2。

但是,如果我使用具有相同值value1和value2的数据存储区查看器中的SELECT运行相同的查询,它将起作用并显示结果。我之前怀疑这是最终一致性的结果。但是,索引值已经很久(几个月前)写入,以便在其他实例中进行复制。

有没有办法纠正这种情况?不幸的是,我没有查询实体的密钥。

0 个答案:

没有答案