Commit d71ca1c
committed
[ip-pools] Allow multiple default IP pools per silo
Previously, each silo could only have one default IP pool. This change
allows one default pool per (pool_type, ip_version) combination, enabling
silos to have separate defaults for:
- Unicast IPv4
- Unicast IPv6
- Multicast IPv4
- Multicast IPv6
This work previously branched off
#9451, but now off `main`,
involving changes that have to do with the mcast lifecycle changes.
Includes:
- Each default can now be set or unset and demoted independently.
Unsetting the unicast IPv4 default does not affect the multicast IPv4
default, for example.
- Add `pool_type` and `ip_version` columns to `ip_pool_resource`
(denormalized from parent `ip_pool` for unique index)
- Replace unique index with partial index on (resource_id, pool_type,
ip_version) WHERE is_default = true
- Rename `IpPoolResourceLink` to `IncompleteIpPoolResource` to reflect
that pool_type/ip_version are actually populated by the linking query
- Add `ip_version` field to API params for default pool disambiguation
- API versioning for backwards compatibility with older clients1 parent e00aaba commit d71ca1c
File tree
37 files changed
+32552
-420
lines changed- end-to-end-tests/src
- nexus
- db-model/src
- db-queries
- src/db
- datastore
- multicast
- pub_test_utils
- queries
- tests/output
- db-schema/src
- external-api/src
- src
- app
- multicast
- sagas
- external_api
- test-utils/src
- tests/integration_tests
- multicast
- types/src/external_api
- openapi/nexus
- schema/crdb
- multiple-default-ip-pools-per-silo
37 files changed
+32552
-420
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
71 | 71 | | |
72 | 72 | | |
73 | 73 | | |
74 | | - | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
75 | 78 | | |
76 | 79 | | |
77 | 80 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
91 | 91 | | |
92 | 92 | | |
93 | 93 | | |
| 94 | + | |
94 | 95 | | |
95 | 96 | | |
96 | 97 | | |
| |||
289 | 290 | | |
290 | 291 | | |
291 | 292 | | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
292 | 297 | | |
293 | 298 | | |
294 | 299 | | |
295 | 300 | | |
296 | 301 | | |
297 | 302 | | |
298 | 303 | | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
299 | 319 | | |
300 | 320 | | |
301 | 321 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
19 | | - | |
| 19 | + | |
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| |||
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
| 31 | + | |
31 | 32 | | |
32 | 33 | | |
33 | 34 | | |
| |||
0 commit comments