1. ホーム
  2. java

[解決済み] AWSのエラーメッセージです。このリソースに対して、現在、競合する条件付き操作が進行中です。

2022-04-13 04:22:27

質問

このエラーが断続的に発生するのですが。

私は、java aws sdkを使用し、s3に何万もの小さなファイルをロードするプログラムを持っています。このエラーを断続的に見ます。

ネットで検索しても参考になる回答が見つかりませんでした。

呼び出し側のプログラムはシングルスレッドであることに注意してください。基礎となるaws java sdkはワーカスレッドを使用しているようです。

Status Code: 409, AWS Service: Amazon S3, AWS Request ID: 75E16E8DE2193CA6, AWS Error Code: OperationAborted, AWS Error Message: A conflicting conditional operation is currently in progress against this resource. Please try again., S3 Extended Request ID: 0uquw2YEoFamLldm+c/p412Lzd8jHJGFBDz3h7wN+/4I0f6hnGLkPMe+5LZazKnZ
    at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:552)
    at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:289)
    at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:170)
    at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:2648)
    at com.amazonaws.services.s3.AmazonS3Client.createBucket(AmazonS3Client.java:578)
    at com.amazonaws.services.s3.AmazonS3Client.createBucket(AmazonS3Client.java:503)

解決方法は?

以下の操作を行ったところ、同じエラーメッセージが表示されました。

  1. バケットを作成 - デフォルトでUSリージョンに移動(AWSCLIを使用)

  2. バケットをEUリージョンに移動することに気づき、削除(AWSコンソールを使用)。

  3. (数分後)EUリージョンを指定してバケットを作成しようとしたところ

ステップ3の時点で、AWSコンソールにご質問のタイトルにあるエラーメッセージが表示されました。

ということは、USのバケットが削除されたのだと思いますが、同期処理に時間がかかっている可能性があります。数時間後に、今度は正しいリージョン(EU)で作成可能なバケット名を見つけることができればと思います。

FIX :- 編集: 約1時間後、バケット(EUリージョン)を作成する試みが成功しました。