Commit 472195e
[controller][common][protocol] Add store-level ULE config for RT topics
Add uncleanLeaderElectionEnabledForRTTopics as a store-level config using
the tri-state pattern (NOT_SPECIFIED/ENABLED/DISABLED). When NOT_SPECIFIED,
falls back to the cluster-level config. This enables per-store tracking of
ULE settings and preserves the setting during store migration.
Changes:
- New Avro schema versions (StoreMetaValue v41, AdminOperation v96)
- Store interface/impl (Store, ZKStore, ReadOnlyStore, SystemStore, StoreInfo)
- UpdateStoreQueryParams with migration constructor support
- Controller logic (VeniceParentHelixAdmin, AdminExecutionTask,
VeniceHelixAdmin)
- RealTimeTopicSwitcher store-level override with cluster-level fallback
- resolveUncleanLeaderElection helper for store-then-cluster resolution
- Tests for override, fallback, and resolution logic
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>1 parent 2f0d39c commit 472195e
19 files changed
Lines changed: 2003 additions & 7 deletions
File tree
- internal/venice-common/src/main
- java/com/linkedin/venice
- controllerapi
- meta
- serialization/avro
- resources/avro/StoreMetaValue/v41
- services/venice-controller/src
- main
- java/com/linkedin/venice
- controller
- kafka/consumer
- ingestion/control
- resources/avro/AdminOperation/v96
- test/java/com/linkedin/venice
- controller
- kafka
- consumer
- protocol/admin
- ingestion/control
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
327 | 327 | | |
328 | 328 | | |
329 | 329 | | |
330 | | - | |
331 | | - | |
| 330 | + | |
| 331 | + | |
332 | 332 | | |
333 | 333 | | |
334 | 334 | | |
| |||
internal/venice-common/src/main/java/com/linkedin/venice/controllerapi/ControllerApiConstants.java
Lines changed: 2 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
268 | 268 | | |
269 | 269 | | |
270 | 270 | | |
| 271 | + | |
| 272 | + | |
271 | 273 | | |
272 | 274 | | |
273 | 275 | | |
| |||
internal/venice-common/src/main/java/com/linkedin/venice/controllerapi/UpdateStoreQueryParams.java
Lines changed: 11 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
78 | 78 | | |
79 | 79 | | |
80 | 80 | | |
| 81 | + | |
81 | 82 | | |
82 | 83 | | |
83 | 84 | | |
| |||
162 | 163 | | |
163 | 164 | | |
164 | 165 | | |
| 166 | + | |
| 167 | + | |
165 | 168 | | |
166 | 169 | | |
167 | 170 | | |
| |||
814 | 817 | | |
815 | 818 | | |
816 | 819 | | |
| 820 | + | |
| 821 | + | |
| 822 | + | |
| 823 | + | |
| 824 | + | |
| 825 | + | |
| 826 | + | |
| 827 | + | |
817 | 828 | | |
818 | 829 | | |
819 | 830 | | |
| |||
Lines changed: 10 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1650 | 1650 | | |
1651 | 1651 | | |
1652 | 1652 | | |
| 1653 | + | |
| 1654 | + | |
| 1655 | + | |
| 1656 | + | |
| 1657 | + | |
| 1658 | + | |
| 1659 | + | |
| 1660 | + | |
| 1661 | + | |
| 1662 | + | |
1653 | 1663 | | |
1654 | 1664 | | |
1655 | 1665 | | |
| |||
Lines changed: 4 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
340 | 340 | | |
341 | 341 | | |
342 | 342 | | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
343 | 347 | | |
344 | 348 | | |
345 | 349 | | |
| |||
Lines changed: 10 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
81 | 81 | | |
82 | 82 | | |
83 | 83 | | |
| 84 | + | |
84 | 85 | | |
85 | 86 | | |
86 | 87 | | |
| |||
361 | 362 | | |
362 | 363 | | |
363 | 364 | | |
| 365 | + | |
364 | 366 | | |
365 | 367 | | |
366 | 368 | | |
| |||
900 | 902 | | |
901 | 903 | | |
902 | 904 | | |
| 905 | + | |
| 906 | + | |
| 907 | + | |
| 908 | + | |
| 909 | + | |
| 910 | + | |
| 911 | + | |
| 912 | + | |
903 | 913 | | |
904 | 914 | | |
905 | 915 | | |
| |||
Lines changed: 10 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
707 | 707 | | |
708 | 708 | | |
709 | 709 | | |
| 710 | + | |
| 711 | + | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
710 | 720 | | |
711 | 721 | | |
712 | 722 | | |
| |||
Lines changed: 10 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
976 | 976 | | |
977 | 977 | | |
978 | 978 | | |
| 979 | + | |
| 980 | + | |
| 981 | + | |
| 982 | + | |
| 983 | + | |
| 984 | + | |
| 985 | + | |
| 986 | + | |
| 987 | + | |
| 988 | + | |
979 | 989 | | |
980 | 990 | | |
981 | 991 | | |
| |||
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
77 | 77 | | |
78 | 78 | | |
79 | 79 | | |
80 | | - | |
| 80 | + | |
81 | 81 | | |
82 | 82 | | |
83 | 83 | | |
| |||
148 | 148 | | |
149 | 149 | | |
150 | 150 | | |
151 | | - | |
| 151 | + | |
152 | 152 | | |
153 | 153 | | |
154 | 154 | | |
| |||
0 commit comments