Package voldemort.xml

Examples of voldemort.xml.StoreDefinitionsMapper


    public void setUp() throws Exception {
        cluster = VoldemortTestConstants.getThreeNodeCluster();
        failureDetector = new BannagePeriodFailureDetector(new FailureDetectorConfig().setCluster(cluster));
        clusterWithZones = VoldemortTestConstants.getFourNodeClusterWithZones();
        failureDetectorWithZones = new BannagePeriodFailureDetector(new FailureDetectorConfig().setCluster(clusterWithZones));
        storeDef = new StoreDefinitionsMapper().readStoreList(new StringReader(VoldemortTestConstants.getSingleStoreWithZonesXml()))
                                               .get(0);
    }
View Full Code Here


        assertTrue(Utils.isReadableFile(clusterFile));
        assertTrue(Utils.isReadableFile(storesFile));

        ClusterMapper clusterMapper = new ClusterMapper();
        StoreDefinitionsMapper storeDefsMapper = new StoreDefinitionsMapper();

        Cluster newCluster = clusterMapper.readCluster(new File(clusterFile));
        List<StoreDefinition> newStores = storeDefsMapper.readStoreList(new File(storesFile));

        // compare metadata objects
        assertTrue(newCluster.equals(cluster));
        assertTrue(newStores.size() == stores.size());
        for(StoreDefinition store: stores) {
View Full Code Here

        Set<Object> storesValues = Sets.newHashSet();
        for(Node node: adminClient.getAdminClientCluster().getNodes()) {
            Versioned<String> versioned = adminClient.metadataMgmtOps.getRemoteMetadata(node.getId(),
                                                                                        MetadataStore.STORES_KEY);
            assertTrue(versioned != null && versioned.getValue() != null);
            storesValues.add(new StoreDefinitionsMapper().readStoreList(new StringReader(versioned.getValue())));
        }
        assertTrue(storesValues.size() == 1);

        // create new metadata object
        final String newStoreXMLFilePrefix = "updated.stores";
        final String newStoreXMLFileSuffix = "xml";

        List<StoreDefinition> newStoresToUpload = new ArrayList<StoreDefinition>();
        for(StoreDefinition storeDef: stores) {
            StoreDefinitionBuilder sb = AdminToolTestUtils.storeDefToBuilder(storeDef);
            sb.setName(sb.getName() + "_new");
            newStoresToUpload.add(sb.build());
        }

        // create file of new metadata
        File newStoresXMLFolder = TestUtils.createTempDir();
        File newStoreXMLFile = File.createTempFile(newStoreXMLFilePrefix,
                                                   newStoreXMLFileSuffix,
                                                   newStoresXMLFolder);
        FileWriter fwriter = new FileWriter(newStoreXMLFile);
        fwriter.write(new StoreDefinitionsMapper().writeStoreList(newStoresToUpload));
        fwriter.close();

        // set new metadata from file
        AdminCommand.executeCommand(new String[] { "meta", "set",
                MetadataStore.STORES_KEY + "=" + newStoreXMLFile.getAbsolutePath(), "-u", bsURL,
                "--confirm" });

        // fetch new metadata from node
        List<StoreDefinition> newStoresToVerify = adminClient.metadataMgmtOps.getRemoteStoreDefList(adminClient.getAdminClientCluster()
                                                                                                               .getNodes()
                                                                                                               .iterator()
                                                                                                               .next()
                                                                                                               .getId())
                                                                             .getValue();

        // check if new metadata is the same as the source
        assertTrue(!newStoresToVerify.equals(stores));
        assertTrue(newStoresToVerify.equals(newStoresToUpload));

        // check if all new metadata are the same
        storesValues.clear();
        for(Node node: adminClient.getAdminClientCluster().getNodes()) {
            Versioned<String> versioned = adminClient.metadataMgmtOps.getRemoteMetadata(node.getId(),
                                                                                        MetadataStore.STORES_KEY);
            assertTrue(versioned != null && versioned.getValue() != null);
            storesValues.add(new StoreDefinitionsMapper().readStoreList(new StringReader(versioned.getValue())));
        }
        System.out.println(storesValues.size());
        assertTrue(storesValues.size() == 1);
    }
