Опитвам се да използвам google datastore за моето приложение, което не е GAE.
За това създадох видове и свързани с предшественици обекти в хранилището за данни, използвайки gcloud python библиотека.
Също така актуализирана конфигурация на индекс на хранилище за данни за всички видове, използващи инструмента gcd чрез файла WEB-INF/datastore-indexes.xml и неговия статус.
Въпреки това не мога успешно да заявя колоните, базирани на индекса, нито в конзолата, нито с помощта на gcloud lib.
Ето запитването и обратното проследяване
from gcloud import datastore
ds = datastore.Client(dataset_id='XXXXXX')
query = datastore.Query(ds, kind='event')
query.add_filter('EvtName', '=', 'buy')
query.add_filter('EventDateTime', '<=', datetime.datetime(2015, 10, 22, 8, 45))
for itm in query.fetch():
print(dict(itm))
gcloud.exceptions.PreconditionFailed: 412 no matching index found.
ето моята конфигурация на datastore-indexes.xml
<?xml version="1.0" encoding="utf-8"?>
<datastore-indexes
autoGenerate="false">
<datastore-index kind="event" ancestor="true">
<property name="EvtName" direction="desc" />
<property name="EventDateTime" direction="desc" />
</datastore-index>
<datastore-index kind="att" ancestor="true">
<property name="EvtAttName" direction="desc" />
<property name="EventDateTime" direction="desc" />
</datastore-index>
<datastore-index kind="att_val" ancestor="true">
<property name="AttValue" direction="desc" />
<property name="EventDateTime" direction="desc" />
</datastore-index>
<datastore-index kind="user" ancestor="true">
<property name="EventDateTime" direction="desc" />
</datastore-index>
</datastore-indexes>
изпускам ли нещо?