Java 类org.apache.hadoop.hbase.protobuf.generated.MasterProtos.RestoreSnapshotResponse 实例源码

项目:ditb    文件:HBaseAdmin.java   
/**
 * Execute Restore/Clone snapshot and wait for the server to complete (asynchronous)
 * <p>
 * Only a single snapshot should be restored at a time, or results may be undefined.
 * @param snapshot snapshot to restore
 * @return response from the server indicating the max time to wait for the snapshot
 * @throws IOException if a remote or network exception occurs
 * @throws RestoreSnapshotException if snapshot failed to be restored
 * @throws IllegalArgumentException if the restore request is formatted incorrectly
 */
private RestoreSnapshotResponse internalRestoreSnapshotAsync(final SnapshotDescription snapshot)
    throws IOException, RestoreSnapshotException {
  ClientSnapshotDescriptionUtils.assertSnapshotRequestIsValid(snapshot);

  final RestoreSnapshotRequest request = RestoreSnapshotRequest.newBuilder().setSnapshot(snapshot)
      .build();

  // run the snapshot restore on the master
  return executeCallable(new MasterCallable<RestoreSnapshotResponse>(getConnection()) {
    @Override
    public RestoreSnapshotResponse call(int callTimeout) throws ServiceException {
      PayloadCarryingRpcController controller = rpcControllerFactory.newController();
      controller.setCallTimeout(callTimeout);
      return master.restoreSnapshot(controller, request);
    }
  });
}
项目:pbase    文件:MasterRpcServices.java   
/**
 * Execute Restore/Clone snapshot operation.
 *
 * <p>If the specified table exists a "Restore" is executed, replacing the table
 * schema and directory data with the content of the snapshot.
 * The table must be disabled, or a UnsupportedOperationException will be thrown.
 *
 * <p>If the table doesn't exist a "Clone" is executed, a new table is created
 * using the schema at the time of the snapshot, and the content of the snapshot.
 *
 * <p>The restore/clone operation does not require copying HFiles. Since HFiles
 * are immutable the table can point to and use the same files as the original one.
 */
@Override
public RestoreSnapshotResponse restoreSnapshot(RpcController controller,
    RestoreSnapshotRequest request) throws ServiceException {
  try {
    master.checkInitialized();
    master.snapshotManager.checkSnapshotSupport();

  // ensure namespace exists
    TableName dstTable = TableName.valueOf(request.getSnapshot().getTable());
    master.getNamespaceDescriptor(dstTable.getNamespaceAsString());

    SnapshotDescription reqSnapshot = request.getSnapshot();
    master.snapshotManager.restoreSnapshot(reqSnapshot);
    return RestoreSnapshotResponse.newBuilder().build();
  } catch (IOException e) {
    throw new ServiceException(e);
  }
}
项目:pbase    文件:HBaseAdmin.java   
/**
 * Execute Restore/Clone snapshot and wait for the server to complete (asynchronous)
 * <p>
 * Only a single snapshot should be restored at a time, or results may be undefined.
 * @param snapshot snapshot to restore
 * @return response from the server indicating the max time to wait for the snapshot
 * @throws IOException if a remote or network exception occurs
 * @throws RestoreSnapshotException if snapshot failed to be restored
 * @throws IllegalArgumentException if the restore request is formatted incorrectly
 */
private RestoreSnapshotResponse internalRestoreSnapshotAsync(final SnapshotDescription snapshot)
    throws IOException, RestoreSnapshotException {
  ClientSnapshotDescriptionUtils.assertSnapshotRequestIsValid(snapshot);

  final RestoreSnapshotRequest request = RestoreSnapshotRequest.newBuilder().setSnapshot(snapshot)
      .build();

  // run the snapshot restore on the master
  return executeCallable(new MasterCallable<RestoreSnapshotResponse>(getConnection()) {
    @Override
    public RestoreSnapshotResponse call(int callTimeout) throws ServiceException {
      return master.restoreSnapshot(null, request);
    }
  });
}
项目:HIndex    文件:HBaseAdmin.java   
/**
 * Execute Restore/Clone snapshot and wait for the server to complete (asynchronous)
 * <p>
 * Only a single snapshot should be restored at a time, or results may be undefined.
 * @param snapshot snapshot to restore
 * @return response from the server indicating the max time to wait for the snapshot
 * @throws IOException if a remote or network exception occurs
 * @throws RestoreSnapshotException if snapshot failed to be restored
 * @throws IllegalArgumentException if the restore request is formatted incorrectly
 */
