読者です 読者をやめる 読者になる 読者になる

戦場のプログラマー

名前は誰も知らない。

A conflicting conditional operation is currently in progress against this resource.

AWS PHP Amazon S3

以前間違ってオレゴン州に作成してしまったバケットを削除して、AWS API経由で同じ名前で東京リージョンに新たにバケットを作成しようとしたらエラーになって怒られました。

PHP Fatal error:  Uncaught Aws\S3\Exception\OperationAbortedException: AWS Error Code: OperationAborted, Status Code: 409, AWS Request ID: XXXXXXXXXXXXXXXX, AWS Error Type: client, AWS Error Message: A conflicting conditional operation is currently in progress against this resource. Please try again., User-Agent: aws-sdk-php2/2.4.11 Guzzle/3.7.4 curl/7.19.7 PHP/5.3.3
  thrown in /vagrant/src/s3/vendor/aws/aws-sdk-php/src/Aws/Common/Exception/Name

イマイチよくわからなくていろいろ調べたところ

というエントリがひっかかりました。
どうもすぐにバケットを作りなおそうとしたのが原因ぽいです。
削除のオペレーションをやってもすぐにはバックエンドのトランザクションは完了されないみたいで、数時間置いてからもう一回やり直してくれとのことでした。

なのでその日は寝て、次の日にやったらうまくできました。