@Override public void init(Configuration configuration, TableConfig tableConfig, ZkHelixPropertyStore<ZNRecord> propertyStore, BrokerMetrics brokerMetrics) { super.init(configuration, tableConfig, propertyStore, brokerMetrics); String partitionColumn = tableConfig.getValidationConfig().getReplicaGroupStrategyConfig().getPartitionColumn(); _isPartitionLevelReplicaGroupAssignment = (partitionColumn != null); _numReplicas = tableConfig.getValidationConfig().getReplicationNumber(); }
String partitionColumn = replicaGroupStrategyConfig.getPartitionColumn(); if (partitionColumn != null) {
if (replicaGroupConfig.getPartitionColumn() != null) { throw new InvalidConfigException("Partition level replica group rebalance is not supported");
Preconditions.checkNotNull(replicaGroupStrategyConfig, "Replica group strategy config should not be null"); String partitionColumn = replicaGroupStrategyConfig.getPartitionColumn(); int numInstancesPerPartition = replicaGroupStrategyConfig.getNumInstancesPerPartition();
private void checkTableConfigWithAssignmentConfig(TableConfig tableConfig, TableConfig tableConfigToCompare) { // Check that the segment assignment configuration does exist. Assert.assertEquals(tableConfigToCompare.getTableName(), tableConfig.getTableName()); Assert.assertNotNull(tableConfigToCompare.getValidationConfig().getReplicaGroupStrategyConfig()); Assert.assertEquals(tableConfigToCompare.getValidationConfig().getReplicaGroupStrategyConfig(), tableConfig.getValidationConfig().getReplicaGroupStrategyConfig()); // Check that the configurations are correct. ReplicaGroupStrategyConfig strategyConfig = tableConfigToCompare.getValidationConfig().getReplicaGroupStrategyConfig(); Assert.assertTrue(strategyConfig.getMirrorAssignmentAcrossReplicaGroups()); Assert.assertEquals(strategyConfig.getNumInstancesPerPartition(), 5); Assert.assertEquals(strategyConfig.getPartitionColumn(), "memberId"); }