Google应用引擎

我将对象序列化到我的应用程序中的blobstore,并在他们更改时删除并重新创建它们。 我知道这不是最好的方法,但我发现这是快速成型的好方法。

现在我处于使用数据存储的阶段,但是我遇到了问题。 我的数据存储配额已满! :)我做了很多的搜索这个问题,但我在这里。

对于每个blob, __BlobInfo____BlobFileIndex__种类都会显示关于blob的信息。 我的问题是当我删除blob时, __BlobInfo__中的信息被删除,而不是__BlobFileIndex__中的信息

我拼命尝试appcfg vacum_indexes,但没有如预期的那样有帮助。

顺便说一句,我使用Java平台。

这是我的问题

  • 如何清除未使用的__BlobFileIndex__条目?
  • 处理这种情况不再发生的正确方法是什么?
  • 谢谢。

    编辑:呜呼! 我现在看到,我不能删除这些不需要的索引a)Datastore管理员没有列出他们b)手动删除代码抛出异常(java.lang.IllegalArgumentException:非法key.path.element.type: BlobFileIndex )因为以双下划线开头的实体是应用引擎保留的实体,它不允许我删除它。 在谷歌的人,我在这里坐:)


    只要有解决方案,您可以将此问题列为明星以获得通知...
    http://code.google.com/p/googleappengine/issues/detail?id=6849


    我有这个问题,但找到了一个解决方案:

    对于任何想要以编程方式删除BlobFileIndex的人,都可以这样做:

    query = datastore.Query("__BlobFileIndex__",{'blob_key': a_blob_key}, keys_only=True)
        key = query.Get(1)
        key_y = key[0]
        datastore.Delete(key_y)
    
    链接地址: http://www.djcxy.com/p/11559.html

    上一篇: google app engine

    下一篇: Programmatically download APK from google play store