Search in sources :

Example 1 with CrailStore

use of org.apache.crail.CrailStore in project incubator-crail by apache.

the class CrailFsck method getLocations.

public void getLocations(String filename, long offset, long length) throws Exception {
    System.out.println("getLocations, filename " + filename + ", offset " + offset + ", len " + length);
    CrailConfiguration conf = new CrailConfiguration();
    CrailStore fs = CrailStore.newInstance(conf);
    CrailBlockLocation[] locations = fs.lookup(filename).get().getBlockLocations(offset, length);
    for (int i = 0; i < locations.length; i++) {
        System.out.println("location " + i + " : " + locations[i].toString());
    }
    fs.close();
}
Also used : CrailBlockLocation(org.apache.crail.CrailBlockLocation) CrailStore(org.apache.crail.CrailStore) CrailConfiguration(org.apache.crail.conf.CrailConfiguration)

Example 2 with CrailStore

use of org.apache.crail.CrailStore in project incubator-crail by apache.

the class CrailFsck method blockStatistics.

public void blockStatistics(String filename) throws Exception {
    HashMap<String, AtomicInteger> stats = new HashMap<String, AtomicInteger>();
    CrailConfiguration conf = new CrailConfiguration();
    CrailStore fs = CrailStore.newInstance(conf);
    CrailNode node = fs.lookup(filename).get();
    if (node.getType() == CrailNodeType.DIRECTORY) {
        CrailDirectory directory = node.asDirectory();
        Iterator<String> iter = directory.listEntries();
        while (iter.hasNext()) {
            String path = iter.next();
            CrailFile child = fs.lookup(path).get().asFile();
            walkBlocks(stats, fs, child.getPath(), 0, child.getCapacity());
        }
    } else if (node.getType() == CrailNodeType.DATAFILE) {
        CrailFile file = node.asFile();
        walkBlocks(stats, fs, file.getPath(), 0, file.getCapacity());
    } else if (node.getType() == CrailNodeType.MULTIFILE) {
        CrailMultiFile directory = node.asMultiFile();
        Iterator<String> iter = directory.listEntries();
        while (iter.hasNext()) {
            String path = iter.next();
            CrailFile child = fs.lookup(path).get().asFile();
            walkBlocks(stats, fs, child.getPath(), 0, child.getCapacity());
        }
    }
    printStats(stats);
    fs.close();
}
Also used : AtomicInteger(java.util.concurrent.atomic.AtomicInteger) HashMap(java.util.HashMap) CrailDirectory(org.apache.crail.CrailDirectory) CrailNode(org.apache.crail.CrailNode) CrailMultiFile(org.apache.crail.CrailMultiFile) CrailStore(org.apache.crail.CrailStore) CrailFile(org.apache.crail.CrailFile) CrailConfiguration(org.apache.crail.conf.CrailConfiguration)

Example 3 with CrailStore

use of org.apache.crail.CrailStore in project incubator-crail by apache.

the class CrailFsck method createDirectory.

public void createDirectory(String filename, int storageClass, int locationClass) throws Exception {
    System.out.println("createDirectory, filename " + filename + ", storageClass " + storageClass + ", locationClass " + locationClass);
    CrailConfiguration conf = new CrailConfiguration();
    CrailStore fs = CrailStore.newInstance(conf);
    fs.create(filename, CrailNodeType.DIRECTORY, CrailStorageClass.get(storageClass), CrailLocationClass.get(locationClass), true).get().syncDir();
    fs.close();
}
Also used : CrailStore(org.apache.crail.CrailStore) CrailConfiguration(org.apache.crail.conf.CrailConfiguration)

Aggregations

CrailStore (org.apache.crail.CrailStore)3 CrailConfiguration (org.apache.crail.conf.CrailConfiguration)3 HashMap (java.util.HashMap)1 AtomicInteger (java.util.concurrent.atomic.AtomicInteger)1 CrailBlockLocation (org.apache.crail.CrailBlockLocation)1 CrailDirectory (org.apache.crail.CrailDirectory)1 CrailFile (org.apache.crail.CrailFile)1 CrailMultiFile (org.apache.crail.CrailMultiFile)1 CrailNode (org.apache.crail.CrailNode)1