private RestoreSnapshotResponse internalRestoreSnapshotAsync(final SnapshotDescription snapshot)
    throws IOException, RestoreSnapshotException {
  ClientSnapshotDescriptionUtils.assertSnapshotRequestIsValid(snapshot);

  final RestoreSnapshotRequest request = RestoreSnapshotRequest.newBuilder().setSnapshot(snapshot)
      .build();

  // run the snapshot restore on the master
  return executeCallable(new MasterCallable<RestoreSnapshotResponse>(getConnection()) {
    @Override
    public RestoreSnapshotResponse call() throws ServiceException {
      return master.restoreSnapshot(null, request);
    }
  });
}
项目:PyroDB    文件:MasterRpcServices.java   
/**
 * Execute Restore/Clone snapshot operation.
 *
 * <p>If the specified table exists a "Restore" is executed, replacing the table
 * schema and directory data with the content of the snapshot.
 * The table must be disabled, or a UnsupportedOperationException will be thrown.
 *
 * <p>If the table doesn't exist a "Clone" is executed, a new table is created
 * using the schema at the time of the snapshot, and the content of the snapshot.
 *
 * <p>The restore/clone operation does not require copying HFiles. Since HFiles
 * are immutable the table can point to and use the same files as the original one.
 */
@Override
public RestoreSnapshotResponse restoreSnapshot(RpcController controller,
    RestoreSnapshotRequest request) throws ServiceException {
  try {
    master.checkInitialized();
    master.snapshotManager.checkSnapshotSupport();

  // ensure namespace exists
    TableName dstTable = TableName.valueOf(request.getSnapshot().getTable());
    master.getNamespaceDescriptor(dstTable.getNamespaceAsString());

    SnapshotDescription reqSnapshot = request.getSnapshot();
    master.snapshotManager.restoreSnapshot(reqSnapshot);
    return RestoreSnapshotResponse.newBuilder().build();
  } catch (IOException e) {
    throw new ServiceException(e);
  }
}
项目:PyroDB    文件:HBaseAdmin.java   
/**
 * Execute Restore/Clone snapshot and wait for the server to complete (asynchronous)
 * <p>
 * Only a single snapshot should be restored at a time, or results may be undefined.
 * @param snapshot snapshot to restore
 * @return response from the server indicating the max time to wait for the snapshot
 * @throws IOException if a remote or network exception occurs
 * @throws RestoreSnapshotException if snapshot failed to be restored
 * @throws IllegalArgumentException if the restore request is formatted incorrectly
 */
private RestoreSnapshotResponse internalRestoreSnapshotAsync(final SnapshotDescription snapshot)
    throws IOException, RestoreSnapshotException {
  ClientSnapshotDescriptionUtils.assertSnapshotRequestIsValid(snapshot);

  final RestoreSnapshotRequest request = RestoreSnapshotRequest.newBuilder().setSnapshot(snapshot)
      .build();

  // run the snapshot restore on the master
  return executeCallable(new MasterCallable<RestoreSnapshotResponse>(getConnection()) {
    @Override
    public RestoreSnapshotResponse call(int callTimeout) throws ServiceException {
      return master.restoreSnapshot(null, request);
    }
  });
}
项目:c5    文件:HBaseAdmin.java   
/**
 * Execute Restore/Clone snapshot and wait for the server to complete (asynchronous)
 * <p>
 * Only a single snapshot should be restored at a time, or results may be undefined.
 * @param snapshot snapshot to restore
 * @return response from the server indicating the max time to wait for the snapshot
 * @throws IOException if a remote or network exception occurs
 * @throws RestoreSnapshotException if snapshot failed to be restored
 * @throws IllegalArgumentException if the restore request is formatted incorrectly
 */
private RestoreSnapshotResponse internalRestoreSnapshotAsync(final SnapshotDescription snapshot)
    throws IOException, RestoreSnapshotException {
  ClientSnapshotDescriptionUtils.assertSnapshotRequestIsValid(snapshot);

  final RestoreSnapshotRequest request = RestoreSnapshotRequest.newBuilder().setSnapshot(snapshot)
      .build();

  // run the snapshot restore on the master
  return executeCallable(new MasterCallable<RestoreSnapshotResponse>(getConnection()) {
    @Override
    public RestoreSnapshotResponse call() throws ServiceException {
      return master.restoreSnapshot(null, request);
    }
  });
}