Open
Description
With the --promote flag to the deployment of Locate in App Engine, all the heartbeat services are briefly disconnected and must reset with the Locate server before the set of healthy servers are re-populated again. This takes a surprisingly long time.
Unfortunately, Flexible environment App Engine does not support automatic migration (as Standard environment does).
However, we should still be able to create a tool that performs a gradual migration using Traffic Splitting.
- https://cloud.google.com/appengine/docs/admin-api/migrating-splitting-traffic
- https://pkg.go.dev/google.golang.org/api@v0.109.0/appengine/v1#Service
It may also be possible to improve the shutdown / warmup mechanism for Locate to "hand off" from one version to the next more gracefully.