GCP Datastore серые / неисследимые сущности? - PullRequest
1 голос
/ 07 февраля 2020

У меня есть хранилище данных со следующей схемой:

enter image description here

Как правило, мы хотим найти obfuscated_session_id и вернуть ему соответствующее session_id. Они всегда 1 к 1 и никогда не пусты. Например:

enter image description here

Фильтр всегда простое равенство.

Недавно я заметил, что иногда наши поиски ничего не возвращают, даже если есть безусловно, результат. Для нескольких записей, которые происходят, хранилище данных затеняет заголовок столбца, как показано ниже. Что означает этот неактивный заголовок?

enter image description here

PS - в этом магазине НЕТ пользовательских индексов любого вида.

---- Обновление ----

Похоже, что проблема связана с тем фактом, что некоторый код, который загрузил их, указал, что определенные столбцы проиндексированы.

class ObfuscatedVideo(Schema):
    obfuscated_video_id = StringProperty(required=True, indexed=True)
    video_id = StringProperty(required=True)
    obfuscated_session_id = StringProperty(required=True)
    session_id = StringProperty(required=True, indexed=True)

Где Schema - это пользовательский библиотечный класс, используемый для переноса некоторых функций GCP. Похоже, что большинство наших загрузок работают, но серый индекс соответствует полям выше, которые явно не помечены как indexed=True. Трудно сказать, что это может быть проблемой с нашей стороны, но, скорее всего, это связано с этим.

...