canonical / canonical/spread

Discard fails on transient DNS errors

Open
#177 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
127
Forks
81
PR merge metrics
No merged PRs in 30d

Description

```
2024-02-05 18:38:35 Error discarding google:ubuntu-22.04-64 (feb051803-772047): cannot deallocate Google server google:ubuntu-22.04-64 (feb051803-772047): cannot perform Google request: Delete "https://www.googleapis.com/compute/v1/projects/snapd-spread/zones/us-east1-b/instances/feb051803-772047": proxyconnect tcp: dial tcp: lookup squid.internal: Temporary failure in name resolution
```

This should probably retry before failing and should also ensure the rest of the machines are properly deallocated if possible.

[charmcraft-spread.log](https://github.com/snapcore/spread/files/14170713/charmcraft-spread.log)

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with charmcraft-spread.log and trace the discard/deallocation path for Google Compute Engine machines, focusing on the request that fails during transient DNS resolution. Reproduce or test the failure, then verify that retries occur and that remaining machines are still deallocated when one discard fails.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, google-cloud
Domain
cloud, distributed-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.