use of voldemort.rest.coordinator.config.FileBasedStoreClientConfigService in project voldemort by voldemort.
the class RestClientTest method setUp.
@Override
@Before
public void setUp() throws IOException {
final int numServers = 1;
this.nodeId = 0;
this.time = SystemTime.INSTANCE;
servers = new VoldemortServer[numServers];
int[][] partitionMap = { { 0, 1, 2, 3, 4, 5, 6, 7 } };
try {
// Setup the cluster
cluster = ServerTestUtils.startVoldemortCluster(numServers, servers, partitionMap, socketStoreFactory, true, null, storesXmlfile, new Properties());
} catch (IOException e) {
fail("Failure to setup the cluster");
}
socketUrl = servers[0].getIdentityNode().getSocketUrl().toString();
List<String> bootstrapUrls = new ArrayList<String>();
bootstrapUrls.add(socketUrl);
// create a copy of the config file in a temp directory and work on that
File src = new File(FAT_CLIENT_CONFIG_PATH_ORIGINAL);
COPY_OF_FAT_CLIENT_CONFIG_FILE = new File(TestUtils.createTempDir(), "clientConfigs" + System.currentTimeMillis() + ".avro");
FileUtils.copyFile(src, COPY_OF_FAT_CLIENT_CONFIG_FILE);
// Setup the Coordinator
CoordinatorConfig coordinatorConfig = new CoordinatorConfig();
coordinatorConfig.setBootstrapURLs(bootstrapUrls).setCoordinatorCoreThreads(100).setCoordinatorMaxThreads(100).setFatClientConfigPath(COPY_OF_FAT_CLIENT_CONFIG_FILE.getAbsolutePath()).setServerPort(9999);
try {
StoreClientConfigService storeClientConfigs = null;
switch(coordinatorConfig.getFatClientConfigSource()) {
case FILE:
storeClientConfigs = new FileBasedStoreClientConfigService(coordinatorConfig);
break;
case ZOOKEEPER:
throw new UnsupportedOperationException("Zookeeper-based configs are not implemented yet!");
default:
storeClientConfigs = null;
}
coordinator = new CoordinatorProxyService(coordinatorConfig, storeClientConfigs);
coordinator.start();
} catch (Exception e) {
e.printStackTrace();
fail("Failure to start the Coordinator");
}
Properties props = new Properties();
props.setProperty(ClientConfig.BOOTSTRAP_URLS_PROPERTY, "http://localhost:9999");
props.setProperty(ClientConfig.ROUTING_TIMEOUT_MS_PROPERTY, "1500");
RESTClientFactoryConfig mainConfig = new RESTClientFactoryConfig(props, null);
RESTClientFactory factory = new RESTClientFactory(mainConfig);
this.client = factory.getStoreClient(STORE_NAME);
}
use of voldemort.rest.coordinator.config.FileBasedStoreClientConfigService in project voldemort by voldemort.
the class CoordinatorRestAPITest method setUp.
@Before
public void setUp() throws Exception {
int numServers = 1;
servers = new VoldemortServer[numServers];
int[][] partitionMap = { { 0, 2, 4, 6, 1, 3, 5, 7 } };
Properties props = new Properties();
props.setProperty("storage.configs", "voldemort.store.bdb.BdbStorageConfiguration,voldemort.store.slow.SlowStorageConfiguration");
props.setProperty("testing.slow.queueing.get.ms", "4");
props.setProperty("testing.slow.queueing.getall.ms", "4");
props.setProperty("testing.slow.queueing.put.ms", "4");
props.setProperty("testing.slow.queueing.delete.ms", "4");
ServerTestUtils.startVoldemortCluster(numServers, servers, partitionMap, socketStoreFactory, // useNio
true, null, STORES_XML, props);
// create a copy of the config file in a temp directory and work on that
File src = new File(FAT_CLIENT_CONFIG_FILE_PATH_ORIGINAL);
COPY_OF_FAT_CLIENT_CONFIG_FILE = new File(TestUtils.createTempDir(), "fat-client-config" + System.currentTimeMillis() + ".avro");
FileUtils.copyFile(src, COPY_OF_FAT_CLIENT_CONFIG_FILE);
CoordinatorConfig config = new CoordinatorConfig();
List<String> bootstrapUrls = new ArrayList<String>();
socketUrl = servers[0].getIdentityNode().getSocketUrl().toString();
bootstrapUrls.add(socketUrl);
System.out.println("\n\n************************ Starting the Coordinator *************************");
config.setBootstrapURLs(bootstrapUrls);
config.setFatClientConfigPath(COPY_OF_FAT_CLIENT_CONFIG_FILE.getAbsolutePath());
StoreClientConfigService storeClientConfigs = null;
switch(config.getFatClientConfigSource()) {
case FILE:
storeClientConfigs = new FileBasedStoreClientConfigService(config);
break;
case ZOOKEEPER:
throw new UnsupportedOperationException("Zookeeper-based configs are not implemented yet!");
default:
storeClientConfigs = null;
}
this.coordinator = new CoordinatorProxyService(config, storeClientConfigs);
if (!this.coordinator.isStarted()) {
this.coordinator.start();
}
}
Aggregations