Skip to content

Commit 46c2c9c

Browse files
Terraform Team AutomationNagaRajuPasunuri
authored andcommitted
Bug Fix - Database Migration changed WF Retry logic
1 parent 34bd1dd commit 46c2c9c

File tree

5 files changed

+20
-14
lines changed

5 files changed

+20
-14
lines changed

examples/databasemigration/migration_oracle/migration_oracle.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,6 @@ provider "oci" {
111111
private_key_path = var.private_key_path
112112
auth = "SecurityToken"
113113
region = var.region
114-
115114
}
116115

117116

@@ -150,6 +149,7 @@ resource "oci_database_migration_connection" "test_connection_autonomous_target"
150149
username = "ggfe"
151150
replication_password="replicationPassword"
152151
replication_username="replicationUsername"
152+
subnet_id = var.subnet_id
153153
}
154154

155155
resource "oci_database_migration_connection" "test_connection_pdb_source" {

examples/databasemigration/migration_oracle/migration_oracle_rds.tf

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ resource "oci_database_migration_connection" "test_connection_rds_target" {
3535
username = "ggfe"
3636
replication_password="replicationPassword"
3737
replication_username="replicationUsername"
38+
subnet_id = var.subnet_id
3839
}
3940

4041
resource "oci_database_migration_migration" "test_oracle_rds_migration" {
@@ -58,8 +59,6 @@ resource "oci_database_migration_migration" "test_oracle_rds_migration" {
5859
job_mode = "SCHEMA"
5960
export_directory_object {
6061
name = "name"
61-
path = "/test/test/test/dumpdir"
62-
6362
}
6463
data_pump_parameters {
6564
estimate = "BLOCKS"

internal/integrationtest/database_migration_migration_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -90,8 +90,8 @@ var (
9090
"value": acctest.Representation{RepType: acctest.Required, Create: `True`, Update: `5000`},
9191
}
9292
DatabaseMigrationMigrationAdvisorSettingsRepresentation = map[string]interface{}{
93-
"is_ignore_errors": acctest.Representation{RepType: acctest.Optional, Create: `false`, Update: `true`},
94-
"is_skip_advisor": acctest.Representation{RepType: acctest.Optional, Create: `false`, Update: `true`},
93+
"is_ignore_errors": acctest.Representation{RepType: acctest.Optional, Update: `true`},
94+
"is_skip_advisor": acctest.Representation{RepType: acctest.Optional, Update: `true`},
9595
}
9696
DatabaseMigrationMigrationDataTransferMediumDetailsRepresentation = map[string]interface{}{
9797
"type": acctest.Representation{RepType: acctest.Required, Create: `OBJECT_STORAGE`, Update: `OBJECT_STORAGE`},

internal/service/database_migration/database_migration_connection_resource.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -399,10 +399,10 @@ func connectionWorkRequestShouldRetryFunc(timeout time.Duration) func(response o
399399
return true
400400
}
401401

402-
// Only stop if the time Finished is set
403-
/*if workRequestResponse, ok := response.Response.(oci_database_migration.GetWorkRequestResponse); ok {
404-
return workRequestResponse.TimeFinished == nil
405-
}*/
402+
// Only stop if status of work request response is succeeded
403+
if workRequestResponse, ok := response.Response.(oci_database_migration.GetWorkRequestResponse); ok {
404+
return workRequestResponse.Status != oci_database_migration.OperationStatusSucceeded
405+
}
406406
return false
407407
}
408408
}

internal/service/database_migration/database_migration_migration_resource.go

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1001,10 +1001,10 @@ func migrationWorkRequestShouldRetryFunc(timeout time.Duration) func(response oc
10011001
return true
10021002
}
10031003

1004-
// Only stop if the time Finished is set
1005-
/* if workRequestResponse, ok := response.Response.(oci_database_migration.GetWorkRequestResponse); ok {
1006-
return workRequestResponse.TimeFinished == nil
1007-
}*/
1004+
// Only stop if status of work request response is succeeded
1005+
if workRequestResponse, ok := response.Response.(oci_database_migration.GetWorkRequestResponse); ok {
1006+
return workRequestResponse.Status != oci_database_migration.OperationStatusSucceeded
1007+
}
10081008

10091009
return false
10101010
}
@@ -2829,10 +2829,13 @@ func MySqlAdvisorSettingsToMap(obj *oci_database_migration.MySqlAdvisorSettings)
28292829

28302830
if obj.IsIgnoreErrors != nil {
28312831
result["is_ignore_errors"] = bool(*obj.IsIgnoreErrors)
2832+
} else {
2833+
result["is_ignore_errors"] = false
28322834
}
2833-
28342835
if obj.IsSkipAdvisor != nil {
28352836
result["is_skip_advisor"] = bool(*obj.IsSkipAdvisor)
2837+
} else {
2838+
result["is_skip_advisor"] = false
28362839
}
28372840

28382841
return result
@@ -3098,10 +3101,14 @@ func OracleAdvisorSettingsToMap(obj *oci_database_migration.OracleAdvisorSetting
30983101

30993102
if obj.IsIgnoreErrors != nil {
31003103
result["is_ignore_errors"] = bool(*obj.IsIgnoreErrors)
3104+
} else {
3105+
result["is_ignore_errors"] = false
31013106
}
31023107

31033108
if obj.IsSkipAdvisor != nil {
31043109
result["is_skip_advisor"] = bool(*obj.IsSkipAdvisor)
3110+
} else {
3111+
result["is_skip_advisor"] = false
31053112
}
31063113

31073114
return result

0 commit comments

Comments
 (0)