Search in sources :

Example 1 with Help

use of org.apache.accumulo.core.cli.Help in project accumulo by apache.

the class FateAdmin method main.

public static void main(String[] args) throws Exception {
    Help opts = new Help();
    JCommander jc = new JCommander(opts);
    jc.setProgramName(FateAdmin.class.getName());
    LinkedHashMap<String, TxOpts> txOpts = new LinkedHashMap<>(2);
    txOpts.put("fail", new FailOpts());
    txOpts.put("delete", new DeleteOpts());
    for (Entry<String, TxOpts> entry : txOpts.entrySet()) {
        jc.addCommand(entry.getKey(), entry.getValue());
    }
    jc.addCommand("print", new PrintOpts());
    jc.parse(args);
    if (opts.help || jc.getParsedCommand() == null) {
        jc.usage();
        System.exit(1);
    }
    System.err.printf("This tool has been deprecated%nFATE administration now available within 'accumulo shell'%n$ fate fail <txid>... | delete <txid>... | print [<txid>...]%n%n");
    AdminUtil<Master> admin = new AdminUtil<>();
    Instance instance = HdfsZooInstance.getInstance();
    String path = ZooUtil.getRoot(instance) + Constants.ZFATE;
    String masterPath = ZooUtil.getRoot(instance) + Constants.ZMASTER_LOCK;
    IZooReaderWriter zk = ZooReaderWriter.getInstance();
    ZooStore<Master> zs = new ZooStore<>(path, zk);
    if (jc.getParsedCommand().equals("fail")) {
        for (String txid : txOpts.get(jc.getParsedCommand()).txids) {
            if (!admin.prepFail(zs, zk, masterPath, txid)) {
                System.exit(1);
            }
        }
    } else if (jc.getParsedCommand().equals("delete")) {
        for (String txid : txOpts.get(jc.getParsedCommand()).txids) {
            if (!admin.prepDelete(zs, zk, masterPath, txid)) {
                System.exit(1);
            }
            admin.deleteLocks(zs, zk, ZooUtil.getRoot(instance) + Constants.ZTABLE_LOCKS, txid);
        }
    } else if (jc.getParsedCommand().equals("print")) {
        admin.print(new ReadOnlyStore<>(zs), zk, ZooUtil.getRoot(instance) + Constants.ZTABLE_LOCKS);
    }
}
Also used : Help(org.apache.accumulo.core.cli.Help) Instance(org.apache.accumulo.core.client.Instance) HdfsZooInstance(org.apache.accumulo.server.client.HdfsZooInstance) ZooStore(org.apache.accumulo.fate.ZooStore) LinkedHashMap(java.util.LinkedHashMap) Master(org.apache.accumulo.master.Master) AdminUtil(org.apache.accumulo.fate.AdminUtil) JCommander(com.beust.jcommander.JCommander) IZooReaderWriter(org.apache.accumulo.fate.zookeeper.IZooReaderWriter)

Aggregations

JCommander (com.beust.jcommander.JCommander)1 LinkedHashMap (java.util.LinkedHashMap)1 Help (org.apache.accumulo.core.cli.Help)1 Instance (org.apache.accumulo.core.client.Instance)1 AdminUtil (org.apache.accumulo.fate.AdminUtil)1 ZooStore (org.apache.accumulo.fate.ZooStore)1 IZooReaderWriter (org.apache.accumulo.fate.zookeeper.IZooReaderWriter)1 Master (org.apache.accumulo.master.Master)1 HdfsZooInstance (org.apache.accumulo.server.client.HdfsZooInstance)1