3

After reaching the 200 limit of indexes, i need to vacuum the indexes of my application.

Using AppEngine 1.8.6, if I launch the usual command for this operation

..\appengine-java-sdk-1.8.6\bin\appcfg.cmd vacuum_indexes C:\MyGaeProject\war

I get the following error

WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0x80000002. Windows RegCreateKeyEx(...) r
eturned error code 5.
Reading application configuration data...
ott 23, 2013 2:49:30 PM com.google.apphosting.utils.config.AppEngineWebXmlReader readAppEngineWebXml
INFO: Successfully processed C:\MyGaeProject\war\WEB-INF/appengine-web.xml
ott 23, 2013 2:49:30 PM com.google.apphosting.utils.config.AbstractConfigXmlReader readConfigXml
INFO: Successfully processed C:\MyGaeProject\war\WEB-INF/web.xml
ott 23, 2013 2:49:30 PM com.google.apphosting.utils.config.AbstractConfigXmlReader readConfigXml
INFO: Successfully processed C:\MyGaeProject\war\WEB-INF/cron.xml
ott 23, 2013 2:49:30 PM com.google.apphosting.utils.config.AbstractConfigXmlReader readConfigXml
INFO: Successfully processed C:\MyGaeProject\war\WEB-INF/queue.xml
ott 23, 2013 2:49:30 PM com.google.apphosting.utils.config.IndexesXmlReader readConfigXml
INFO: Successfully processed C:\MyGaeProject\war\WEB-INF/datastore-indexes.xml


Beginning interaction for module default...
10% Found 79 local index definitions.

Error Details:
Line 0, column 12: Unable to find property 'application' on class: com.google.apphosting.utils.config.IndexYamlReader$In
dexYaml

Unable to perform vacuum_indexes
Unable to perform vacuum_indexes
Please see the logs [C:\UserTemp\appcfg6705503051002284735.log] for further information.
PS C:\Program Files (x86)\appengine-java-sdk-1.8.6\bin> .\appcfg.cmd vacuum_indexes "C:\MyGaeProject\war"
ott 23, 2013 2:50:18 PM java.util.prefs.WindowsPreferences <init>
WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0x80000002. Windows RegCreateKeyEx(...) returned error code 5.
Reading application configuration data...
ott 23, 2013 2:50:19 PM com.google.apphosting.utils.config.AppEngineWebXmlReader readAppEngineWebXml
INFO: Successfully processed C:\MyGaeProject\war\WEB-INF/appengine-web.xml
ott 23, 2013 2:50:19 PM com.google.apphosting.utils.config.AbstractConfigXmlReader readConfigXml
INFO: Successfully processed C:\MyGaeProject\war\WEB-INF/web.xml
ott 23, 2013 2:50:19 PM com.google.apphosting.utils.config.IndexesXmlReader readConfigXml
INFO: Successfully processed C:\MyGaeProject\war\WEB-INF/datastore-indexes.xml


Beginning interaction for module default...
10% Found 0 local index definitions.

Error Details:
Line 0, column 12: Unable to find property 'application' on class:
com.google.apphosting.utils.config.IndexYamlReader$IndexYaml

Unable to perform vacuum_indexes
Unable to perform vacuum_indexes

For testing purpose, I also tried and empty datastore-indexes.xml, but nothing

Even using Linux I get the same error

Same thing with Python

02:39 PM Application: my-gae-app
02:39 PM Host: appengine.google.com
02:39 PM Fetching index definitions diff.
Email: my-gae-email
Password for my-gae-email:
Error parsing yaml file:
Unexpected attribute 'application' for object of type IndexDefinitions.
  in "<string>", line 2, column 14:
    application: null
                 ^

As i can read, i'm not the only one experiencing this error

Already tried with older SDKs of Java, an new blank project and another GAE application, same problems so far

EDIT: I updated Python SDK to latest version (1.8.6, was 1.8.5), the error above is not shown anymore, but now i'm getting another error

Error 400: --- begin server output ---

Client Error (400)
The request is invalid for an unspecified reason.
--- end server output ---
4

3 回答 3

1

更新到最新的 SDK [1.8.6] 可能会解决此问题。我通过安装最新的 SDK 解决了 Python SDK 的问题。我遇到的问题是:

Error parsing yaml file:
Unexpected attribute 'application' for object of type IndexDefinitions.
  in "<string>", line 2, column 14:
    application: null
                 ^
于 2013-10-30T15:55:08.817 回答
0

您可能有两个选择:1. 等待下一个带有错误修复的 sdk,或 2. 打开此处指定的工单:https ://code.google.com/p/googleappengine/issues/detail?id=10168

于 2013-10-26T19:40:18.090 回答
0

对于 GAE/J,我使用以下形式的命令(不带驱动器说明符):

appcfg.cmd --email=[E-mail address] vacuum_indexes "\MyGaeProject\war"

没有问题(但我已经有一段时间没有使用它了)。显然,您可以省略该--email参数,但您可能想尝试不使用驱动器说明符(并引用war文件夹只是为了好玩)。

于 2013-10-24T09:35:28.807 回答