【问题标题】:com.google.appengine.api.datastore.DatastoreNeedIndexException error in Sample App示例应用程序中的 com.google.appengine.api.datastore.DatastoreNeedIndexException 错误
【发布时间】:2014-12-09 14:53:14
【问题描述】:

我正在测试一个 GAE 模块应用。我的应用程序非常简单,它没有对 Cloud SQL 或任何地方的任何查询,它只是一个 helloworld。

但是,我得到了 f

com.google.appengine.api.datastore.DatastoreNeedIndexException: no mat
    <datastore-index kind="Greeting" ancestor="true" source="manual">
        <property name="date" direction="desc"/>
    </datastore-index>

这怎么可能?

我曾多次开发过其他 GAE 应用程序,但从未遇到过这个问题

【问题讨论】:

    标签: java google-app-engine google-cloud-platform google-cloud-datastore


    【解决方案1】:

    查询需要被索引,否则它将不起作用。在这种情况下,当您返回问候语时,您似乎按日期对它们进行了排序。 Datastore 根据实体的索引字段将数据存储在预先排序的表中;这意味着如果您从未索引“日期”,则不存在所有问候语都按日期排序的表格。

    您只需将该数据存储索引块添加到您的 WEB-INF 文件夹中的 datastore-indexes.xml 即可修复它。

    添加索引后,重新部署并等待大约 10 分钟,以便为所有旧数据编制索引(如果您有更多数据,可能需要更长时间)。再试一次,它现在应该可以工作了。

    【讨论】:

      猜你喜欢
      • 2012-04-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-17
      • 2019-07-16
      • 2018-09-09
      相关资源
      最近更新 更多