From 1ffd4814599da412e7e6acd21190f20f191b83c4 Mon Sep 17 00:00:00 2001 From: Andrei Aaron Date: Fri, 24 Jan 2025 19:48:40 +0000 Subject: [PATCH] fix(dynamodb): properly handle ResourceInUseException for existing tables Signed-off-by: Andrei Aaron --- pkg/meta/dynamodb/dynamodb.go | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/pkg/meta/dynamodb/dynamodb.go b/pkg/meta/dynamodb/dynamodb.go index 7d97ef056..73aa35fa3 100644 --- a/pkg/meta/dynamodb/dynamodb.go +++ b/pkg/meta/dynamodb/dynamodb.go @@ -2132,9 +2132,11 @@ func (dwr *DynamoDB) createTable(tableName string) error { }, BillingMode: types.BillingModePayPerRequest, }) - - if err != nil && !strings.Contains(err.Error(), "Table already exists") { - return err + if err != nil { + inUseException := new(types.ResourceInUseException) + if !errors.As(err, &inUseException) { + return err + } } return dwr.waitTableToBeCreated(tableName) @@ -2190,7 +2192,8 @@ func (dwr *DynamoDB) createVersionTable() error { BillingMode: types.BillingModePayPerRequest, }) if err != nil { - if strings.Contains(err.Error(), "Table already exists") { + inUseException := new(types.ResourceInUseException) + if errors.As(err, &inUseException) { return nil }