vitessio / vitess

Vitess is a database clustering system for horizontal scaling of MySQL.
http://vitess.io
Apache License 2.0
18.4k stars 2.08k forks source link

Switch S3 backups to aws-sdk-go-v2 #14712

Open rbranson opened 9 months ago

rbranson commented 9 months ago

Feature Description

This isn't as much a feature as an internal improvement. The aws-sdk-go-v2 is a newer iteration of the design of the AWS SDK for Go.

Use Case(s)

aws-sdk-go-v2 improves upon a number of deficiencies in aws-sdk-go. This has tangible improvements -- for instance, it properly retries a much wider range of request errors (for example: SlowDown from S3, connection resets from KMS). This will reduce the number of spurious backup failures within Vitess. The API change is relatively straightforward and PlanetScale has found that it is has been drop-in compatible from a performance and functionality perspective for its internal backup storage implementation.

frouioui commented 1 month ago

Assigning this to me, I will be taking this up between now and before the v21.0.0 code freeze.