incubator-blur-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aaron McCurry <amccu...@gmail.com>
Subject Re: [1/2] git commit: Exposed snapshot functionality through the shell
Date Thu, 19 Sep 2013 00:51:52 GMT
These files need Apache License headers.

Aaron


On Tue, Sep 17, 2013 at 11:56 PM, <rkins@apache.org> wrote:

> Updated Branches:
>   refs/heads/master a30a1da56 -> 453a0dd61
>
>
> Exposed snapshot functionality through the shell
>
>
> Project: http://git-wip-us.apache.org/repos/asf/incubator-blur/repo
> Commit:
> http://git-wip-us.apache.org/repos/asf/incubator-blur/commit/5bb71276
> Tree: http://git-wip-us.apache.org/repos/asf/incubator-blur/tree/5bb71276
> Diff: http://git-wip-us.apache.org/repos/asf/incubator-blur/diff/5bb71276
>
> Branch: refs/heads/master
> Commit: 5bb71276a3d701682e2baafd44c8145d816f345c
> Parents: a30a1da
> Author: Rahul Challapalli <challapallirahul@gmail.com>
> Authored: Mon Sep 16 23:29:36 2013 -0700
> Committer: Rahul Challapalli <challapallirahul@gmail.com>
> Committed: Mon Sep 16 23:29:36 2013 -0700
>
> ----------------------------------------------------------------------
>  .../blur/thrift/BlurControllerServer.java       | 19 ++++---
>  .../blur/shell/CreateSnapshotCommand.java       | 37 ++++++++++++++
>  .../apache/blur/shell/ListSnapshotsCommand.java | 52 ++++++++++++++++++++
>  .../main/java/org/apache/blur/shell/Main.java   |  5 +-
>  .../blur/shell/RemoveSnapshotCommand.java       | 35 +++++++++++++
>  5 files changed, 141 insertions(+), 7 deletions(-)
> ----------------------------------------------------------------------
>
>
>
> http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/5bb71276/blur-core/src/main/java/org/apache/blur/thrift/BlurControllerServer.java
> ----------------------------------------------------------------------
> diff --git
> a/blur-core/src/main/java/org/apache/blur/thrift/BlurControllerServer.java
> b/blur-core/src/main/java/org/apache/blur/thrift/BlurControllerServer.java
> index 1376898..b1b0bf7 100644
> ---
> a/blur-core/src/main/java/org/apache/blur/thrift/BlurControllerServer.java
> +++
> b/blur-core/src/main/java/org/apache/blur/thrift/BlurControllerServer.java
> @@ -853,9 +853,11 @@ public class BlurControllerServer extends TableAdmin
> implements Iface {
>          }
>        });
>      } catch (Exception e) {
> -      LOG.error("Unknown error while trying to create a snapshot of table
> [{0}] snapshot name", e, table, name);
> -      throw new BException("Unknown error while trying to create a
> snapshot of table [{0}] snapshot name", e, table,
> -          name);
> +      if (e instanceof BlurException) {
> +        throw (BlurException) e;
> +      }
> +      LOG.error("Unknown error while trying to create a snapshot [{0}] of
> table [{1}]", e, name, table);
> +      throw new BException("Unknown error while trying to create a
> snapshot [{0}] of table [{1}]", e, name, table);
>      }
>    }
>
> @@ -871,9 +873,11 @@ public class BlurControllerServer extends TableAdmin
> implements Iface {
>          }
>        });
>      } catch (Exception e) {
> -      LOG.error("Unknown error while trying to remove a snapshot of table
> [{0}] snapshot name", e, table, name);
> -      throw new BException("Unknown error while trying to remove a
> snapshot of table [{0}] snapshot name", e, table,
> -          name);
> +      if (e instanceof BlurException) {
> +        throw (BlurException) e;
> +      }
> +      LOG.error("Unknown error while trying to remove a snapshot [{0}] of
> table [{1}]", e, name, table);
> +      throw new BException("Unknown error while trying to remove a
> snapshot [{0}] of table [{1}]", e, name, table);
>      }
>    }
>
> @@ -908,6 +912,9 @@ public class BlurControllerServer extends TableAdmin
> implements Iface {
>          }
>        });
>      } catch (Exception e) {
> +      if (e instanceof BlurException) {
> +        throw (BlurException) e;
> +      }
>        LOG.error("Unknown error while trying to get the list of snapshots
> for table [{0}]", e, table);
>        throw new BException("Unknown error while trying to get the list of
> snapshots for table [{0}]", e, table);
>      }
>
>
> http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/5bb71276/blur-shell/src/main/java/org/apache/blur/shell/CreateSnapshotCommand.java
> ----------------------------------------------------------------------
> diff --git
> a/blur-shell/src/main/java/org/apache/blur/shell/CreateSnapshotCommand.java
> b/blur-shell/src/main/java/org/apache/blur/shell/CreateSnapshotCommand.java
> new file mode 100644
> index 0000000..0e04696
> --- /dev/null
> +++
> b/blur-shell/src/main/java/org/apache/blur/shell/CreateSnapshotCommand.java
> @@ -0,0 +1,37 @@
> +package org.apache.blur.shell;
> +
> +import java.io.PrintWriter;
> +
> +import org.apache.blur.thirdparty.thrift_0_9_0.TException;
> +import org.apache.blur.thrift.generated.Blur.Iface;
> +import org.apache.blur.thrift.generated.BlurException;
> +
> +public class CreateSnapshotCommand  extends Command {
> +
> +  @Override
> +  public void doit(PrintWriter out, Iface client, String[] args)
> +      throws CommandException, TException, BlurException {
> +    if (args.length != 3) {
> +      throw new CommandException("Invalid args: " + help());
> +    }
> +    String tablename = args[1];
> +    String snapshotName = args[2];
> +    client.createSnapshot(tablename, snapshotName);
> +  }
> +
> +  @Override
> +  public String description() {
> +    return "Create a named snapshot";
> +  }
> +
> +  @Override
> +  public String usage() {
> +    return "<tablename> <snapshotname>";
> +  }
> +
> +  @Override
> +  public String name() {
> +    return "create-snapshot";
> +  }
> +
> +}
>
>
> http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/5bb71276/blur-shell/src/main/java/org/apache/blur/shell/ListSnapshotsCommand.java
> ----------------------------------------------------------------------
> diff --git
> a/blur-shell/src/main/java/org/apache/blur/shell/ListSnapshotsCommand.java
> b/blur-shell/src/main/java/org/apache/blur/shell/ListSnapshotsCommand.java
> new file mode 100644
> index 0000000..8b4261b
> --- /dev/null
> +++
> b/blur-shell/src/main/java/org/apache/blur/shell/ListSnapshotsCommand.java
> @@ -0,0 +1,52 @@
> +package org.apache.blur.shell;
> +
> +import java.io.PrintWriter;
> +import java.util.List;
> +import java.util.Map;
> +import java.util.Map.Entry;
> +
> +import org.apache.blur.thirdparty.thrift_0_9_0.TException;
> +import org.apache.blur.thrift.generated.BlurException;
> +import org.apache.blur.thrift.generated.Blur.Iface;
> +
> +public class ListSnapshotsCommand extends Command {
> +
> +  @Override
> +  public void doit(PrintWriter out, Iface client, String[] args)
> +      throws CommandException, TException, BlurException {
> +    if (args.length != 2) {
> +      throw new CommandException("Invalid args: " + help());
> +    }
> +    String tablename = args[1];
> +    Map<String, List<String>> snapshotsPerShard =
> client.listSnapshots(tablename);
> +    for (Entry<String, List<String>> entry :
> snapshotsPerShard.entrySet()) {
> +      String shard = entry.getKey();
> +      out.print(shard + " : ");
> +      int count = 0;
> +      for (String snapshot : entry.getValue()) {
> +        count++;
> +        if (count == entry.getValue().size()) {
> +          out.println(snapshot);
> +        } else {
> +          out.print(snapshot + ", ");
> +        }
> +      }
> +    }
> +  }
> +
> +  @Override
> +  public String description() {
> +    return "List the existing snapshots of a table";
> +  }
> +
> +  @Override
> +  public String usage() {
> +    return "<tablename>";
> +  }
> +
> +  @Override
> +  public String name() {
> +    return "list-snapshots";
> +  }
> +
> +}
>
>
> http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/5bb71276/blur-shell/src/main/java/org/apache/blur/shell/Main.java
> ----------------------------------------------------------------------
> diff --git a/blur-shell/src/main/java/org/apache/blur/shell/Main.java
> b/blur-shell/src/main/java/org/apache/blur/shell/Main.java
> index 27362d7..5868cd3 100644
> --- a/blur-shell/src/main/java/org/apache/blur/shell/Main.java
> +++ b/blur-shell/src/main/java/org/apache/blur/shell/Main.java
> @@ -301,7 +301,7 @@ public class Main {
>
>    public static String[] tableCommands = { "create", "enable", "disable",
> "remove", "truncate", "describe", "list",
>        "schema", "stats", "layout", "parse", "definecolumn" };
> -  public static String[] dataCommands = { "query", "get", "mutate",
> "delete", "highlight", "selector", "terms" };
> +  public static String[] dataCommands = { "query", "get", "mutate",
> "delete", "highlight", "selector", "terms", "create-snapshot",
> "remove-snapshot", "list-snapshots"};
>    public static String[] clusterCommands = { "controllers", "shards",
> "clusterlist", "cluster", "safemodewait", "top" };
>    public static String[] shellCommands = { "help", "debug", "timed",
> "quit", "reset" };
>
> @@ -554,6 +554,9 @@ public class Main {
>      register(builder, new SelectorCommand());
>      register(builder, new AddColumnDefinitionCommand());
>      register(builder, new ResetCommand());
> +    register(builder, new CreateSnapshotCommand());
> +    register(builder, new RemoveSnapshotCommand());
> +    register(builder, new ListSnapshotsCommand());
>      commands = builder.build();
>    }
>
>
>
> http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/5bb71276/blur-shell/src/main/java/org/apache/blur/shell/RemoveSnapshotCommand.java
> ----------------------------------------------------------------------
> diff --git
> a/blur-shell/src/main/java/org/apache/blur/shell/RemoveSnapshotCommand.java
> b/blur-shell/src/main/java/org/apache/blur/shell/RemoveSnapshotCommand.java
> new file mode 100644
> index 0000000..a56e6c7
> --- /dev/null
> +++
> b/blur-shell/src/main/java/org/apache/blur/shell/RemoveSnapshotCommand.java
> @@ -0,0 +1,35 @@
> +package org.apache.blur.shell;
> +
> +import java.io.PrintWriter;
> +
> +import org.apache.blur.thirdparty.thrift_0_9_0.TException;
> +import org.apache.blur.thrift.generated.BlurException;
> +import org.apache.blur.thrift.generated.Blur.Iface;
> +
> +public class RemoveSnapshotCommand extends Command {
> +  @Override
> +  public void doit(PrintWriter out, Iface client, String[] args)
> +      throws CommandException, TException, BlurException {
> +    if (args.length != 3) {
> +      throw new CommandException("Invalid args: " + help());
> +    }
> +    String tablename = args[1];
> +    String snapshotName = args[2];
> +    client.removeSnapshot(tablename, snapshotName);
> +  }
> +
> +  @Override
> +  public String description() {
> +    return "Remove a named snapshot";
> +  }
> +
> +  @Override
> +  public String usage() {
> +    return "<tablename> <snapshotname>";
> +  }
> +
> +  @Override
> +  public String name() {
> +    return "remove-snapshot";
> +  }
> +}
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message