use of io.hetu.core.seedstore.filebased.FileBasedSeedStoreFactory in project hetu-core by openlookeng.
the class TestHazelcastStateStoreFactory method testUnableGetSeeds.
/**
* Test what happens to hazelcast factory if no seeds get from seed store
*
* @throws IOException IOException thrown if seedStore read write errors happen
*/
@Test(expectedExceptions = RuntimeException.class)
public void testUnableGetSeeds() throws IOException {
HazelcastStateStoreFactory factory = new HazelcastStateStoreFactory();
assertEquals(factory.getName(), HAZELCAST);
SeedStoreFactory seedStoreFactory = new FileBasedSeedStoreFactory();
assertEquals(seedStoreFactory.getName(), "filebased");
Map<String, String> properties = new HashMap<>(0);
properties.put(STATE_STORE_CLUSTER_CONFIG_NAME, TEST_CLUSTER_NAME);
properties.put(DISCOVERY_MODE_CONFIG_NAME, DISCOVERY_MODE_TCPIP);
SeedStore seedStore = mock(SeedStore.class);
when(seedStore.get()).thenReturn(ImmutableList.of());
factory.create(TEST_STATE_STORE_NAME, seedStore, properties);
}
use of io.hetu.core.seedstore.filebased.FileBasedSeedStoreFactory in project hetu-core by openlookeng.
the class TestHazelcastStateStoreFactory method testTcpipCreate.
/**
* Test state store creation with tcp-ip mode
*
* @throws IOException IOException thrown if seedStore read write errors happen
*/
@Test
public void testTcpipCreate() throws IOException {
HazelcastStateStoreFactory factory = new HazelcastStateStoreFactory();
assertEquals(factory.getName(), HAZELCAST);
SeedStoreFactory seedStoreFactory = new FileBasedSeedStoreFactory();
assertEquals(seedStoreFactory.getName(), "filebased");
Map<String, String> properties = new HashMap<>(0);
properties.put(STATE_STORE_CLUSTER_CONFIG_NAME, TEST_CLUSTER_NAME);
properties.put(DISCOVERY_MODE_CONFIG_NAME, DISCOVERY_MODE_TCPIP);
SeedStore seedStore = mock(SeedStore.class);
Seed seed = new FileBasedSeed(MEMBER_ADDRESS, 0);
when(seedStore.get()).thenReturn(ImmutableList.of(seed));
setupHazelcastInstance();
StateStore stateStore = factory.create(TEST_STATE_STORE_NAME, seedStore, properties);
assertEquals(stateStore.getName(), TEST_STATE_STORE_NAME);
StateCollection collection = stateStore.createStateCollection("test", StateCollection.Type.MAP);
((StateMap<String, String>) collection).put(TEST_KEY, TEST_VALUE);
assertEquals(collection.size(), 1);
assertEquals(((StateMap<String, String>) collection).get(TEST_KEY), TEST_VALUE);
((HazelcastStateStore) stateStore).shutdown();
}
use of io.hetu.core.seedstore.filebased.FileBasedSeedStoreFactory in project hetu-core by openlookeng.
the class TestHazelcastStateStoreFactory method testTcpipCreateWithStaticSeeds.
/**
* Test state store creation with tcp-ip with static seeds configured
*/
@Test
public void testTcpipCreateWithStaticSeeds() {
HazelcastStateStoreFactory factory = new HazelcastStateStoreFactory();
assertEquals(factory.getName(), HAZELCAST);
SeedStoreFactory seedStoreFactory = new FileBasedSeedStoreFactory();
assertEquals(seedStoreFactory.getName(), "filebased");
// bootstrap state store with static seeds
Map<String, String> config = new HashMap<>(0);
config.put(DISCOVERY_MODE_CONFIG_NAME, DISCOVERY_MODE_TCPIP);
config.put(STATE_STORE_CLUSTER_CONFIG_NAME, "static-seed-cluster");
config.put(DISCOVERY_PORT_CONFIG_NAME, PORT2);
config.put(DISCOVERY_TCPIP_SEEDS, MEMBER_ADDRESS2);
StateStoreBootstrapper bootstrapper = new HazelcastStateStoreBootstrapper();
bootstrapper.bootstrap(ImmutableSet.of(MEMBER_ADDRESS2), config);
// create state store client
String stateStoreName = "static-seed-state-store";
StateStore stateStore = factory.create(stateStoreName, null, config);
assertEquals(stateStore.getName(), stateStoreName);
StateCollection collection = stateStore.createStateCollection("test", StateCollection.Type.MAP);
((StateMap<String, String>) collection).put(TEST_KEY, TEST_VALUE);
assertEquals(collection.size(), 1);
assertEquals(((StateMap<String, String>) collection).get(TEST_KEY), TEST_VALUE);
((HazelcastStateStore) stateStore).shutdown();
}
Aggregations