fly-apps / fly-apps/redis-geo-cache
Region boot order
- Dominant language
- Shell
- Stars
- 86
- Forks
- 9
- PR merge metrics
- No merged PRs in 30d
Description
@mrkurt, thank you for this. The dig of the ipv6 address is a neat trick.
Although, I believe there is an issue with this approach - Fly provides no assurance that the primary boots before other regions.
My tests indicate, that often times, the replica regions boot on a deploy, prior to the primary, resulting in a broken replica address in the redis conf, once the primary finishes booting and replaces the previous instance. If the replica boots before the primary, the dig query returns the address of the previous primary instance, which will no longer exist once the new primary finishes booting.
Unless I am mistaken, this system fails to take into account of boot order of regions. This model only works if you deploy once, to one region and then scale to additional regions. Redeploying has the potential of breaking replication of data.
Contributor guide
No contributing guide indexed for this repository
Research direction
No files, tests, or entry points are identified. Start by reproducing a multi-region deploy where a replica boots before the primary and inspect how the Redis replica address is generated and persisted; done means replication remains valid after redeployments regardless of region boot order.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- redis, shell
- Domain
- databases, distributed-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100