Commit 2987a6e
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
Now, each default can be set or unset and demoted independently.
Unsetting the unicast IPv4 default does not affect the multicast IPv4
default, for example.
Key changes:
- 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 populated by the linking query1 parent 68a0df3 commit 2987a6e
File tree
17 files changed
+876
-107
lines changed- nexus
- db-model/src
- db-queries
- src/db
- datastore
- multicast
- pub_test_utils
- queries
- tests/output
- db-schema/src
- external-api/src
- src/app
- types/src/external_api
- openapi
- schema/crdb
- multiple-default-ip-pools-per-silo
17 files changed
+876
-107
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
289 | 289 | | |
290 | 290 | | |
291 | 291 | | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
292 | 296 | | |
293 | 297 | | |
294 | 298 | | |
295 | 299 | | |
296 | 300 | | |
297 | 301 | | |
298 | 302 | | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
299 | 318 | | |
300 | 319 | | |
301 | 320 | | |
| |||
| 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