hudi-bot opened a new issue, #14968:
URL: https://github.com/apache/hudi/issues/14968

   How reproduce:
    # Set up multiple writing 
[https://hudi.apache.org/docs/concurrency_control/] for dynamodb (do not forget 
to set _hoodie.write.lock.dynamodb.region_ and 
   {_}hoodie.write.lock.dynamodb.billing_mode{_}). Do not create anty dynamodb 
table.
    # Run multiple writers to the table
   
   (Tested on aws EMR, so multiple writers is EMR steps)
   
   Expected result - all steps completed.
   
   Actual result: some steps failed with exception 
   {code:java}
   Caused by: com.amazonaws.services.dynamodbv2.model.ResourceInUseException: 
Table already exists: truedata_detections (Service: AmazonDynamoDBv2; Status 
Code: 400; Error Code: ResourceInUseException; Request ID:; Proxy: null)
        at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.handleErrorResponse(AmazonHttpClient.java:1819)
        at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.handleServiceErrorResponse(AmazonHttpClient.java:1403)
        at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeOneRequest(AmazonHttpClient.java:1372)
        at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeHelper(AmazonHttpClient.java:1145)
        at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.doExecute(AmazonHttpClient.java:802)
        at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeWithTimer(AmazonHttpClient.java:770)
        at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.execute(AmazonHttpClient.java:744)
        at 
com.amazonaws.http.AmazonHttpClient$RequestExecutor.access$500(AmazonHttpClient.java:704)
        at 
com.amazonaws.http.AmazonHttpClient$RequestExecutionBuilderImpl.execute(AmazonHttpClient.java:686)
        at 
com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:550)
        at 
com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:530)
        at 
com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.doInvoke(AmazonDynamoDBClient.java:6214)
        at 
com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.invoke(AmazonDynamoDBClient.java:6181)
        at 
com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.executeCreateTable(AmazonDynamoDBClient.java:1160)
        at 
com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient.createTable(AmazonDynamoDBClient.java:1124)
        at 
org.apache.hudi.aws.transaction.lock.DynamoDBBasedLockProvider.createLockTableInDynamoDB(DynamoDBBasedLockProvider.java:188)
        at 
org.apache.hudi.aws.transaction.lock.DynamoDBBasedLockProvider.<init>(DynamoDBBasedLockProvider.java:99)
        at 
org.apache.hudi.aws.transaction.lock.DynamoDBBasedLockProvider.<init>(DynamoDBBasedLockProvider.java:77)
        ... 54 more
   21/12/19 13:42:06 INFO Yar {code}
   This happens because all steps tried to create table at the same time.
   
    
   
   Suggested solution:
   
   A catch statment for _Table already exists_ exception should be added into 
dynamodb table creation code. May be with delay and additional check that table 
is present.
   
   ## JIRA info
   
   - Link: https://issues.apache.org/jira/browse/HUDI-3067
   - Type: Bug
   - Fix version(s):
     - 1.1.0
   
   
   ---
   
   
   ## Comments
   
   30/Jan/22 19:32;shivnarayan;[~wenningd] : Can you please follow up on this. 
;;;


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to