From 2def804bdbe61bbe89e3d5f7a02b7b58b653ab72 Mon Sep 17 00:00:00 2001 From: Louis Ruch Date: Wed, 23 Jun 2021 10:21:22 -0700 Subject: [PATCH] Update unique error (#1344) --- .../credential/vault/repository_credential_store.go | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/internal/credential/vault/repository_credential_store.go b/internal/credential/vault/repository_credential_store.go index 4540c7f3e6..7e18f9be47 100644 --- a/internal/credential/vault/repository_credential_store.go +++ b/internal/credential/vault/repository_credential_store.go @@ -547,6 +547,10 @@ func (r *Repository) UpdateCredentialStore(ctx context.Context, cs *CredentialSt default: rowsUpdated, err = w.Update(ctx, cs, filteredDbMask, filteredNullFields, db.NewOplogMsg(&csOplogMsg), db.WithVersion(&version)) if err != nil { + if errors.IsUniqueError(err) { + return errors.New(errors.NotUnique, op, + fmt.Sprintf("name %s already exists: %s", cs.Name, cs.PublicId)) + } return errors.Wrap(err, op, errors.WithMsg("unable to update credential store")) } switch rowsUpdated { @@ -591,6 +595,10 @@ func (r *Repository) UpdateCredentialStore(ctx context.Context, cs *CredentialSt query, values := token.insertQuery() rows, err := w.Exec(ctx, query, values) if err != nil { + if errors.IsUniqueError(err) { + return errors.New(errors.NotUnique, op, + fmt.Sprintf("token already exists")) + } return errors.Wrap(err, op) } if rows > 1 { @@ -616,10 +624,6 @@ func (r *Repository) UpdateCredentialStore(ctx context.Context, cs *CredentialSt ) if err != nil { - if errors.IsUniqueError(err) { - return nil, db.NoRowsAffected, errors.New(errors.NotUnique, op, - fmt.Sprintf("name %s already exists: %s", cs.Name, cs.PublicId)) - } return nil, db.NoRowsAffected, err }