Drop support for ScaleGrid Databases#894
Conversation
There was a problem hiding this comment.
Pull request overview
This PR removes deprecated ScaleGrid Database support by cleaning up structs, methods, and properties that are no longer supported in DBaaS V2. The changes focus on eliminating backup-related functionality (which is now handled via database forking) and removing deprecated configuration properties.
Changes:
- Removed deprecated backup methods for MySQL and PostgreSQL databases
- Removed deprecated struct properties related to replication, SSL, and encryption settings
- Removed deprecated backup-related struct definitions and paged response types
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| waitfor.go | Removed deprecated backup polling methods for MySQL and PostgreSQL |
| postgres.go | Removed backup-related structs, methods, and deprecated properties from PostgreSQL database types |
| paged_response_structs.go | Removed deprecated backup paged response type definitions |
| mysql.go | Removed backup-related structs, methods, and deprecated properties from MySQL database types |
| databases.go | Removed deprecated properties from common database structs |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| AllowList []string `json:"allow_list"` | ||
| InstanceURI string `json:"instance_uri"` | ||
| Created *time.Time `json:"-"` |
There was a problem hiding this comment.
The InstanceURI field was removed from the struct but is still present in the Database struct in databases.go (line 88). This creates inconsistency between the generic Database type and the MySQL-specific type, potentially causing issues if code relies on this field being present in MySQLDatabase.
There was a problem hiding this comment.
It is only meant to exist in the generic Managed Database endpoints. I think it never should have been included in the MySQL struct.
| // Deprecated: Encrypted is a deprecated property, as it is no longer supported in DBaaS V2. | ||
| Encrypted bool `json:"encrypted"` | ||
|
|
||
| SSLConnection bool `json:"ssl_connection"` |
There was a problem hiding this comment.
So SSLConnection and Encrypted were deprecated properties and now they aren't? Only ReplicationType is gone?
There was a problem hiding this comment.
Those properties were initially marked as deprecated because they were mistakenly omitted from the API Spec during the migration from DBaaS V1 to V2, but this was a mistake. The API is still returning these fields now.
| // Members has dynamic keys so it is a map | ||
| Members map[string]DatabaseMemberType `json:"members"` | ||
|
|
||
| // Deprecated: ReplicationType is a deprecated property, as it is no longer supported in DBaaS V2. |
There was a problem hiding this comment.
yec-akamai
left a comment
There was a problem hiding this comment.
LGTM. Tests passed locally
📝 Description
Removed deprecated structs and methods previously used for ScaleGrid Database support.
✔️ How to Test
make test-unitmake test-int