diff --git a/api/v1beta2/foundationdb_status.go b/api/v1beta2/foundationdb_status.go index d57b7fd64..e1e0ab898 100644 --- a/api/v1beta2/foundationdb_status.go +++ b/api/v1beta2/foundationdb_status.go @@ -219,7 +219,7 @@ type FoundationDBStatusProcessMessage struct { // roles. type FoundationDBStatusProcessRoleInfo struct { // Role defines the role a process currently has - Role string `json:"role,omitempty"` + Role ProcessRole `json:"role,omitempty"` // StoredBytes defines the number of bytes that are currently stored for this process. StoredBytes int `json:"stored_bytes,omitempty"` // ID represent the role ID. @@ -275,7 +275,7 @@ type FoundationDBStatusGRVStatistics struct { // the database type FoundationDBStatusDataStatistics struct { // KVBytes provides the total Key Value Bytes in the database. - KVBytes int `json:"total_kv_size_bytes,omitempty"` + KVBytes int64 `json:"total_kv_size_bytes,omitempty"` // MovingData provides information about the current data movement. MovingData FoundationDBStatusMovingData `json:"moving_data,omitempty"` diff --git a/api/v1beta2/foundationdb_status_test.go b/api/v1beta2/foundationdb_status_test.go index 0520ca48a..c59f759d6 100644 --- a/api/v1beta2/foundationdb_status_test.go +++ b/api/v1beta2/foundationdb_status_test.go @@ -75,9 +75,9 @@ var _ = Describe("FoundationDBStatus", func() { Version: "7.1.0-rc1", UptimeSeconds: 85.0026, Roles: []FoundationDBStatusProcessRoleInfo{ - {Role: string(ProcessRoleCoordinator)}, + {Role: ProcessRoleCoordinator}, { - Role: string(ProcessRoleGrvProxy), + Role: ProcessRoleGrvProxy, ID: "0de7f5c5e549cad1", GRVLatencyStatistics: FoundationDBStatusGRVStatistics{ Batch: FoundationDBStatusPerfStatistics{Count: pointer.Int(6), Median: pointer.Float64(0.000531435), P99: pointer.Float64(0.00130677)}, @@ -85,7 +85,7 @@ var _ = Describe("FoundationDBStatus", func() { }, }, { - Role: string(ProcessRoleStorage), + Role: ProcessRoleStorage, ID: "9941616400759d37", DataLag: FoundationDBStatusLagInfo{ Seconds: 0.19625800000000002, @@ -117,9 +117,9 @@ var _ = Describe("FoundationDBStatus", func() { Version: "7.1.0-rc1", UptimeSeconds: 85.0031, Roles: []FoundationDBStatusProcessRoleInfo{ - {Role: string(ProcessRoleCoordinator)}, + {Role: ProcessRoleCoordinator}, { - Role: string(ProcessClassStorage), + Role: ProcessRoleStorage, ID: "389c23d59a646e52", DataLag: FoundationDBStatusLagInfo{Seconds: 2.1227, Versions: 2122697}, KVStoreUsedBytes: pointer.Int64(104878232), @@ -129,7 +129,7 @@ var _ = Describe("FoundationDBStatus", func() { ReadLatencyStatistics: FoundationDBStatusPerfStatistics{Count: pointer.Int(334), Median: pointer.Float64(0.000102282), P99: pointer.Float64(0.000386477)}, }, { - Role: string(ProcessRoleResolver), + Role: ProcessRoleResolver, ID: "dfd679875a386d06", }, }, @@ -152,9 +152,9 @@ var _ = Describe("FoundationDBStatus", func() { Version: "7.1.0-rc1", UptimeSeconds: 85.0029, Roles: []FoundationDBStatusProcessRoleInfo{ - {Role: string(ProcessRoleCoordinator)}, + {Role: ProcessRoleCoordinator}, { - Role: string(ProcessRoleCommitProxy), + Role: ProcessRoleCommitProxy, ID: "0eb90e4a0ece85b3", CommitLatencyStatistics: FoundationDBStatusPerfStatistics{ Count: pointer.Int(31), @@ -163,7 +163,7 @@ var _ = Describe("FoundationDBStatus", func() { }, }, { - Role: string(ProcessRoleStorage), + Role: ProcessRoleStorage, ID: "b5e42e100018bf11", DataLag: FoundationDBStatusLagInfo{ Seconds: 0.19625800000000002, @@ -196,15 +196,15 @@ var _ = Describe("FoundationDBStatus", func() { UptimeSeconds: 85.0027, Roles: []FoundationDBStatusProcessRoleInfo{ { - Role: string(ProcessRoleMaster), + Role: ProcessRoleMaster, ID: "b05dfb13cf568dfd", }, { - Role: string(ProcessRoleDataDistributor), + Role: ProcessRoleDataDistributor, ID: "cfdd8010b58eda01", }, { - Role: string(ProcessRoleRatekeeper), + Role: ProcessRoleRatekeeper, ID: "cbeb915c6cceb4a9", }, }, @@ -228,7 +228,7 @@ var _ = Describe("FoundationDBStatus", func() { UptimeSeconds: 85.0029, Roles: []FoundationDBStatusProcessRoleInfo{ { - Role: string(ProcessClassClusterController), + Role: ProcessRoleClusterController, ID: "1f953018ad2e746f", }, }, @@ -252,7 +252,7 @@ var _ = Describe("FoundationDBStatus", func() { UptimeSeconds: 85.0029, Roles: []FoundationDBStatusProcessRoleInfo{ { - Role: string(ProcessRoleLog), + Role: ProcessRoleLog, ID: "2c66a861b33b2697", KVStoreUsedBytes: pointer.Int64(104861752), KVStoreTotalBytes: pointer.Int64(135012552704), @@ -280,7 +280,7 @@ var _ = Describe("FoundationDBStatus", func() { UptimeSeconds: 85.003, Roles: []FoundationDBStatusProcessRoleInfo{ { - Role: string(ProcessRoleLog), + Role: ProcessRoleLog, ID: "56cf105980ec2b07", KVStoreUsedBytes: pointer.Int64(104861752), KVStoreTotalBytes: pointer.Int64(135012552704), @@ -308,7 +308,7 @@ var _ = Describe("FoundationDBStatus", func() { UptimeSeconds: 85.0027, Roles: []FoundationDBStatusProcessRoleInfo{ { - Role: string(ProcessRoleLog), + Role: ProcessRoleLog, ID: "31754d1d7d8d6f05", KVStoreUsedBytes: pointer.Int64(104861752), KVStoreTotalBytes: pointer.Int64(135012552704), diff --git a/controllers/bounce_processes_test.go b/controllers/bounce_processes_test.go index 3eadd64ab..e70b73393 100644 --- a/controllers/bounce_processes_test.go +++ b/controllers/bounce_processes_test.go @@ -729,7 +729,7 @@ var _ = Describe("bounceProcesses", func() { Address: fdbv1beta2.ProcessAddress{StringAddress: "192.168.0.2:4500:tls"}, Roles: []fdbv1beta2.FoundationDBStatusProcessRoleInfo{ { - Role: string(fdbv1beta2.ProcessRoleClusterController), + Role: fdbv1beta2.ProcessRoleClusterController, }, }, UptimeSeconds: 61.0, @@ -829,7 +829,7 @@ var _ = Describe("bounceProcesses", func() { Address: fdbv1beta2.ProcessAddress{StringAddress: "192.168.0.2:4500:tls"}, Roles: []fdbv1beta2.FoundationDBStatusProcessRoleInfo{ { - Role: string(fdbv1beta2.ProcessRoleClusterController), + Role: fdbv1beta2.ProcessRoleClusterController, }, }, }, @@ -875,7 +875,7 @@ var _ = Describe("bounceProcesses", func() { Address: fdbv1beta2.ProcessAddress{StringAddress: "192.168.0.2:4500:tls"}, Roles: []fdbv1beta2.FoundationDBStatusProcessRoleInfo{ { - Role: string(fdbv1beta2.ProcessRoleClusterController), + Role: fdbv1beta2.ProcessRoleClusterController, }, }, }, diff --git a/e2e/fixtures/status.go b/e2e/fixtures/status.go index 1e6eb8016..1e66970f2 100644 --- a/e2e/fixtures/status.go +++ b/e2e/fixtures/status.go @@ -312,7 +312,7 @@ func (fdbCluster *FdbCluster) GetProcessCount(targetRole fdbv1beta2.ProcessRole) for _, process := range status.Cluster.Processes { for _, role := range process.Roles { - if role.Role == string(targetRole) { + if role.Role == targetRole { pCounter++ } } @@ -384,7 +384,7 @@ func (fdbCluster FdbCluster) GetStatus() *fdbv1beta2.FoundationDBStatus { // RoleInfo stores information for one particular worker role. type RoleInfo struct { - Role string + Role fdbv1beta2.ProcessRole ID string } @@ -412,9 +412,9 @@ func (fdbCluster *FdbCluster) GetPodsWithRole(role fdbv1beta2.ProcessRole) []cor var matches []corev1.Pod for _, p := range pods.Items { roles := roleMap[GetProcessGroupID(p)] - rolesAdded := map[string]fdbv1beta2.None{} + rolesAdded := map[fdbv1beta2.ProcessRole]fdbv1beta2.None{} for _, r := range roles { - if r.Role == string(role) { + if r.Role == role { _, ok := rolesAdded[r.Role] if !ok { rolesAdded[r.Role] = fdbv1beta2.None{} diff --git a/pkg/fdbadminclient/mock/admin_client_mock.go b/pkg/fdbadminclient/mock/admin_client_mock.go index 3e478d5ee..464a4abaf 100644 --- a/pkg/fdbadminclient/mock/admin_client_mock.go +++ b/pkg/fdbadminclient/mock/admin_client_mock.go @@ -277,7 +277,7 @@ func (client *AdminClient) GetStatus() (*fdbv1beta2.FoundationDBStatus, error) { _, isCoordinator := coordinators[fullAddress.String()] if isCoordinator && !excluded && !underMaintenance { coordinators[fullAddress.String()] = true - fdbRoles = append(fdbRoles, fdbv1beta2.FoundationDBStatusProcessRoleInfo{Role: string(fdbv1beta2.ProcessRoleCoordinator)}) + fdbRoles = append(fdbRoles, fdbv1beta2.FoundationDBStatusProcessRoleInfo{Role: fdbv1beta2.ProcessRoleCoordinator}) } version, ok := client.VersionProcessGroups[processGroupID] diff --git a/pkg/fdbstatus/status_checks.go b/pkg/fdbstatus/status_checks.go index 26a61e054..8f3786112 100644 --- a/pkg/fdbstatus/status_checks.go +++ b/pkg/fdbstatus/status_checks.go @@ -267,7 +267,7 @@ func GetCoordinatorsFromStatus(status *fdbv1beta2.FoundationDBStatus) map[string for _, pInfo := range status.Cluster.Processes { for _, roleInfo := range pInfo.Roles { - if roleInfo.Role != string(fdbv1beta2.ProcessRoleCoordinator) { + if roleInfo.Role != fdbv1beta2.ProcessRoleCoordinator { continue } diff --git a/pkg/fdbstatus/status_checks_test.go b/pkg/fdbstatus/status_checks_test.go index 57a6c07f8..b03a4d47c 100644 --- a/pkg/fdbstatus/status_checks_test.go +++ b/pkg/fdbstatus/status_checks_test.go @@ -207,7 +207,7 @@ var _ = Describe("status_checks", func() { Excluded: true, Roles: []fdbv1beta2.FoundationDBStatusProcessRoleInfo{ { - Role: string(fdbv1beta2.ProcessRoleStorage), + Role: fdbv1beta2.ProcessRoleStorage, }, }, Locality: map[string]string{ @@ -287,7 +287,7 @@ var _ = Describe("status_checks", func() { Excluded: false, Roles: []fdbv1beta2.FoundationDBStatusProcessRoleInfo{ { - Role: string(fdbv1beta2.ProcessRoleStorage), + Role: fdbv1beta2.ProcessRoleStorage, }, }, },