Google app engine Google应用程序引擎数据存储索引已创建,但仍获得DatastoreNeedIndexException
我在谷歌应用引擎数据存储中创建了一个名为User的类,我正在尝试为这种类型添加一个索引 首先,我随后创建了索引,在war/WEB-INF中添加了datastore-indexes.xml,但它不起作用,在我部署到app engine后没有创建索引 然后,我创建了index.yaml并运行Google app engine Google应用程序引擎数据存储索引已创建,但仍获得DatastoreNeedIndexException,google-app-engine,google-cloud-datastore,Google App Engine,Google Cloud Datastore,我在谷歌应用引擎数据存储中创建了一个名为User的类,我正在尝试为这种类型添加一个索引 首先,我随后创建了索引,在war/WEB-INF中添加了datastore-indexes.xml,但它不起作用,在我部署到app engine后没有创建索引 然后,我创建了index.yaml并运行gcloud app deploy index.yaml,这次我可以看到在GCP控制台中创建的索引,如下所示 但我还是有一个例外,如下所示: Uncaught exception from servlet co
gcloud app deploy index.yaml
,这次我可以看到在GCP控制台中创建的索引,如下所示
但我还是有一个例外,如下所示:
Uncaught exception from servlet
com.google.appengine.api.datastore.DatastoreNeedIndexException:
no matching index found. recommended index is:
- kind: User
properties:
- name: area
- name: coins_balance
The suggested index for this query is:
<datastore-index kind="User" ancestor="false" source="manual">
<property name="area" direction="asc"/>
<property name="coins_balance" direction="asc"/>
</datastore-index>
来自servlet的未捕获异常
com.google.appengine.api.datastore.DatastoreNeedIndexException:
找不到匹配的索引。建议的指数为:
-种类:用户
特性:
-名称:区域
-姓名:硬币/结余
此查询的建议索引为:
我用“索引已创建,但仍有数据存储需要IndexException”搜索了谷歌,但没有找到任何有用的信息
请有人帮忙,谢谢。索引中属性的顺序很重要。屏幕截图显示了的索引
-种类:用户
特性:
-姓名:硬币/结余
-名称:区域
你实际上想要:
-种类:用户
特性:
-名称:区域
-姓名:硬币/结余
因此,您可以更改查询以匹配现有索引,也可以构建建议索引的索引。索引中属性的顺序很重要。屏幕截图显示了的索引
-种类:用户
特性:
-姓名:硬币/结余
-名称:区域
你实际上想要:
-种类:用户
特性:
-名称:区域
-姓名:硬币/结余
因此,您可以更改查询以匹配现有索引,也可以构建推荐索引所对应的索引。谢谢,这实际上是可行的。但我仍然不明白为什么datastore-indexes.xml不起作用,现在它只在我运行“gcloud app deploy index.yaml”时起作用,索引配置放在index.yaml中。谢谢,这确实起作用。但我仍然不明白为什么datastore-indexes.xml不起作用,现在它只在我运行“gcloud app deploy index.yaml”时起作用,索引配置放在index.yaml中。