Package voldemort.cluster

Examples of voldemort.cluster.Cluster


    public void testGetMapOfContiguousPartitionRunLengths() {
        int numberOfZones = 2;
        int nodesPerZone[][] = new int[][] { { 0, 1, 2 }, { 3, 4, 5 } };
        int partitionMap[][] = new int[][] { { 0, 6, 12, 16, 17 }, { 1, 7, 15 }, { 2, 8, 14 },
                { 3, 9, 13 }, { 4, 10 }, { 5, 11 } };
        Cluster cluster = ServerTestUtils.getLocalZonedCluster(numberOfZones,
                                                               nodesPerZone,
                                                               partitionMap,
                                                               ServerTestUtils.findFreePorts(6 * 3));
        Map<Integer, Integer> iiMap;
        // Zone 0:
View Full Code Here


                                                                                    10000,
                                                                                    100000,
                                                                                    32 * 1024);
        VoldemortServer[] servers = new VoldemortServer[4];
        int partitionMap[][] = { { 0 }, { 1 }, { 2 }, { 3 } };
        Cluster cluster = ServerTestUtils.startVoldemortCluster(4,
                                                                servers,
                                                                partitionMap,
                                                                socketStoreFactory,
                                                                true,
                                                                null,
                                                                STORES_XML,
                                                                new Properties());

        Node node = cluster.getNodeById(0);
        String bootstrapUrl = "tcp://" + node.getHost() + ":" + node.getSocketPort();
        AdminClient adminClient = new AdminClient(bootstrapUrl,
                                                  new AdminClientConfig(),
                                                  new ClientConfig());

View Full Code Here

                                              "bannage-period",
                                              failureDetectorConfig.getBannagePeriod());
        Long thresholdInterval = CmdUtils.valueOf(options,
                                                  "threshold-interval",
                                                  failureDetectorConfig.getThresholdInterval());
        Cluster cluster = getNineNodeCluster();

        failureDetectorConfig.setCluster(cluster)
                             .setStoreVerifier(create(cluster.getNodes()))
                             .setAsyncRecoveryInterval(asyncScanInterval)
                             .setBannagePeriod(bannagePeriod)
                             .setThresholdInterval(thresholdInterval);
    }
View Full Code Here

    @Test
    public void testMissingKeysAreAddedToNodeWhenDoingReadRepair() throws Exception {
        ByteArray key = TestUtils.toByteArray("key");
        byte[] value = "foo".getBytes();

        Cluster cluster = VoldemortTestConstants.getThreeNodeCluster();
        StoreDefinition storeDef = ServerTestUtils.getStoreDef("test",
                                                               3,
                                                               3,
                                                               3,
                                                               2,
                                                               2,
                                                               RoutingStrategyType.CONSISTENT_STRATEGY);
        Map<Integer, Store<ByteArray, byte[], byte[]>> subStores = Maps.newHashMap();

        for(int a = 0; a < 3; a++) {
            int id = Iterables.get(cluster.getNodes(), a).getId();
            InMemoryStorageEngine<ByteArray, byte[], byte[]> subStore = new InMemoryStorageEngine<ByteArray, byte[], byte[]>("test");
            subStores.put(id, subStore);
        }

        FailureDetectorConfig failureDetectorConfig = new FailureDetectorConfig().setImplementationClassName(failureDetectorClass.getName())
                                                                                 .setBannagePeriod(1000)
                                                                                 .setCluster(cluster)
                                                                                 .setStoreVerifier(create(subStores))
                                                                                 .setTime(time);

        failureDetector = create(failureDetectorConfig, false);

        routedStoreThreadPool = Executors.newFixedThreadPool(1);

        RoutedStoreFactory routedStoreFactory = new RoutedStoreFactory(routedStoreThreadPool);

        RoutedStore store = routedStoreFactory.create(cluster,
                                                      storeDef,
                                                      subStores,
                                                      failureDetector,
                                                      new RoutedStoreConfig().setTimeoutConfig(new TimeoutConfig(1000L,
                                                                                                                 false)));

        recordException(failureDetector, Iterables.get(cluster.getNodes(), 0));
        store.put(key, new Versioned<byte[]>(value), null);
        recordSuccess(failureDetector, Iterables.get(cluster.getNodes(), 0));
        time.sleep(2000);

        assertEquals(2, store.get(key, null).size());
        // Last get should have repaired the missing key from node 0 so all
        // stores should now return a value
        assertEquals(3, store.get(key, null).size());

        ByteArray anotherKey = TestUtils.toByteArray("anotherKey");
        // Try again, now use getAll to read repair
        recordException(failureDetector, Iterables.get(cluster.getNodes(), 0));
        store.put(anotherKey, new Versioned<byte[]>(value), null);
        recordSuccess(failureDetector, Iterables.get(cluster.getNodes(), 0));
        assertEquals(2, store.getAll(Arrays.asList(anotherKey), null).get(anotherKey).size());
        assertEquals(3, store.get(anotherKey, null).size());
    }
