mirror of
https://github.com/letic/terraform-provider-google.git
synced 2024-10-01 16:21:06 +00:00
add retries for all calls in sql database resource
This commit is contained in:
parent
9a1ca01f6a
commit
a68485ec5e
@ -86,8 +86,12 @@ func resourceSqlDatabaseCreate(d *schema.ResourceData, meta interface{}) error {
|
||||
|
||||
mutexKV.Lock(instanceMutexKey(project, instance_name))
|
||||
defer mutexKV.Unlock(instanceMutexKey(project, instance_name))
|
||||
op, err := config.clientSqlAdmin.Databases.Insert(project, instance_name,
|
||||
db).Do()
|
||||
|
||||
var op *sqladmin.Operation
|
||||
err = retryTime(func() error {
|
||||
op, err = config.clientSqlAdmin.Databases.Insert(project, instance_name, db).Do()
|
||||
return err
|
||||
}, 5 /* minutes */)
|
||||
|
||||
if err != nil {
|
||||
return fmt.Errorf("Error, failed to insert "+
|
||||
@ -123,8 +127,11 @@ func resourceSqlDatabaseRead(d *schema.ResourceData, meta interface{}) error {
|
||||
instance_name := s[0]
|
||||
database_name := s[1]
|
||||
|
||||
db, err := config.clientSqlAdmin.Databases.Get(project, instance_name,
|
||||
database_name).Do()
|
||||
var db *sqladmin.Database
|
||||
err = retryTime(func() error {
|
||||
db, err = config.clientSqlAdmin.Databases.Get(project, instance_name, database_name).Do()
|
||||
return err
|
||||
}, 5 /* minutes */)
|
||||
|
||||
if err != nil {
|
||||
return handleNotFoundError(err, d, fmt.Sprintf("SQL Database %q in instance %q", database_name, instance_name))
|
||||
@ -161,8 +168,12 @@ func resourceSqlDatabaseUpdate(d *schema.ResourceData, meta interface{}) error {
|
||||
|
||||
mutexKV.Lock(instanceMutexKey(project, instance_name))
|
||||
defer mutexKV.Unlock(instanceMutexKey(project, instance_name))
|
||||
op, err := config.clientSqlAdmin.Databases.Update(project, instance_name, database_name,
|
||||
db).Do()
|
||||
|
||||
var op *sqladmin.Operation
|
||||
err = retryTime(func() error {
|
||||
op, err = config.clientSqlAdmin.Databases.Update(project, instance_name, database_name, db).Do()
|
||||
return err
|
||||
}, 5 /* minutes */)
|
||||
|
||||
if err != nil {
|
||||
return fmt.Errorf("Error, failed to update "+
|
||||
@ -193,8 +204,12 @@ func resourceSqlDatabaseDelete(d *schema.ResourceData, meta interface{}) error {
|
||||
|
||||
mutexKV.Lock(instanceMutexKey(project, instance_name))
|
||||
defer mutexKV.Unlock(instanceMutexKey(project, instance_name))
|
||||
op, err := config.clientSqlAdmin.Databases.Delete(project, instance_name,
|
||||
database_name).Do()
|
||||
|
||||
var op *sqladmin.Operation
|
||||
err = retryTime(func() error {
|
||||
op, err = config.clientSqlAdmin.Databases.Delete(project, instance_name, database_name).Do()
|
||||
return err
|
||||
}, 5 /* minutes */)
|
||||
|
||||
if err != nil {
|
||||
return fmt.Errorf("Error, failed to delete"+
|
||||
|
Loading…
Reference in New Issue
Block a user