SyntaxHighlighter

2011年8月9日火曜日

GAE/J デプロイにて 409 conflict が出た場合の対処

本日のGAEの障害?(19時〜のやつ)のタイミングでデプロイしてまして、その時は結局デプロイできなかったので数時間経ってから再度デプロイを行いました。
すると、失敗した時の何かが残っていたのか
「Unable to update app:〜ほにゃらら〜409 Conflict」
と表示されました。
これの対処について備忘録もかねて記述しておきます

メッセージには
「Another transaction by user〜」
と出ており
「That user can undo the transaction with "appcfg rollback".」
てなメッセージが出ていました。

調べてみると、コマンドラインから上記コマンドを実行してやればよいようです


machine:~ hoge$ cd /Applications/eclipse/plugins/com.google.appengine.eclipse.sdkbundle_1.5.2.r36v201107221751/appengine-java-sdk-1.5.2/bin/
machine:bin hoge$ ls -al
total 32
drwxr-xr-x   6 hoge  hoge  204  8  2 07:27 .
drwxr-xr-x  14 hoge  hoge  476  8  2 07:27 ..
-rw-r--r--   1 hoge  hoge  276  7 22 15:02 appcfg.cmd
-rw-r--r--   1 hoge  hoge  582  7 22 15:02 appcfg.sh
-rw-r--r--   1 hoge  hoge  368  7 22 15:02 dev_appserver.cmd
-rw-r--r--   1 hoge  hoge  670  7 22 15:02 dev_appserver.sh

なんかそれっぽいのがいました。実行権限を付与して、実行してみる
machine:bin hoge$ ./appcfg.sh rollback /myproject/war/
Reading application configuration data...
2011/08/09 22:26:06 com.google.apphosting.utils.config.AppEngineWebXmlReader readAppEngineWebXml
####: Successfully processed /myproject/war/WEB-INF/appengine-web.xml
2011/08/09 22:26:06 com.google.apphosting.utils.config.AbstractConfigXmlReader readConfigXml
####: Successfully processed /myproject/war/WEB-INF/web.xml
2011/08/09 22:26:06 com.google.apphosting.utils.config.AbstractConfigXmlReader readConfigXml
####: Successfully processed /myproject/war/WEB-INF/cron.xml
2011/08/09 22:26:06 com.google.apphosting.utils.config.AbstractConfigXmlReader readConfigXml
####: Successfully processed /myproject/war/WEB-INF/queue.xml
2011/08/09 22:26:06 com.google.apphosting.utils.config.IndexesXmlReader readConfigXml
####: Successfully processed /myproject/war/WEB-INF/appengine-generated/datastore-indexes-auto.xml
Beginning server interaction for myproject...
0%  on backend null.
Email: *****@gmail.com
Password for *****@gmail.com: *****
Success.
Cleaning up temporary files...
machine:bin hoge$ 

EmailとPasswordはデプロイする権限のあるユーザを入力しました
この後、通常通りにデプロイすることでデプロイが完了しました

0 件のコメント:

コメントを投稿