View Full Code Here

        File newStoresXMLFolder = TestUtils.createTempDir();
        File newStoreXMLFile = File.createTempFile(newStoreXMLFilePrefix,
                                                   newStoreXMLFileSuffix,
                                                   newStoresXMLFolder);
        FileWriter fwriter = new FileWriter(newStoreXMLFile);
        fwriter.write(new StoreDefinitionsMapper().writeStoreList(newStores));
        fwriter.close();

        // check version
        String sysStoreName = SystemStoreConstants.SystemStoreName.voldsys$_metadata_version_persistence.name();
        ByteArray metadataKey = new ByteArray(ByteUtils.getBytes(MetadataVersionStoreUtils.VERSIONS_METADATA_KEY,
View Full Code Here

                                                        this.useNio,
                                                        null,
                                                        storesXmlfile,
                                                        properties);

        List<StoreDefinition> storeDefs = new StoreDefinitionsMapper().readStoreList(new File(storesXmlfile));

        for (StoreDefinition storeDef : storeDefs)
            if (storeDef.getName().equals(testStoreName))
                testStoreDef = storeDef;
View Full Code Here

            // Update cluster.xml metadata
            AdminClient adminClient = new AdminClient(bootStrapUrls[0],
                                                      new AdminClientConfig(),
                                                      new ClientConfig(),
                                                      CLIENT_ZONE_ID);
            StoreDefinitionsMapper storeDefsMapper = new StoreDefinitionsMapper();
            List<StoreDefinition> storeDefs = storeDefsMapper.readStoreList(new File(storesXmlfile));
            for (Node node: cluster.getNodes()) {
                VoldemortAdminTool.executeSetMetadataPair(node.getId(),
                                                          adminClient,
                                                          CLUSTER_KEY,
                                                          new ClusterMapper().writeCluster(cluster),
                                                          STORES_KEY,
                                                          storeDefsMapper.writeStoreList(storeDefs));
            }
            // Wait for about 15 seconds to be sure
            try {
                Thread.sleep(15000);
            } catch(Exception e) {
View Full Code Here

                                                        useNio,
                                                        null,
                                                        storesXmlfile,
                                                        serverProperties);

        storeDefs = new StoreDefinitionsMapper().readStoreList(new File(storesXmlfile));

        Properties adminProperties = new Properties();
        adminProperties.setProperty("max_connections", "20");
        adminClient = new AdminClient(cluster,
                                      new AdminClientConfig(adminProperties),
View Full Code Here

                                                                    storesXmlfile,
                                                                    new Properties());

        config.setEnableNetworkClassLoader(true);

        List<StoreDefinition> storeDefs = new StoreDefinitionsMapper().readStoreList(new File(storesXmlfile));
        storeDef = StoreDefinitionUtils.getStoreDefinitionWithName(storeDefs, testStoreName);

        server = new VoldemortServer(config, cluster);
        server.start();
View Full Code Here

            AdminClient adminClient = new AdminClient(bootStrapUrls[0],
                                                      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));

                // As per the new metadata node 5 should have this list
                assertTrue(newClusterFromMetadataRepo.getNodeById(5)
                                                     .getPartitionIds()
                                                     .equals(newPartitionIds));

                // Make sure store metadata was updated
                VoldemortAdminTool.executeGetMetadata(node.getId(),
                                                      adminClient,
                                                      STORES_KEY,
                                                      dirPath);
                List<StoreDefinition> newStoreDefsFromMetadatRepo = storeDefsMapper.readStoreList(new File(dirPath,
                                                                                                           STORES_KEY
                                                                                                                   + "_"
                                                                                                                   + node.getId()));

                // Check that the required replication factor has been updated
View Full Code Here

        File newStoresXMLFolder = TestUtils.createTempDir();
        File newStoreXMLFile = File.createTempFile(newStoreXMLFilePrefix,
                                                   newStoreXMLFileSuffix,
                                                   newStoresXMLFolder);
        FileWriter fwriter = new FileWriter(newStoreXMLFile);
        fwriter.write(new StoreDefinitionsMapper().writeStoreList(newStores));
        fwriter.close();

        // execute store-add command
        AdminCommand.executeCommand(new String[] { "store", "add", "-f",
                newStoreXMLFile.getAbsolutePath(), "-u", bsURL });
View Full Code Here

TOP

Related Classes of voldemort.xml.StoreDefinitionsMapper

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.