View Full Code Here

        StoreDefinition zoneStore = storeDefs.get(1);

        assertEquals(consistentStore.getName(), "cstore");
        assertEquals(zoneStore.getName(), "zstore");

        Cluster cluster = VoldemortTestConstants.getEightNodeClusterWithZones();
        RoutingStrategy cStrategy = new RoutingStrategyFactory().updateRoutingStrategy(consistentStore,
                                                                                       cluster);
        RoutingStrategy zStrategy = new RoutingStrategyFactory().updateRoutingStrategy(zoneStore,
                                                                                       cluster);
        BdbStorageEngine cPrefixedBdbStore = (BdbStorageEngine) bdbStorage.getStore(consistentStore,
View Full Code Here

        long deleted = adminClient.storeMntOps.deletePartitions(0,
                                                                STORE_NAME,
                                                                ImmutableList.of(0, 1),
                                                                null);
        assert deleted > 0;
        Cluster newCluster = new Cluster(cluster.getName(),
                                         ImmutableList.of(newNode0, newNode1),
                                         Lists.newArrayList(cluster.getZones()));
        for(Node node: cluster.getNodes()) {
            VectorClock clock = (VectorClock) versionedCluster.getVersion();
            clock.incrementVersion(node.getId(), System.currentTimeMillis());
View Full Code Here

                                                                                    100000,
                                                                                    32 * 1024);
        VoldemortServer[] servers = new VoldemortServer[4];
        int partitionMap[][] = { { 0 }, { 1 }, { 2 }, { 3 } };
        try {
            Cluster cluster = ServerTestUtils.startVoldemortCluster(4,
                                                                    servers,
                                                                    partitionMap,
                                                                    socketStoreFactory,
                                                                    true,
                                                                    null,
                                                                    STORES_XML,
                                                                    new Properties());
            Node node = cluster.getNodeById(0);
            return "tcp://" + node.getHost() + ":" + node.getSocketPort();
        } catch(IOException e) {
            e.printStackTrace();
            fail("Unexpected exception");
        }
View Full Code Here

                                                                                              "stores.xml"));
        StoreDefinition def = null;
        for(StoreDefinition d: storeDefs)
            if(d.getName().equals(storeName))
                def = d;
        Cluster cluster = new ClusterMapper().readCluster(new File(configDir, "cluster.xml"));

        Configuration config = this.getConf();
        config.set("mapred.job.name", "test-store-builder");
        HadoopStoreBuilder builder = new HadoopStoreBuilder(config,
                                                            BuildTestStoreMapper.class,
View Full Code Here

                    logger.info("Attempt " + count++);

                    for(int testNodeId: oldNodeIdSet) {
                        logger.info("Testing node " + testNodeId);
                        try {
                            Cluster cluster = adminClient.metadataMgmtOps.getRemoteCluster(testNodeId)
                                                                         .getValue();
                            Set<Integer> allNodeIds = new HashSet<Integer>();
                            for(Node node: cluster.getNodes()) {
                                allNodeIds.add(node.getId());
                            }
                            assertTrue("all nodes nodes discovered by node id " + testNodeId,
                                       allNodeIds.containsAll(nodeIds.values()));
                        } catch(VoldemortException e) {
View Full Code Here

                               8080 + i,
                               6666 + i,
                               7000 + i,
                               Arrays.asList(4 * i, 4 * i + 1, 4 * i + 2, 4 * i + 3)));
        }
        Cluster cluster = new Cluster("test", nodes);
        StoreDefinition storeDef = new StoreDefinitionBuilder().setName("test")
                                                               .setType(ReadOnlyStorageConfiguration.TYPE_NAME)
                                                               .setKeySerializer(keySerDef)
                                                               .setValueSerializer(valueSerDef)
                                                               .setRoutingPolicy(RoutingTier.CLIENT)
View Full Code Here

TOP

Related Classes of voldemort.cluster.Cluster

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.