Из того, что я читал в Документах Google и других вопросах SO, запросы key_only должны возвращать сильно согласованные результаты (например, и here).Почему запрос key_only не возвращает сильно согласованные результаты?
Мой код выглядит примерно так:
class ClientsPage(SomeHandler):
def get(self):
query = Client.query()
clients = query.fetch(keys_only=True)
self.write(len(clients))
Хотя я и извлечение результатов с keys_only = True параметром я получаю несвежие результаты сразу же после создания нового объекта клиента (который является корневой объект). Если перед вставкой было 2 клиентских объекта, он продолжает показывать 2 после вставки и перенаправления. Мне нужно вручную обновить страницу, чтобы увидеть изменение номера до 3.
Я понимаю, что могу использовать запросы предков, но сначала я проверяю некоторые вещи, и я был удивлен, увидев, что запрос key_only возвращает устаревшие результаты. Может кто-нибудь объяснить мне, что происходит?
EDIT 1: Это произошло на сервере разработки, я не тестировал его на производстве.
Спасибо, теперь я вижу свое замешательство. Теперь я передаю вновь сформированный ключ в качестве аргумента для моей следующей функции, так что он добавляется, если запрос не находит его. –