new AdminClientConfig(),
new ClientConfig());
StoreDefinitionsMapper storeDefsMapper = new StoreDefinitionsMapper();
List<StoreDefinition> storeDefs = storeDefsMapper.readStoreList(new File(newStoresXmlfile));
ClusterMapper clusterMapper = new ClusterMapper();
for(Node node: oldCluster.getNodes()) {
VoldemortAdminTool.executeSetMetadataPair(node.getId(),
adminClient,
CLUSTER_KEY,
clusterMapper.writeCluster(newCluster),
STORES_KEY,
storeDefsMapper.writeStoreList(storeDefs));
}
String dirPath = TestUtils.createTempDir().getAbsolutePath();
for(Node node: newCluster.getNodes()) {
VoldemortAdminTool.executeGetMetadata(node.getId(),
adminClient,
CLUSTER_KEY,
dirPath);
// Make sure cluster metadata was updated
Cluster newClusterFromMetadataRepo = clusterMapper.readCluster(new File(dirPath,
CLUSTER_KEY
+ "_"
+ node.getId()));
// All nodes should have this old list
assertTrue(oldCluster.getNodeById(5).getPartitionIds().equals(oldPartitionIds));