Thoughts on multi-region support #681
Replies: 2 comments 10 replies
|
@jayjanssen thanks for bring this and the POC. On the framing: we rarely give a "hard no" on anything unless it doesn't make sense to add or moves us further away from AWS. Multi-region is the opposite of that, so this was always going to be a yes in principle. MAin reason we didn't add it yet, was nobody actually raised it The direction looks good...The ARN parser and persistence scoping should probably land before service work since every later PR will depend on them I also agree this needs to be split up. 4k lines across 9 services is too much for a clean review. I'd probably do it in stages (same PR but just split it): ARN parser first, then persistence + region scoping then then the remaining services as one bundle MINISTACK_MULTI_REGION=1 is good as a transition, but I think we should aim to a default-on milestone at some point (once this is finished), otherwise the flag becomes permanent and people will keep getting region-flat behavior without realizing it The other thing to be careful about is the inconsistency window. With only a subset of services region-aware, tests can silently fall back to flat behavior depending on what they touch. Personally I'd rather fail fast there than allow silent inconsistencies Last thing: the agent-generated parts should be verified against botocore models and AWS docs, especially Aurora Global Clusters since the behavior there is a bit subtle if you raise a PR I do have a local process for that so I will review it at the moment the PR lands If the order sounds reasonable, opening the ARN parser PR first is probably the cleanest next step, feel free to raise any concern we are open to options |
|
@Nahuel990 Now that 1.4.0 is out, how to you want me to proceed? I noticed that you closed the two multi-region PRs that I had open. Should I re-open them against |
Uh oh!
There was an error while loading. Please reload this page.
I'm using MiniStack to back local acceptance tests for an Aurora provisioner that supports multi-region global clusters. Today MiniStack flattens all requests into a single region, so I can't acceptance test outside of single-region clusters. This removes some of the advantage of using MiniStack, since we have a lot of still very slow real AWS tests to run for our multi-region stuff.
Myself and a colleague have been thinking about this and have an experimental multi-region patch for MiniStack that passes our acceptance tests and gives a general shape of what would be needed to support multi-region, though obviously this is only the services we have concerns with. One thought to avoid backward compatibility issues was to harness this up to wire up an opt-in (
MULTISTACK_MULTI_REGION=1) gate, though it's not particularly pretty.We're just trying to determine what our next step is here and wanted get your thoughts first @Nahuel990. Totally understand if it's a hard "no", but felt it was worth asking and not assuming.
All reactions