[accumulo] Initial import (#1117077).

Christopher Tubbs ctubbsii at fedoraproject.org
Wed Jul 9 17:52:53 UTC 2014


commit 9b803b8fc9d38a355789fdee88e16a247d344c39
Author: Christopher Tubbs <ctubbsii at apache.org>
Date:   Wed Jul 9 17:52:55 2014 +0000

    Initial import (#1117077).

 .gitignore                  |    1 +
 ACCUMULO-1691.patch         |  445 +
 ACCUMULO-2762.patch         |   25 +
 ACCUMULO-2773.patch         |42423 +++++++++++++++++++++++++++++++++++++++++++
 ACCUMULO-2808.patch         |  406 +
 ACCUMULO-2812.patch         |   60 +
 ACCUMULO-2950.patch         |  456 +
 accumulo-gc.service         |   11 +
 accumulo-master.service     |   11 +
 accumulo-tracer.service     |   11 +
 accumulo-tserver.service    |   11 +
 accumulo.spec               |  527 +
 commons-configuration.patch |   27 +
 commons-math.patch          |   23 +
 disabled-tests.patch        |   40 +
 native-code.patch           |   26 +
 sources                     |    1 +
 17 files changed, 44504 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..db1097f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/accumulo-1.6.0-0616258.tar.gz
diff --git a/ACCUMULO-1691.patch b/ACCUMULO-1691.patch
new file mode 100644
index 0000000..4933691
--- /dev/null
+++ b/ACCUMULO-1691.patch
@@ -0,0 +1,445 @@
+From b65a009a41e9a5ad3619e31c4d56cebee406187c Mon Sep 17 00:00:00 2001
+From: Christopher Tubbs <ctubbsii at apache.org>
+Date: Fri, 2 May 2014 16:33:24 -0400
+Subject: [PATCH] ACCUMULO-1691 Support Thrift 0.9.1
+
+  Enforce version 0.9.1 until THRIFT-2173 is implemented, and provide a custom
+  server so we can access the underlying transport to get the client address.
+---
+ pom.xml                                            |  40 +--
+ .../server/util/CustomNonBlockingServer.java       | 268 +++++++++++++++++++++
+ .../apache/accumulo/server/util/TServerUtils.java  |  41 +---
+ 3 files changed, 299 insertions(+), 50 deletions(-)
+ create mode 100644 server/base/src/main/java/org/apache/accumulo/server/util/CustomNonBlockingServer.java
+
+diff --git a/pom.xml b/pom.xml
+index 43aa5fb..c371028 100644
+--- a/pom.xml
++++ b/pom.xml
+@@ -133,6 +133,8 @@
+     <sealJars>false</sealJars>
+     <!-- overwritten in profiles hadoop-1 or hadoop-2 -->
+     <slf4j.version>1.7.5</slf4j.version>
++    <!-- Thrift version -->
++    <thrift.version>0.9.1</thrift.version>
+     <!-- ZooKeeper 3.4.x works also, but we're not using new features yet; this ensures 3.3.x compatibility. -->
+     <zookeeper.version>3.3.6</zookeeper.version>
+   </properties>
+@@ -379,7 +381,7 @@
+       <dependency>
+         <groupId>org.apache.thrift</groupId>
+         <artifactId>libthrift</artifactId>
+-        <version>0.9.0</version>
++        <version>${thrift.version}</version>
+       </dependency>
+       <dependency>
+         <groupId>org.apache.zookeeper</groupId>
+@@ -745,6 +747,29 @@
+             </lifecycleMappingMetadata>
+           </configuration>
+         </plugin>
++        <plugin>
++          <groupId>org.apache.maven.plugins</groupId>
++          <artifactId>maven-enforcer-plugin</artifactId>
++          <configuration>
++            <rules>
++              <requireMavenVersion>
++                <version>[${maven.min-version},)</version>
++              </requireMavenVersion>
++              <requireProperty>
++                <property>hadoop.profile</property>
++                <regex>(1|2)</regex>
++                <regexMessage>You should specify the Hadoop profile by major Hadoop generation, i.e. 1 or 2, not by a version number.
++  Use hadoop.version to use a particular Hadoop version within that generation. See README for more details.</regexMessage>
++              </requireProperty>
++              <requireProperty>
++                <property>thrift.version</property>
++                <regex>0[.]9[.]1</regex>
++                <regexMessage>Thrift version must be 0.9.1; Any alteration requires a review of ACCUMULO-1691
++                  (See server/base/src/main/java/org/apache/accumulo/server/util/CustomNonBlockingServer.java)</regexMessage>
++              </requireProperty>
++            </rules>
++          </configuration>
++        </plugin>
+       </plugins>
+     </pluginManagement>
+     <plugins>
+@@ -771,19 +796,6 @@
+             <goals>
+               <goal>enforce</goal>
+             </goals>
+-            <configuration>
+-              <rules>
+-                <requireMavenVersion>
+-                  <version>[${maven.min-version},)</version>
+-                </requireMavenVersion>
+-                <requireProperty>
+-                  <property>hadoop.profile</property>
+-                  <regex>(1|2)</regex>
+-                  <regexMessage>You should specify the Hadoop profile by major Hadoop generation, i.e. 1 or 2, not by a version number.
+-    Use hadoop.version to use a particular Hadoop version within that generation. See README for more details.</regexMessage>
+-                </requireProperty>
+-              </rules>
+-            </configuration>
+           </execution>
+         </executions>
+       </plugin>
+diff --git a/server/base/src/main/java/org/apache/accumulo/server/util/CustomNonBlockingServer.java b/server/base/src/main/java/org/apache/accumulo/server/util/CustomNonBlockingServer.java
+new file mode 100644
+index 0000000..0f01068
+--- /dev/null
++++ b/server/base/src/main/java/org/apache/accumulo/server/util/CustomNonBlockingServer.java
+@@ -0,0 +1,268 @@
++/*
++ * Licensed to the Apache Software Foundation (ASF) under one or more
++ * contributor license agreements.  See the NOTICE file distributed with
++ * this work for additional information regarding copyright ownership.
++ * The ASF licenses this file to You under the Apache License, Version 2.0
++ * (the "License"); you may not use this file except in compliance with
++ * the License.  You may obtain a copy of the License at
++ *
++ *     http://www.apache.org/licenses/LICENSE-2.0
++ *
++ * Unless required by applicable law or agreed to in writing, software
++ * distributed under the License is distributed on an "AS IS" BASIS,
++ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
++ * See the License for the specific language governing permissions and
++ * limitations under the License.
++ */
++package org.apache.accumulo.server.util;
++
++import java.io.IOException;
++import java.net.Socket;
++import java.nio.channels.SelectionKey;
++import java.util.Iterator;
++
++import org.apache.log4j.Logger;
++import org.apache.thrift.server.THsHaServer;
++import org.apache.thrift.server.TNonblockingServer;
++import org.apache.thrift.transport.TNonblockingServerTransport;
++import org.apache.thrift.transport.TNonblockingSocket;
++import org.apache.thrift.transport.TNonblockingTransport;
++import org.apache.thrift.transport.TTransportException;
++
++/**
++ * This class implements a custom non-blocking thrift server, incorporating the {@link THsHaServer} features, and overriding the underlying
++ * {@link TNonblockingServer} methods, especially {@link org.apache.thrift.server.TNonblockingServer.SelectAcceptThread}, in order to override the
++ * {@link org.apache.thrift.server.AbstractNonblockingServer.FrameBuffer} and {@link org.apache.thrift.server.AbstractNonblockingServer.AsyncFrameBuffer} with
++ * one that reveals the client address from its transport.
++ * 
++ * <p>
++ * The justification for this is explained in https://issues.apache.org/jira/browse/ACCUMULO-1691, and is needed due to the repeated regressions:
++ * <ul>
++ * <li>https://issues.apache.org/jira/browse/THRIFT-958</li>
++ * <li>https://issues.apache.org/jira/browse/THRIFT-1464</li>
++ * <li>https://issues.apache.org/jira/browse/THRIFT-2173</li>
++ * </ul>
++ * 
++ * <p>
++ * This class contains a copy of {@link org.apache.thrift.server.TNonblockingServer.SelectAcceptThread} from Thrift 0.9.1, with the slight modification of
++ * instantiating a custom FrameBuffer, rather than the {@link org.apache.thrift.server.AbstractNonblockingServer.FrameBuffer} and
++ * {@link org.apache.thrift.server.AbstractNonblockingServer.AsyncFrameBuffer}. Because of this, any change in the implementation upstream will require a review
++ * of this implementation here, to ensure any new bugfixes/features in the upstream Thrift class are also applied here, at least until
++ * https://issues.apache.org/jira/browse/THRIFT-2173 is implemented. In the meantime, the maven-enforcer-plugin ensures that Thrift remains at version 0.9.1,
++ * which has been reviewed and tested.
++ */
++public class CustomNonBlockingServer extends THsHaServer {
++
++  private static final Logger LOGGER = Logger.getLogger(CustomNonBlockingServer.class);
++  private SelectAcceptThread selectAcceptThread_;
++  private volatile boolean stopped_ = false;
++
++  public CustomNonBlockingServer(Args args) {
++    super(args);
++  }
++
++  @Override
++  protected Runnable getRunnable(final FrameBuffer frameBuffer) {
++    return new Runnable() {
++      @Override
++      public void run() {
++        if (frameBuffer instanceof CustomNonblockingFrameBuffer) {
++          TNonblockingTransport trans = ((CustomNonblockingFrameBuffer) frameBuffer).getTransport();
++          if (trans instanceof TNonblockingSocket) {
++            TNonblockingSocket tsock = (TNonblockingSocket) trans;
++            Socket sock = tsock.getSocketChannel().socket();
++            TServerUtils.clientAddress.set(sock.getInetAddress().getHostAddress() + ":" + sock.getPort());
++          }
++        }
++        frameBuffer.invoke();
++      }
++    };
++  }
++
++  @Override
++  protected boolean startThreads() {
++    // start the selector
++    try {
++      selectAcceptThread_ = new SelectAcceptThread((TNonblockingServerTransport) serverTransport_);
++      selectAcceptThread_.start();
++      return true;
++    } catch (IOException e) {
++      LOGGER.error("Failed to start selector thread!", e);
++      return false;
++    }
++  }
++
++  @Override
++  public void stop() {
++    stopped_ = true;
++    if (selectAcceptThread_ != null) {
++      selectAcceptThread_.wakeupSelector();
++    }
++  }
++
++  @Override
++  public boolean isStopped() {
++    return selectAcceptThread_.isStopped();
++  }
++
++  @Override
++  protected void joinSelector() {
++    // wait until the selector thread exits
++    try {
++      selectAcceptThread_.join();
++    } catch (InterruptedException e) {
++      // for now, just silently ignore. technically this means we'll have less of
++      // a graceful shutdown as a result.
++    }
++  }
++
++  private interface CustomNonblockingFrameBuffer {
++    TNonblockingTransport getTransport();
++  }
++
++  private class CustomAsyncFrameBuffer extends AsyncFrameBuffer implements CustomNonblockingFrameBuffer {
++    private TNonblockingTransport trans;
++
++    public CustomAsyncFrameBuffer(TNonblockingTransport trans, SelectionKey selectionKey, AbstractSelectThread selectThread) {
++      super(trans, selectionKey, selectThread);
++      this.trans = trans;
++    }
++
++    @Override
++    public TNonblockingTransport getTransport() {
++      return trans;
++    }
++  }
++
++  private class CustomFrameBuffer extends FrameBuffer implements CustomNonblockingFrameBuffer {
++    private TNonblockingTransport trans;
++
++    public CustomFrameBuffer(TNonblockingTransport trans, SelectionKey selectionKey, AbstractSelectThread selectThread) {
++      super(trans, selectionKey, selectThread);
++      this.trans = trans;
++    }
++
++    @Override
++    public TNonblockingTransport getTransport() {
++      return trans;
++    }
++  }
++
++  // @formatter:off
++  private class SelectAcceptThread extends AbstractSelectThread {
++
++    // The server transport on which new client transports will be accepted
++    private final TNonblockingServerTransport serverTransport;
++
++    /**
++     * Set up the thread that will handle the non-blocking accepts, reads, and
++     * writes.
++     */
++    public SelectAcceptThread(final TNonblockingServerTransport serverTransport)
++    throws IOException {
++      this.serverTransport = serverTransport;
++      serverTransport.registerSelector(selector);
++    }
++
++    public boolean isStopped() {
++      return stopped_;
++    }
++
++    /**
++     * The work loop. Handles both selecting (all IO operations) and managing
++     * the selection preferences of all existing connections.
++     */
++    @Override
++    public void run() {
++      try {
++        if (eventHandler_ != null) {
++          eventHandler_.preServe();
++        }
++
++        while (!stopped_) {
++          select();
++          processInterestChanges();
++        }
++        for (SelectionKey selectionKey : selector.keys()) {
++          cleanupSelectionKey(selectionKey);
++        }
++      } catch (Throwable t) {
++        LOGGER.error("run() exiting due to uncaught error", t);
++      } finally {
++        stopped_ = true;
++      }
++    }
++
++    /**
++     * Select and process IO events appropriately:
++     * If there are connections to be accepted, accept them.
++     * If there are existing connections with data waiting to be read, read it,
++     * buffering until a whole frame has been read.
++     * If there are any pending responses, buffer them until their target client
++     * is available, and then send the data.
++     */
++    private void select() {
++      try {
++        // wait for io events.
++        selector.select();
++
++        // process the io events we received
++        Iterator<SelectionKey> selectedKeys = selector.selectedKeys().iterator();
++        while (!stopped_ && selectedKeys.hasNext()) {
++          SelectionKey key = selectedKeys.next();
++          selectedKeys.remove();
++
++          // skip if not valid
++          if (!key.isValid()) {
++            cleanupSelectionKey(key);
++            continue;
++          }
++
++          // if the key is marked Accept, then it has to be the server
++          // transport.
++          if (key.isAcceptable()) {
++            handleAccept();
++          } else if (key.isReadable()) {
++            // deal with reads
++            handleRead(key);
++          } else if (key.isWritable()) {
++            // deal with writes
++            handleWrite(key);
++          } else {
++            LOGGER.warn("Unexpected state in select! " + key.interestOps());
++          }
++        }
++      } catch (IOException e) {
++        LOGGER.warn("Got an IOException while selecting!", e);
++      }
++    }
++
++    /**
++     * Accept a new connection.
++     */
++    @SuppressWarnings("unused")
++    private void handleAccept() throws IOException {
++      SelectionKey clientKey = null;
++      TNonblockingTransport client = null;
++      try {
++        // accept the connection
++        client = (TNonblockingTransport)serverTransport.accept();
++        clientKey = client.registerSelector(selector, SelectionKey.OP_READ);
++
++        // add this key to the map
++          FrameBuffer frameBuffer = processorFactory_.isAsyncProcessor() ?
++                  new CustomAsyncFrameBuffer(client, clientKey,SelectAcceptThread.this) :
++                  new CustomFrameBuffer(client, clientKey,SelectAcceptThread.this);
++
++          clientKey.attach(frameBuffer);
++      } catch (TTransportException tte) {
++        // something went wrong accepting.
++        LOGGER.warn("Exception trying to accept!", tte);
++        tte.printStackTrace();
++        if (clientKey != null) cleanupSelectionKey(clientKey);
++        if (client != null) client.close();
++      }
++    }
++  } // SelectAcceptThread
++  // @formatter:on
++}
+diff --git a/server/base/src/main/java/org/apache/accumulo/server/util/TServerUtils.java b/server/base/src/main/java/org/apache/accumulo/server/util/TServerUtils.java
+index 6d9e4c7..84d27c2 100644
+--- a/server/base/src/main/java/org/apache/accumulo/server/util/TServerUtils.java
++++ b/server/base/src/main/java/org/apache/accumulo/server/util/TServerUtils.java
+@@ -22,7 +22,6 @@ import java.net.BindException;
+ import java.net.InetAddress;
+ import java.net.InetSocketAddress;
+ import java.net.ServerSocket;
+-import java.net.Socket;
+ import java.net.UnknownHostException;
+ import java.nio.channels.ServerSocketChannel;
+ import java.util.Random;
+@@ -47,7 +46,6 @@ import org.apache.thrift.TProcessorFactory;
+ import org.apache.thrift.protocol.TProtocol;
+ import org.apache.thrift.server.TServer;
+ import org.apache.thrift.server.TThreadPoolServer;
+-import org.apache.thrift.transport.TNonblockingSocket;
+ import org.apache.thrift.transport.TServerTransport;
+ import org.apache.thrift.transport.TSocket;
+ import org.apache.thrift.transport.TTransport;
+@@ -203,40 +201,11 @@ public class TServerUtils {
+     }
+   }
+ 
+-  public static class THsHaServer extends org.apache.thrift.server.THsHaServer {
+-    public THsHaServer(Args args) {
+-      super(args);
+-    }
+-
+-    @Override
+-    protected Runnable getRunnable(FrameBuffer frameBuffer) {
+-      return new Invocation(frameBuffer);
+-    }
+-
+-    private class Invocation implements Runnable {
+-
+-      private final FrameBuffer frameBuffer;
+-
+-      public Invocation(final FrameBuffer frameBuffer) {
+-        this.frameBuffer = frameBuffer;
+-      }
+-
+-      @Override
+-      public void run() {
+-        if (frameBuffer.trans_ instanceof TNonblockingSocket) {
+-          TNonblockingSocket tsock = (TNonblockingSocket) frameBuffer.trans_;
+-          Socket sock = tsock.getSocketChannel().socket();
+-          clientAddress.set(sock.getInetAddress().getHostAddress() + ":" + sock.getPort());
+-        }
+-        frameBuffer.invoke();
+-      }
+-    }
+-  }
+-
+-  public static ServerAddress createHsHaServer(HostAndPort address, TProcessor processor, final String serverName, String threadName, final int numThreads,
++  public static ServerAddress createNonBlockingServer(HostAndPort address, TProcessor processor, final String serverName, String threadName,
++      final int numThreads,
+       long timeBetweenThreadChecks, long maxMessageSize) throws TTransportException {
+     TNonblockingServerSocket transport = new TNonblockingServerSocket(new InetSocketAddress(address.getHostText(), address.getPort()));
+-    THsHaServer.Args options = new THsHaServer.Args(transport);
++    CustomNonBlockingServer.Args options = new CustomNonBlockingServer.Args(transport);
+     options.protocolFactory(ThriftUtil.protocolFactory());
+     options.transportFactory(ThriftUtil.transportFactory(maxMessageSize));
+     options.maxReadBufferBytes = maxMessageSize;
+@@ -274,7 +243,7 @@ public class TServerUtils {
+     if (address.getPort() == 0) {
+       address = HostAndPort.fromParts(address.getHostText(), transport.getPort());
+     }
+-    return new ServerAddress(new THsHaServer(options), address);
++    return new ServerAddress(new CustomNonBlockingServer(options), address);
+   }
+ 
+   public static ServerAddress createThreadPoolServer(HostAndPort address, TProcessor processor, String serverName, String threadName, int numThreads)
+@@ -329,7 +298,7 @@ public class TServerUtils {
+     if (sslParams != null) {
+       serverAddress = createSslThreadPoolServer(address, processor, sslSocketTimeout, sslParams);
+     } else {
+-      serverAddress = createHsHaServer(address, processor, serverName, threadName, numThreads, timeBetweenThreadChecks, maxMessageSize);
++      serverAddress = createNonBlockingServer(address, processor, serverName, threadName, numThreads, timeBetweenThreadChecks, maxMessageSize);
+     }
+     final TServer finalServer = serverAddress.server;
+     Runnable serveTask = new Runnable() {
+-- 
+1.8.3.1
+
diff --git a/ACCUMULO-2762.patch b/ACCUMULO-2762.patch
new file mode 100644
index 0000000..caefc31
--- /dev/null
+++ b/ACCUMULO-2762.patch
@@ -0,0 +1,25 @@
+From 49a5dd64c3c5fa96b41912b6f08cfe93afed0356 Mon Sep 17 00:00:00 2001
+From: Christopher Tubbs <ctubbsii at apache.org>
+Date: Wed, 14 May 2014 12:30:55 -0400
+Subject: [PATCH] ACCUMULO-2762 Use all optimizations by default
+
+---
+ server/native/src/main/resources/Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/server/native/src/main/resources/Makefile b/server/native/src/main/resources/Makefile
+index 1ca79eb..33c2fe9 100644
+--- a/server/native/src/main/resources/Makefile
++++ b/server/native/src/main/resources/Makefile
+@@ -25,7 +25,7 @@ ifeq ($(shell uname),Linux)
+ 		JAVA_HOME=$(shell dirname $$(dirname $$(readlink -ef $$(which javah))))
+ 	endif
+ 	NATIVE_LIB := libaccumulo.so
+-	CXXFLAGS=-m64 -g -fPIC -shared -O2 -fno-omit-frame-pointer -fno-strict-aliasing -Wall -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux -Ijavah
++	CXXFLAGS=-m64 -g -fPIC -shared -O3 -Wall -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux -Ijavah
+ endif
+ 
+ ifeq ($(shell uname),Darwin)
+-- 
+1.8.3.1
+
diff --git a/ACCUMULO-2773.patch b/ACCUMULO-2773.patch
new file mode 100644
index 0000000..c849c72
--- /dev/null
+++ b/ACCUMULO-2773.patch
@@ -0,0 +1,42423 @@
+From 520f5fdeec9dad127f3288f15f204daf3c75b317 Mon Sep 17 00:00:00 2001
+From: Christopher Tubbs <ctubbsii at apache.org>
+Date: Fri, 2 May 2014 17:30:04 -0400
+Subject: [PATCH 2/2] ACCUMULO-2773 Regenerate sources for Thrift 0.9.1
+
+---
+ .../core/client/impl/thrift/ClientService.java     | 2939 +++++--
+ .../core/client/impl/thrift/ConfigurationType.java |    2 +-
+ .../core/client/impl/thrift/SecurityErrorCode.java |    2 +-
+ .../core/client/impl/thrift/TDiskUsage.java        |   25 +-
+ .../core/client/impl/thrift/TableOperation.java    |    2 +-
+ .../impl/thrift/TableOperationExceptionType.java   |    2 +-
+ .../impl/thrift/ThriftSecurityException.java       |   16 +-
+ .../impl/thrift/ThriftTableOperationException.java |   28 +-
+ .../core/client/impl/thrift/ThriftTest.java        |  243 +-
+ .../core/data/thrift/InitialMultiScan.java         |   16 +-
+ .../accumulo/core/data/thrift/InitialScan.java     |   16 +-
+ .../apache/accumulo/core/data/thrift/IterInfo.java |   20 +-
+ .../accumulo/core/data/thrift/MapFileInfo.java     |   12 +-
+ .../accumulo/core/data/thrift/MultiScanResult.java |   60 +-
+ .../accumulo/core/data/thrift/ScanResult.java      |   22 +-
+ .../accumulo/core/data/thrift/TCMResult.java       |   16 +-
+ .../accumulo/core/data/thrift/TCMStatus.java       |    2 +-
+ .../apache/accumulo/core/data/thrift/TColumn.java  |   20 +-
+ .../accumulo/core/data/thrift/TCondition.java      |   36 +-
+ .../core/data/thrift/TConditionalMutation.java     |   26 +-
+ .../core/data/thrift/TConditionalSession.java      |   20 +-
+ .../data/thrift/TConstraintViolationSummary.java   |   24 +-
+ .../org/apache/accumulo/core/data/thrift/TKey.java |   28 +-
+ .../accumulo/core/data/thrift/TKeyExtent.java      |   20 +-
+ .../accumulo/core/data/thrift/TKeyValue.java       |   16 +-
+ .../accumulo/core/data/thrift/TMutation.java       |   35 +-
+ .../apache/accumulo/core/data/thrift/TRange.java   |   32 +-
+ .../accumulo/core/data/thrift/UpdateErrors.java    |   46 +-
+ .../accumulo/core/gc/thrift/GCMonitorService.java  |  108 +-
+ .../apache/accumulo/core/gc/thrift/GCStatus.java   |   24 +-
+ .../accumulo/core/gc/thrift/GcCycleStats.java      |   32 +-
+ .../accumulo/core/master/thrift/Compacting.java    |   16 +-
+ .../accumulo/core/master/thrift/DeadServer.java    |   20 +-
+ .../accumulo/core/master/thrift/FateOperation.java |    2 +-
+ .../accumulo/core/master/thrift/FateService.java   |  441 +-
+ .../core/master/thrift/MasterClientService.java    | 1287 ++-
+ .../core/master/thrift/MasterGoalState.java        |    2 +-
+ .../core/master/thrift/MasterMonitorInfo.java      |   92 +-
+ .../accumulo/core/master/thrift/MasterState.java   |    2 +-
+ .../core/master/thrift/RecoveryException.java      |   12 +-
+ .../core/master/thrift/RecoveryStatus.java         |   20 +-
+ .../accumulo/core/master/thrift/TableInfo.java     |   56 +-
+ .../core/master/thrift/TabletLoadState.java        |    2 +-
+ .../core/master/thrift/TabletServerStatus.java     |   68 +-
+ .../accumulo/core/master/thrift/TabletSplit.java   |   22 +-
+ .../core/security/thrift/TCredentials.java         |   24 +-
+ .../core/tabletserver/thrift/ActionStats.java      |   40 +-
+ .../core/tabletserver/thrift/ActiveCompaction.java |   98 +-
+ .../core/tabletserver/thrift/ActiveScan.java       |  110 +-
+ .../core/tabletserver/thrift/CompactionReason.java |    2 +-
+ .../core/tabletserver/thrift/CompactionType.java   |    2 +-
+ .../thrift/ConstraintViolationException.java       |   18 +-
+ .../core/tabletserver/thrift/IteratorConfig.java   |   18 +-
+ .../tabletserver/thrift/NoSuchScanIDException.java |    8 +-
+ .../thrift/NotServingTabletException.java          |   12 +-
+ .../core/tabletserver/thrift/ScanState.java        |    2 +-
+ .../core/tabletserver/thrift/ScanType.java         |    2 +-
+ .../core/tabletserver/thrift/TIteratorSetting.java |   45 +-
+ .../tabletserver/thrift/TabletClientService.java   | 2651 +++++--
+ .../core/tabletserver/thrift/TabletStats.java      |   40 +-
+ .../tabletserver/thrift/TooManyFilesException.java |   12 +-
+ proxy/src/main/cpp/AccumuloProxy.cpp               |    2 +-
+ proxy/src/main/cpp/AccumuloProxy.h                 |    2 +-
+ proxy/src/main/cpp/proxy_constants.cpp             |    2 +-
+ proxy/src/main/cpp/proxy_constants.h               |    2 +-
+ proxy/src/main/cpp/proxy_types.cpp                 |    2 +-
+ proxy/src/main/cpp/proxy_types.h                   |    3 +-
+ .../accumulo/proxy/thrift/AccumuloException.java   |   12 +-
+ .../accumulo/proxy/thrift/AccumuloProxy.java       | 8186 ++++++++++++++++----
+ .../proxy/thrift/AccumuloSecurityException.java    |   12 +-
+ .../accumulo/proxy/thrift/ActiveCompaction.java    |   63 +-
+ .../apache/accumulo/proxy/thrift/ActiveScan.java   |   75 +-
+ .../accumulo/proxy/thrift/BatchScanOptions.java    |   57 +-
+ .../org/apache/accumulo/proxy/thrift/Column.java   |   20 +-
+ .../apache/accumulo/proxy/thrift/ColumnUpdate.java |   32 +-
+ .../accumulo/proxy/thrift/CompactionReason.java    |    2 +-
+ .../accumulo/proxy/thrift/CompactionType.java      |    2 +-
+ .../apache/accumulo/proxy/thrift/Condition.java    |   30 +-
+ .../accumulo/proxy/thrift/ConditionalStatus.java   |    2 +-
+ .../accumulo/proxy/thrift/ConditionalUpdates.java  |   28 +-
+ .../proxy/thrift/ConditionalWriterOptions.java     |   35 +-
+ .../apache/accumulo/proxy/thrift/DiskUsage.java    |   25 +-
+ .../accumulo/proxy/thrift/IteratorScope.java       |    2 +-
+ .../accumulo/proxy/thrift/IteratorSetting.java     |   45 +-
+ .../java/org/apache/accumulo/proxy/thrift/Key.java |   28 +-
+ .../apache/accumulo/proxy/thrift/KeyExtent.java    |   20 +-
+ .../org/apache/accumulo/proxy/thrift/KeyValue.java |   16 +-
+ .../accumulo/proxy/thrift/KeyValueAndPeek.java     |   16 +-
+ .../proxy/thrift/MutationsRejectedException.java   |   12 +-
+ .../proxy/thrift/NoMoreEntriesException.java       |   12 +-
+ .../apache/accumulo/proxy/thrift/PartialKey.java   |    2 +-
+ .../org/apache/accumulo/proxy/thrift/Range.java    |   24 +-
+ .../apache/accumulo/proxy/thrift/ScanColumn.java   |   16 +-
+ .../apache/accumulo/proxy/thrift/ScanOptions.java  |   51 +-
+ .../apache/accumulo/proxy/thrift/ScanResult.java   |   22 +-
+ .../apache/accumulo/proxy/thrift/ScanState.java    |    2 +-
+ .../org/apache/accumulo/proxy/thrift/ScanType.java |    2 +-
+ .../accumulo/proxy/thrift/SystemPermission.java    |    2 +-
+ .../proxy/thrift/TableExistsException.java         |   12 +-
+ .../proxy/thrift/TableNotFoundException.java       |   12 +-
+ .../accumulo/proxy/thrift/TablePermission.java     |    2 +-
+ .../org/apache/accumulo/proxy/thrift/TimeType.java |    2 +-
+ .../accumulo/proxy/thrift/UnknownScanner.java      |   12 +-
+ .../accumulo/proxy/thrift/UnknownWriter.java       |   12 +-
+ .../accumulo/proxy/thrift/WriterOptions.java       |   24 +-
+ proxy/src/main/python/AccumuloProxy-remote         |    6 +-
+ proxy/src/main/python/AccumuloProxy.py             |  550 +-
+ proxy/src/main/python/constants.py                 |    2 +-
+ proxy/src/main/python/ttypes.py                    |    4 +-
+ proxy/src/main/ruby/accumulo_proxy.rb              |    2 +-
+ proxy/src/main/ruby/proxy_constants.rb             |    2 +-
+ proxy/src/main/ruby/proxy_types.rb                 |    2 +-
+ .../apache/accumulo/trace/thrift/RemoteSpan.java   |   65 +-
+ .../apache/accumulo/trace/thrift/SpanReceiver.java |   63 +-
+ .../org/apache/accumulo/trace/thrift/TInfo.java    |   16 +-
+ .../apache/accumulo/trace/thrift/TestService.java  |   99 +-
+ 116 files changed, 14084 insertions(+), 4685 deletions(-)
+
+diff --git a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ClientService.java b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ClientService.java
+index 195f372..638a8b7 100644
+--- a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ClientService.java
++++ b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ClientService.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -114,65 +116,65 @@ import org.slf4j.LoggerFactory;
+ 
+   public interface AsyncIface {
+ 
+-    public void getRootTabletLocation(org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getRootTabletLocation_call> resultHandler) throws org.apache.thrift.TException;
++    public void getRootTabletLocation(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getInstanceId(org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getInstanceId_call> resultHandler) throws org.apache.thrift.TException;
++    public void getInstanceId(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getZooKeepers(org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getZooKeepers_call> resultHandler) throws org.apache.thrift.TException;
++    public void getZooKeepers(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void bulkImportFiles(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long tid, String tableId, List<String> files, String errorDir, boolean setTime, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.bulkImportFiles_call> resultHandler) throws org.apache.thrift.TException;
++    public void bulkImportFiles(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long tid, String tableId, List<String> files, String errorDir, boolean setTime, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void isActive(org.apache.accumulo.trace.thrift.TInfo tinfo, long tid, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.isActive_call> resultHandler) throws org.apache.thrift.TException;
++    public void isActive(org.apache.accumulo.trace.thrift.TInfo tinfo, long tid, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void ping(org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.ping_call> resultHandler) throws org.apache.thrift.TException;
++    public void ping(org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getDiskUsage(Set<String> tables, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getDiskUsage_call> resultHandler) throws org.apache.thrift.TException;
++    public void getDiskUsage(Set<String> tables, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void listLocalUsers(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.listLocalUsers_call> resultHandler) throws org.apache.thrift.TException;
++    public void listLocalUsers(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void createLocalUser(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.createLocalUser_call> resultHandler) throws org.apache.thrift.TException;
++    public void createLocalUser(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void dropLocalUser(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.dropLocalUser_call> resultHandler) throws org.apache.thrift.TException;
++    public void dropLocalUser(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void changeLocalUserPassword(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.changeLocalUserPassword_call> resultHandler) throws org.apache.thrift.TException;
++    public void changeLocalUserPassword(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void authenticate(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.authenticate_call> resultHandler) throws org.apache.thrift.TException;
++    public void authenticate(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void authenticateUser(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.security.thrift.TCredentials toAuth, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.authenticateUser_call> resultHandler) throws org.apache.thrift.TException;
++    public void authenticateUser(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.security.thrift.TCredentials toAuth, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void changeAuthorizations(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, List<ByteBuffer> authorizations, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.changeAuthorizations_call> resultHandler) throws org.apache.thrift.TException;
++    public void changeAuthorizations(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, List<ByteBuffer> authorizations, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getUserAuthorizations(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getUserAuthorizations_call> resultHandler) throws org.apache.thrift.TException;
++    public void getUserAuthorizations(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void hasSystemPermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte sysPerm, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.hasSystemPermission_call> resultHandler) throws org.apache.thrift.TException;
++    public void hasSystemPermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte sysPerm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void hasTablePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte tblPerm, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.hasTablePermission_call> resultHandler) throws org.apache.thrift.TException;
++    public void hasTablePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte tblPerm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void hasNamespacePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte tblNspcPerm, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.hasNamespacePermission_call> resultHandler) throws org.apache.thrift.TException;
++    public void hasNamespacePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte tblNspcPerm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void grantSystemPermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte permission, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.grantSystemPermission_call> resultHandler) throws org.apache.thrift.TException;
++    public void grantSystemPermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void revokeSystemPermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte permission, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.revokeSystemPermission_call> resultHandler) throws org.apache.thrift.TException;
++    public void revokeSystemPermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void grantTablePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte permission, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.grantTablePermission_call> resultHandler) throws org.apache.thrift.TException;
++    public void grantTablePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void revokeTablePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte permission, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.revokeTablePermission_call> resultHandler) throws org.apache.thrift.TException;
++    public void revokeTablePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void grantNamespacePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte permission, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.grantNamespacePermission_call> resultHandler) throws org.apache.thrift.TException;
++    public void grantNamespacePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void revokeNamespacePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte permission, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.revokeNamespacePermission_call> resultHandler) throws org.apache.thrift.TException;
++    public void revokeNamespacePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getConfiguration(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, ConfigurationType type, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getConfiguration_call> resultHandler) throws org.apache.thrift.TException;
++    public void getConfiguration(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, ConfigurationType type, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getTableConfiguration(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getTableConfiguration_call> resultHandler) throws org.apache.thrift.TException;
++    public void getTableConfiguration(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getNamespaceConfiguration(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getNamespaceConfiguration_call> resultHandler) throws org.apache.thrift.TException;
++    public void getNamespaceConfiguration(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void checkClass(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.checkClass_call> resultHandler) throws org.apache.thrift.TException;
++    public void checkClass(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void checkTableClass(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableId, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.checkTableClass_call> resultHandler) throws org.apache.thrift.TException;
++    public void checkTableClass(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableId, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void checkNamespaceClass(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String namespaceId, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.checkNamespaceClass_call> resultHandler) throws org.apache.thrift.TException;
++    public void checkNamespaceClass(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String namespaceId, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+   }
+ 
+@@ -1045,7 +1047,7 @@ import org.slf4j.LoggerFactory;
+       super(protocolFactory, clientManager, transport);
+     }
+ 
+-    public void getRootTabletLocation(org.apache.thrift.async.AsyncMethodCallback<getRootTabletLocation_call> resultHandler) throws org.apache.thrift.TException {
++    public void getRootTabletLocation(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getRootTabletLocation_call method_call = new getRootTabletLocation_call(resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1053,7 +1055,7 @@ import org.slf4j.LoggerFactory;
+     }
+ 
+     public static class getRootTabletLocation_call extends org.apache.thrift.async.TAsyncMethodCall {
+-      public getRootTabletLocation_call(org.apache.thrift.async.AsyncMethodCallback<getRootTabletLocation_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getRootTabletLocation_call(org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+       }
+ 
+@@ -1074,7 +1076,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getInstanceId(org.apache.thrift.async.AsyncMethodCallback<getInstanceId_call> resultHandler) throws org.apache.thrift.TException {
++    public void getInstanceId(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getInstanceId_call method_call = new getInstanceId_call(resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1082,7 +1084,7 @@ import org.slf4j.LoggerFactory;
+     }
+ 
+     public static class getInstanceId_call extends org.apache.thrift.async.TAsyncMethodCall {
+-      public getInstanceId_call(org.apache.thrift.async.AsyncMethodCallback<getInstanceId_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getInstanceId_call(org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+       }
+ 
+@@ -1103,7 +1105,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getZooKeepers(org.apache.thrift.async.AsyncMethodCallback<getZooKeepers_call> resultHandler) throws org.apache.thrift.TException {
++    public void getZooKeepers(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getZooKeepers_call method_call = new getZooKeepers_call(resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1111,7 +1113,7 @@ import org.slf4j.LoggerFactory;
+     }
+ 
+     public static class getZooKeepers_call extends org.apache.thrift.async.TAsyncMethodCall {
+-      public getZooKeepers_call(org.apache.thrift.async.AsyncMethodCallback<getZooKeepers_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getZooKeepers_call(org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+       }
+ 
+@@ -1132,7 +1134,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void bulkImportFiles(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long tid, String tableId, List<String> files, String errorDir, boolean setTime, org.apache.thrift.async.AsyncMethodCallback<bulkImportFiles_call> resultHandler) throws org.apache.thrift.TException {
++    public void bulkImportFiles(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long tid, String tableId, List<String> files, String errorDir, boolean setTime, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       bulkImportFiles_call method_call = new bulkImportFiles_call(tinfo, credentials, tid, tableId, files, errorDir, setTime, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1147,7 +1149,7 @@ import org.slf4j.LoggerFactory;
+       private List<String> files;
+       private String errorDir;
+       private boolean setTime;
+-      public bulkImportFiles_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long tid, String tableId, List<String> files, String errorDir, boolean setTime, org.apache.thrift.async.AsyncMethodCallback<bulkImportFiles_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public bulkImportFiles_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long tid, String tableId, List<String> files, String errorDir, boolean setTime, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1182,7 +1184,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void isActive(org.apache.accumulo.trace.thrift.TInfo tinfo, long tid, org.apache.thrift.async.AsyncMethodCallback<isActive_call> resultHandler) throws org.apache.thrift.TException {
++    public void isActive(org.apache.accumulo.trace.thrift.TInfo tinfo, long tid, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       isActive_call method_call = new isActive_call(tinfo, tid, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1192,7 +1194,7 @@ import org.slf4j.LoggerFactory;
+     public static class isActive_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private long tid;
+-      public isActive_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long tid, org.apache.thrift.async.AsyncMethodCallback<isActive_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public isActive_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long tid, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.tid = tid;
+@@ -1217,7 +1219,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void ping(org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<ping_call> resultHandler) throws org.apache.thrift.TException {
++    public void ping(org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       ping_call method_call = new ping_call(credentials, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1226,7 +1228,7 @@ import org.slf4j.LoggerFactory;
+ 
+     public static class ping_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+-      public ping_call(org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<ping_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public ping_call(org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.credentials = credentials;
+       }
+@@ -1249,7 +1251,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getDiskUsage(Set<String> tables, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<getDiskUsage_call> resultHandler) throws org.apache.thrift.TException {
++    public void getDiskUsage(Set<String> tables, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getDiskUsage_call method_call = new getDiskUsage_call(tables, credentials, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1259,7 +1261,7 @@ import org.slf4j.LoggerFactory;
+     public static class getDiskUsage_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private Set<String> tables;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+-      public getDiskUsage_call(Set<String> tables, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<getDiskUsage_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getDiskUsage_call(Set<String> tables, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tables = tables;
+         this.credentials = credentials;
+@@ -1284,7 +1286,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void listLocalUsers(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<listLocalUsers_call> resultHandler) throws org.apache.thrift.TException {
++    public void listLocalUsers(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       listLocalUsers_call method_call = new listLocalUsers_call(tinfo, credentials, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1294,7 +1296,7 @@ import org.slf4j.LoggerFactory;
+     public static class listLocalUsers_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+-      public listLocalUsers_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<listLocalUsers_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public listLocalUsers_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1319,7 +1321,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void createLocalUser(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback<createLocalUser_call> resultHandler) throws org.apache.thrift.TException {
++    public void createLocalUser(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       createLocalUser_call method_call = new createLocalUser_call(tinfo, credentials, principal, password, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1331,7 +1333,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String principal;
+       private ByteBuffer password;
+-      public createLocalUser_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback<createLocalUser_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public createLocalUser_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1360,7 +1362,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void dropLocalUser(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, org.apache.thrift.async.AsyncMethodCallback<dropLocalUser_call> resultHandler) throws org.apache.thrift.TException {
++    public void dropLocalUser(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       dropLocalUser_call method_call = new dropLocalUser_call(tinfo, credentials, principal, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1371,7 +1373,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String principal;
+-      public dropLocalUser_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, org.apache.thrift.async.AsyncMethodCallback<dropLocalUser_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public dropLocalUser_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1398,7 +1400,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void changeLocalUserPassword(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback<changeLocalUserPassword_call> resultHandler) throws org.apache.thrift.TException {
++    public void changeLocalUserPassword(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       changeLocalUserPassword_call method_call = new changeLocalUserPassword_call(tinfo, credentials, principal, password, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1410,7 +1412,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String principal;
+       private ByteBuffer password;
+-      public changeLocalUserPassword_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback<changeLocalUserPassword_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public changeLocalUserPassword_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1439,7 +1441,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void authenticate(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<authenticate_call> resultHandler) throws org.apache.thrift.TException {
++    public void authenticate(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       authenticate_call method_call = new authenticate_call(tinfo, credentials, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1449,7 +1451,7 @@ import org.slf4j.LoggerFactory;
+     public static class authenticate_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+-      public authenticate_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<authenticate_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public authenticate_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1474,7 +1476,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void authenticateUser(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.security.thrift.TCredentials toAuth, org.apache.thrift.async.AsyncMethodCallback<authenticateUser_call> resultHandler) throws org.apache.thrift.TException {
++    public void authenticateUser(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.security.thrift.TCredentials toAuth, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       authenticateUser_call method_call = new authenticateUser_call(tinfo, credentials, toAuth, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1485,7 +1487,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private org.apache.accumulo.core.security.thrift.TCredentials toAuth;
+-      public authenticateUser_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.security.thrift.TCredentials toAuth, org.apache.thrift.async.AsyncMethodCallback<authenticateUser_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public authenticateUser_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.security.thrift.TCredentials toAuth, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1512,7 +1514,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void changeAuthorizations(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, List<ByteBuffer> authorizations, org.apache.thrift.async.AsyncMethodCallback<changeAuthorizations_call> resultHandler) throws org.apache.thrift.TException {
++    public void changeAuthorizations(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, List<ByteBuffer> authorizations, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       changeAuthorizations_call method_call = new changeAuthorizations_call(tinfo, credentials, principal, authorizations, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1524,7 +1526,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String principal;
+       private List<ByteBuffer> authorizations;
+-      public changeAuthorizations_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, List<ByteBuffer> authorizations, org.apache.thrift.async.AsyncMethodCallback<changeAuthorizations_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public changeAuthorizations_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, List<ByteBuffer> authorizations, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1553,7 +1555,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getUserAuthorizations(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, org.apache.thrift.async.AsyncMethodCallback<getUserAuthorizations_call> resultHandler) throws org.apache.thrift.TException {
++    public void getUserAuthorizations(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getUserAuthorizations_call method_call = new getUserAuthorizations_call(tinfo, credentials, principal, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1564,7 +1566,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String principal;
+-      public getUserAuthorizations_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, org.apache.thrift.async.AsyncMethodCallback<getUserAuthorizations_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getUserAuthorizations_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1591,7 +1593,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void hasSystemPermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte sysPerm, org.apache.thrift.async.AsyncMethodCallback<hasSystemPermission_call> resultHandler) throws org.apache.thrift.TException {
++    public void hasSystemPermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte sysPerm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       hasSystemPermission_call method_call = new hasSystemPermission_call(tinfo, credentials, principal, sysPerm, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1603,7 +1605,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String principal;
+       private byte sysPerm;
+-      public hasSystemPermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte sysPerm, org.apache.thrift.async.AsyncMethodCallback<hasSystemPermission_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public hasSystemPermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte sysPerm, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1632,7 +1634,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void hasTablePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte tblPerm, org.apache.thrift.async.AsyncMethodCallback<hasTablePermission_call> resultHandler) throws org.apache.thrift.TException {
++    public void hasTablePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte tblPerm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       hasTablePermission_call method_call = new hasTablePermission_call(tinfo, credentials, principal, tableName, tblPerm, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1645,7 +1647,7 @@ import org.slf4j.LoggerFactory;
+       private String principal;
+       private String tableName;
+       private byte tblPerm;
+-      public hasTablePermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte tblPerm, org.apache.thrift.async.AsyncMethodCallback<hasTablePermission_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public hasTablePermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte tblPerm, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1676,7 +1678,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void hasNamespacePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte tblNspcPerm, org.apache.thrift.async.AsyncMethodCallback<hasNamespacePermission_call> resultHandler) throws org.apache.thrift.TException {
++    public void hasNamespacePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte tblNspcPerm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       hasNamespacePermission_call method_call = new hasNamespacePermission_call(tinfo, credentials, principal, ns, tblNspcPerm, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1689,7 +1691,7 @@ import org.slf4j.LoggerFactory;
+       private String principal;
+       private String ns;
+       private byte tblNspcPerm;
+-      public hasNamespacePermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte tblNspcPerm, org.apache.thrift.async.AsyncMethodCallback<hasNamespacePermission_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public hasNamespacePermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte tblNspcPerm, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1720,7 +1722,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void grantSystemPermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte permission, org.apache.thrift.async.AsyncMethodCallback<grantSystemPermission_call> resultHandler) throws org.apache.thrift.TException {
++    public void grantSystemPermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       grantSystemPermission_call method_call = new grantSystemPermission_call(tinfo, credentials, principal, permission, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1732,7 +1734,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String principal;
+       private byte permission;
+-      public grantSystemPermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte permission, org.apache.thrift.async.AsyncMethodCallback<grantSystemPermission_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public grantSystemPermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1761,7 +1763,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void revokeSystemPermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte permission, org.apache.thrift.async.AsyncMethodCallback<revokeSystemPermission_call> resultHandler) throws org.apache.thrift.TException {
++    public void revokeSystemPermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       revokeSystemPermission_call method_call = new revokeSystemPermission_call(tinfo, credentials, principal, permission, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1773,7 +1775,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String principal;
+       private byte permission;
+-      public revokeSystemPermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte permission, org.apache.thrift.async.AsyncMethodCallback<revokeSystemPermission_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public revokeSystemPermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1802,7 +1804,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void grantTablePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte permission, org.apache.thrift.async.AsyncMethodCallback<grantTablePermission_call> resultHandler) throws org.apache.thrift.TException {
++    public void grantTablePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       grantTablePermission_call method_call = new grantTablePermission_call(tinfo, credentials, principal, tableName, permission, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1815,7 +1817,7 @@ import org.slf4j.LoggerFactory;
+       private String principal;
+       private String tableName;
+       private byte permission;
+-      public grantTablePermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte permission, org.apache.thrift.async.AsyncMethodCallback<grantTablePermission_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public grantTablePermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1846,7 +1848,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void revokeTablePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte permission, org.apache.thrift.async.AsyncMethodCallback<revokeTablePermission_call> resultHandler) throws org.apache.thrift.TException {
++    public void revokeTablePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       revokeTablePermission_call method_call = new revokeTablePermission_call(tinfo, credentials, principal, tableName, permission, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1859,7 +1861,7 @@ import org.slf4j.LoggerFactory;
+       private String principal;
+       private String tableName;
+       private byte permission;
+-      public revokeTablePermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte permission, org.apache.thrift.async.AsyncMethodCallback<revokeTablePermission_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public revokeTablePermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String tableName, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1890,7 +1892,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void grantNamespacePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte permission, org.apache.thrift.async.AsyncMethodCallback<grantNamespacePermission_call> resultHandler) throws org.apache.thrift.TException {
++    public void grantNamespacePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       grantNamespacePermission_call method_call = new grantNamespacePermission_call(tinfo, credentials, principal, ns, permission, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1903,7 +1905,7 @@ import org.slf4j.LoggerFactory;
+       private String principal;
+       private String ns;
+       private byte permission;
+-      public grantNamespacePermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte permission, org.apache.thrift.async.AsyncMethodCallback<grantNamespacePermission_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public grantNamespacePermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1934,7 +1936,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void revokeNamespacePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte permission, org.apache.thrift.async.AsyncMethodCallback<revokeNamespacePermission_call> resultHandler) throws org.apache.thrift.TException {
++    public void revokeNamespacePermission(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       revokeNamespacePermission_call method_call = new revokeNamespacePermission_call(tinfo, credentials, principal, ns, permission, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1947,7 +1949,7 @@ import org.slf4j.LoggerFactory;
+       private String principal;
+       private String ns;
+       private byte permission;
+-      public revokeNamespacePermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte permission, org.apache.thrift.async.AsyncMethodCallback<revokeNamespacePermission_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public revokeNamespacePermission_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String principal, String ns, byte permission, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1978,7 +1980,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getConfiguration(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, ConfigurationType type, org.apache.thrift.async.AsyncMethodCallback<getConfiguration_call> resultHandler) throws org.apache.thrift.TException {
++    public void getConfiguration(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, ConfigurationType type, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getConfiguration_call method_call = new getConfiguration_call(tinfo, credentials, type, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1989,7 +1991,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private ConfigurationType type;
+-      public getConfiguration_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, ConfigurationType type, org.apache.thrift.async.AsyncMethodCallback<getConfiguration_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getConfiguration_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, ConfigurationType type, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -2016,7 +2018,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getTableConfiguration(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, org.apache.thrift.async.AsyncMethodCallback<getTableConfiguration_call> resultHandler) throws org.apache.thrift.TException {
++    public void getTableConfiguration(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getTableConfiguration_call method_call = new getTableConfiguration_call(tinfo, credentials, tableName, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -2027,7 +2029,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String tableName;
+-      public getTableConfiguration_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, org.apache.thrift.async.AsyncMethodCallback<getTableConfiguration_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getTableConfiguration_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -2054,7 +2056,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getNamespaceConfiguration(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, org.apache.thrift.async.AsyncMethodCallback<getNamespaceConfiguration_call> resultHandler) throws org.apache.thrift.TException {
++    public void getNamespaceConfiguration(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getNamespaceConfiguration_call method_call = new getNamespaceConfiguration_call(tinfo, credentials, ns, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -2065,7 +2067,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String ns;
+-      public getNamespaceConfiguration_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, org.apache.thrift.async.AsyncMethodCallback<getNamespaceConfiguration_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getNamespaceConfiguration_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -2092,7 +2094,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void checkClass(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback<checkClass_call> resultHandler) throws org.apache.thrift.TException {
++    public void checkClass(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       checkClass_call method_call = new checkClass_call(tinfo, credentials, className, interfaceMatch, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -2104,7 +2106,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String className;
+       private String interfaceMatch;
+-      public checkClass_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback<checkClass_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public checkClass_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -2133,7 +2135,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void checkTableClass(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableId, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback<checkTableClass_call> resultHandler) throws org.apache.thrift.TException {
++    public void checkTableClass(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableId, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       checkTableClass_call method_call = new checkTableClass_call(tinfo, credentials, tableId, className, interfaceMatch, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -2146,7 +2148,7 @@ import org.slf4j.LoggerFactory;
+       private String tableId;
+       private String className;
+       private String interfaceMatch;
+-      public checkTableClass_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableId, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback<checkTableClass_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public checkTableClass_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableId, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -2177,7 +2179,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void checkNamespaceClass(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String namespaceId, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback<checkNamespaceClass_call> resultHandler) throws org.apache.thrift.TException {
++    public void checkNamespaceClass(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String namespaceId, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       checkNamespaceClass_call method_call = new checkNamespaceClass_call(tinfo, credentials, namespaceId, className, interfaceMatch, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -2190,7 +2192,7 @@ import org.slf4j.LoggerFactory;
+       private String namespaceId;
+       private String className;
+       private String interfaceMatch;
+-      public checkNamespaceClass_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String namespaceId, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback<checkNamespaceClass_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public checkNamespaceClass_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String namespaceId, String className, String interfaceMatch, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -2994,7 +2996,1775 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getRootTabletLocation_args implements org.apache.thrift.TBase<getRootTabletLocation_args, getRootTabletLocation_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class AsyncProcessor<I extends AsyncIface> extends org.apache.thrift.TBaseAsyncProcessor<I> {
++    private static final Logger LOGGER = LoggerFactory.getLogger(AsyncProcessor.class.getName());
++    public AsyncProcessor(I iface) {
++      super(iface, getProcessMap(new HashMap<String, org.apache.thrift.AsyncProcessFunction<I, ? extends org.apache.thrift.TBase, ?>>()));
++    }
++
++    protected AsyncProcessor(I iface, Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      super(iface, getProcessMap(processMap));
++    }
++
++    private static <I extends AsyncIface> Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase,?>> getProcessMap(Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      processMap.put("getRootTabletLocation", new getRootTabletLocation());
++      processMap.put("getInstanceId", new getInstanceId());
++      processMap.put("getZooKeepers", new getZooKeepers());
++      processMap.put("bulkImportFiles", new bulkImportFiles());
++      processMap.put("isActive", new isActive());
++      processMap.put("ping", new ping());
++      processMap.put("getDiskUsage", new getDiskUsage());
++      processMap.put("listLocalUsers", new listLocalUsers());
++      processMap.put("createLocalUser", new createLocalUser());
++      processMap.put("dropLocalUser", new dropLocalUser());
++      processMap.put("changeLocalUserPassword", new changeLocalUserPassword());
++      processMap.put("authenticate", new authenticate());
++      processMap.put("authenticateUser", new authenticateUser());
++      processMap.put("changeAuthorizations", new changeAuthorizations());
++      processMap.put("getUserAuthorizations", new getUserAuthorizations());
++      processMap.put("hasSystemPermission", new hasSystemPermission());
++      processMap.put("hasTablePermission", new hasTablePermission());
++      processMap.put("hasNamespacePermission", new hasNamespacePermission());
++      processMap.put("grantSystemPermission", new grantSystemPermission());
++      processMap.put("revokeSystemPermission", new revokeSystemPermission());
++      processMap.put("grantTablePermission", new grantTablePermission());
++      processMap.put("revokeTablePermission", new revokeTablePermission());
++      processMap.put("grantNamespacePermission", new grantNamespacePermission());
++      processMap.put("revokeNamespacePermission", new revokeNamespacePermission());
++      processMap.put("getConfiguration", new getConfiguration());
++      processMap.put("getTableConfiguration", new getTableConfiguration());
++      processMap.put("getNamespaceConfiguration", new getNamespaceConfiguration());
++      processMap.put("checkClass", new checkClass());
++      processMap.put("checkTableClass", new checkTableClass());
++      processMap.put("checkNamespaceClass", new checkNamespaceClass());
++      return processMap;
++    }
++
++    public static class getRootTabletLocation<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getRootTabletLocation_args, String> {
++      public getRootTabletLocation() {
++        super("getRootTabletLocation");
++      }
++
++      public getRootTabletLocation_args getEmptyArgsInstance() {
++        return new getRootTabletLocation_args();
++      }
++
++      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<String>() { 
++          public void onComplete(String o) {
++            getRootTabletLocation_result result = new getRootTabletLocation_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getRootTabletLocation_result result = new getRootTabletLocation_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getRootTabletLocation_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
++        iface.getRootTabletLocation(resultHandler);
++      }
++    }
++
++    public static class getInstanceId<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getInstanceId_args, String> {
++      public getInstanceId() {
++        super("getInstanceId");
++      }
++
++      public getInstanceId_args getEmptyArgsInstance() {
++        return new getInstanceId_args();
++      }
++
++      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<String>() { 
++          public void onComplete(String o) {
++            getInstanceId_result result = new getInstanceId_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getInstanceId_result result = new getInstanceId_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getInstanceId_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
++        iface.getInstanceId(resultHandler);
++      }
++    }
++
++    public static class getZooKeepers<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getZooKeepers_args, String> {
++      public getZooKeepers() {
++        super("getZooKeepers");
++      }
++
++      public getZooKeepers_args getEmptyArgsInstance() {
++        return new getZooKeepers_args();
++      }
++
++      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<String>() { 
++          public void onComplete(String o) {
++            getZooKeepers_result result = new getZooKeepers_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getZooKeepers_result result = new getZooKeepers_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getZooKeepers_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
++        iface.getZooKeepers(resultHandler);
++      }
++    }
++
++    public static class bulkImportFiles<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, bulkImportFiles_args, List<String>> {
++      public bulkImportFiles() {
++        super("bulkImportFiles");
++      }
++
++      public bulkImportFiles_args getEmptyArgsInstance() {
++        return new bulkImportFiles_args();
++      }
++
++      public AsyncMethodCallback<List<String>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<List<String>>() { 
++          public void onComplete(List<String> o) {
++            bulkImportFiles_result result = new bulkImportFiles_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            bulkImportFiles_result result = new bulkImportFiles_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof ThriftTableOperationException) {
++                        result.tope = (ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, bulkImportFiles_args args, org.apache.thrift.async.AsyncMethodCallback<List<String>> resultHandler) throws TException {
++        iface.bulkImportFiles(args.tinfo, args.credentials, args.tid, args.tableId, args.files, args.errorDir, args.setTime,resultHandler);
++      }
++    }
++
++    public static class isActive<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, isActive_args, Boolean> {
++      public isActive() {
++        super("isActive");
++      }
++
++      public isActive_args getEmptyArgsInstance() {
++        return new isActive_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            isActive_result result = new isActive_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            isActive_result result = new isActive_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, isActive_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.isActive(args.tinfo, args.tid,resultHandler);
++      }
++    }
++
++    public static class ping<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, ping_args, Void> {
++      public ping() {
++        super("ping");
++      }
++
++      public ping_args getEmptyArgsInstance() {
++        return new ping_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            ping_result result = new ping_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            ping_result result = new ping_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, ping_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.ping(args.credentials,resultHandler);
++      }
++    }
++
++    public static class getDiskUsage<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getDiskUsage_args, List<TDiskUsage>> {
++      public getDiskUsage() {
++        super("getDiskUsage");
++      }
++
++      public getDiskUsage_args getEmptyArgsInstance() {
++        return new getDiskUsage_args();
++      }
++
++      public AsyncMethodCallback<List<TDiskUsage>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<List<TDiskUsage>>() { 
++          public void onComplete(List<TDiskUsage> o) {
++            getDiskUsage_result result = new getDiskUsage_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getDiskUsage_result result = new getDiskUsage_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof ThriftTableOperationException) {
++                        result.toe = (ThriftTableOperationException) e;
++                        result.setToeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getDiskUsage_args args, org.apache.thrift.async.AsyncMethodCallback<List<TDiskUsage>> resultHandler) throws TException {
++        iface.getDiskUsage(args.tables, args.credentials,resultHandler);
++      }
++    }
++
++    public static class listLocalUsers<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, listLocalUsers_args, Set<String>> {
++      public listLocalUsers() {
++        super("listLocalUsers");
++      }
++
++      public listLocalUsers_args getEmptyArgsInstance() {
++        return new listLocalUsers_args();
++      }
++
++      public AsyncMethodCallback<Set<String>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Set<String>>() { 
++          public void onComplete(Set<String> o) {
++            listLocalUsers_result result = new listLocalUsers_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            listLocalUsers_result result = new listLocalUsers_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, listLocalUsers_args args, org.apache.thrift.async.AsyncMethodCallback<Set<String>> resultHandler) throws TException {
++        iface.listLocalUsers(args.tinfo, args.credentials,resultHandler);
++      }
++    }
++
++    public static class createLocalUser<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, createLocalUser_args, Void> {
++      public createLocalUser() {
++        super("createLocalUser");
++      }
++
++      public createLocalUser_args getEmptyArgsInstance() {
++        return new createLocalUser_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            createLocalUser_result result = new createLocalUser_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            createLocalUser_result result = new createLocalUser_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, createLocalUser_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.createLocalUser(args.tinfo, args.credentials, args.principal, args.password,resultHandler);
++      }
++    }
++
++    public static class dropLocalUser<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, dropLocalUser_args, Void> {
++      public dropLocalUser() {
++        super("dropLocalUser");
++      }
++
++      public dropLocalUser_args getEmptyArgsInstance() {
++        return new dropLocalUser_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            dropLocalUser_result result = new dropLocalUser_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            dropLocalUser_result result = new dropLocalUser_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, dropLocalUser_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.dropLocalUser(args.tinfo, args.credentials, args.principal,resultHandler);
++      }
++    }
++
++    public static class changeLocalUserPassword<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, changeLocalUserPassword_args, Void> {
++      public changeLocalUserPassword() {
++        super("changeLocalUserPassword");
++      }
++
++      public changeLocalUserPassword_args getEmptyArgsInstance() {
++        return new changeLocalUserPassword_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            changeLocalUserPassword_result result = new changeLocalUserPassword_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            changeLocalUserPassword_result result = new changeLocalUserPassword_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, changeLocalUserPassword_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.changeLocalUserPassword(args.tinfo, args.credentials, args.principal, args.password,resultHandler);
++      }
++    }
++
++    public static class authenticate<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, authenticate_args, Boolean> {
++      public authenticate() {
++        super("authenticate");
++      }
++
++      public authenticate_args getEmptyArgsInstance() {
++        return new authenticate_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            authenticate_result result = new authenticate_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            authenticate_result result = new authenticate_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, authenticate_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.authenticate(args.tinfo, args.credentials,resultHandler);
++      }
++    }
++
++    public static class authenticateUser<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, authenticateUser_args, Boolean> {
++      public authenticateUser() {
++        super("authenticateUser");
++      }
++
++      public authenticateUser_args getEmptyArgsInstance() {
++        return new authenticateUser_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            authenticateUser_result result = new authenticateUser_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            authenticateUser_result result = new authenticateUser_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, authenticateUser_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.authenticateUser(args.tinfo, args.credentials, args.toAuth,resultHandler);
++      }
++    }
++
++    public static class changeAuthorizations<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, changeAuthorizations_args, Void> {
++      public changeAuthorizations() {
++        super("changeAuthorizations");
++      }
++
++      public changeAuthorizations_args getEmptyArgsInstance() {
++        return new changeAuthorizations_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            changeAuthorizations_result result = new changeAuthorizations_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            changeAuthorizations_result result = new changeAuthorizations_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, changeAuthorizations_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.changeAuthorizations(args.tinfo, args.credentials, args.principal, args.authorizations,resultHandler);
++      }
++    }
++
++    public static class getUserAuthorizations<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getUserAuthorizations_args, List<ByteBuffer>> {
++      public getUserAuthorizations() {
++        super("getUserAuthorizations");
++      }
++
++      public getUserAuthorizations_args getEmptyArgsInstance() {
++        return new getUserAuthorizations_args();
++      }
++
++      public AsyncMethodCallback<List<ByteBuffer>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<List<ByteBuffer>>() { 
++          public void onComplete(List<ByteBuffer> o) {
++            getUserAuthorizations_result result = new getUserAuthorizations_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getUserAuthorizations_result result = new getUserAuthorizations_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getUserAuthorizations_args args, org.apache.thrift.async.AsyncMethodCallback<List<ByteBuffer>> resultHandler) throws TException {
++        iface.getUserAuthorizations(args.tinfo, args.credentials, args.principal,resultHandler);
++      }
++    }
++
++    public static class hasSystemPermission<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, hasSystemPermission_args, Boolean> {
++      public hasSystemPermission() {
++        super("hasSystemPermission");
++      }
++
++      public hasSystemPermission_args getEmptyArgsInstance() {
++        return new hasSystemPermission_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            hasSystemPermission_result result = new hasSystemPermission_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            hasSystemPermission_result result = new hasSystemPermission_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, hasSystemPermission_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.hasSystemPermission(args.tinfo, args.credentials, args.principal, args.sysPerm,resultHandler);
++      }
++    }
++
++    public static class hasTablePermission<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, hasTablePermission_args, Boolean> {
++      public hasTablePermission() {
++        super("hasTablePermission");
++      }
++
++      public hasTablePermission_args getEmptyArgsInstance() {
++        return new hasTablePermission_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            hasTablePermission_result result = new hasTablePermission_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            hasTablePermission_result result = new hasTablePermission_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof ThriftTableOperationException) {
++                        result.tope = (ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, hasTablePermission_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.hasTablePermission(args.tinfo, args.credentials, args.principal, args.tableName, args.tblPerm,resultHandler);
++      }
++    }
++
++    public static class hasNamespacePermission<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, hasNamespacePermission_args, Boolean> {
++      public hasNamespacePermission() {
++        super("hasNamespacePermission");
++      }
++
++      public hasNamespacePermission_args getEmptyArgsInstance() {
++        return new hasNamespacePermission_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            hasNamespacePermission_result result = new hasNamespacePermission_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            hasNamespacePermission_result result = new hasNamespacePermission_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof ThriftTableOperationException) {
++                        result.tope = (ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, hasNamespacePermission_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.hasNamespacePermission(args.tinfo, args.credentials, args.principal, args.ns, args.tblNspcPerm,resultHandler);
++      }
++    }
++
++    public static class grantSystemPermission<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, grantSystemPermission_args, Void> {
++      public grantSystemPermission() {
++        super("grantSystemPermission");
++      }
++
++      public grantSystemPermission_args getEmptyArgsInstance() {
++        return new grantSystemPermission_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            grantSystemPermission_result result = new grantSystemPermission_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            grantSystemPermission_result result = new grantSystemPermission_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, grantSystemPermission_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.grantSystemPermission(args.tinfo, args.credentials, args.principal, args.permission,resultHandler);
++      }
++    }
++
++    public static class revokeSystemPermission<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, revokeSystemPermission_args, Void> {
++      public revokeSystemPermission() {
++        super("revokeSystemPermission");
++      }
++
++      public revokeSystemPermission_args getEmptyArgsInstance() {
++        return new revokeSystemPermission_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            revokeSystemPermission_result result = new revokeSystemPermission_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            revokeSystemPermission_result result = new revokeSystemPermission_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, revokeSystemPermission_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.revokeSystemPermission(args.tinfo, args.credentials, args.principal, args.permission,resultHandler);
++      }
++    }
++
++    public static class grantTablePermission<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, grantTablePermission_args, Void> {
++      public grantTablePermission() {
++        super("grantTablePermission");
++      }
++
++      public grantTablePermission_args getEmptyArgsInstance() {
++        return new grantTablePermission_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            grantTablePermission_result result = new grantTablePermission_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            grantTablePermission_result result = new grantTablePermission_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof ThriftTableOperationException) {
++                        result.tope = (ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, grantTablePermission_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.grantTablePermission(args.tinfo, args.credentials, args.principal, args.tableName, args.permission,resultHandler);
++      }
++    }
++
++    public static class revokeTablePermission<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, revokeTablePermission_args, Void> {
++      public revokeTablePermission() {
++        super("revokeTablePermission");
++      }
++
++      public revokeTablePermission_args getEmptyArgsInstance() {
++        return new revokeTablePermission_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            revokeTablePermission_result result = new revokeTablePermission_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            revokeTablePermission_result result = new revokeTablePermission_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof ThriftTableOperationException) {
++                        result.tope = (ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, revokeTablePermission_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.revokeTablePermission(args.tinfo, args.credentials, args.principal, args.tableName, args.permission,resultHandler);
++      }
++    }
++
++    public static class grantNamespacePermission<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, grantNamespacePermission_args, Void> {
++      public grantNamespacePermission() {
++        super("grantNamespacePermission");
++      }
++
++      public grantNamespacePermission_args getEmptyArgsInstance() {
++        return new grantNamespacePermission_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            grantNamespacePermission_result result = new grantNamespacePermission_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            grantNamespacePermission_result result = new grantNamespacePermission_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof ThriftTableOperationException) {
++                        result.tope = (ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, grantNamespacePermission_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.grantNamespacePermission(args.tinfo, args.credentials, args.principal, args.ns, args.permission,resultHandler);
++      }
++    }
++
++    public static class revokeNamespacePermission<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, revokeNamespacePermission_args, Void> {
++      public revokeNamespacePermission() {
++        super("revokeNamespacePermission");
++      }
++
++      public revokeNamespacePermission_args getEmptyArgsInstance() {
++        return new revokeNamespacePermission_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            revokeNamespacePermission_result result = new revokeNamespacePermission_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            revokeNamespacePermission_result result = new revokeNamespacePermission_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof ThriftTableOperationException) {
++                        result.tope = (ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, revokeNamespacePermission_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.revokeNamespacePermission(args.tinfo, args.credentials, args.principal, args.ns, args.permission,resultHandler);
++      }
++    }
++
++    public static class getConfiguration<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getConfiguration_args, Map<String,String>> {
++      public getConfiguration() {
++        super("getConfiguration");
++      }
++
++      public getConfiguration_args getEmptyArgsInstance() {
++        return new getConfiguration_args();
++      }
++
++      public AsyncMethodCallback<Map<String,String>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Map<String,String>>() { 
++          public void onComplete(Map<String,String> o) {
++            getConfiguration_result result = new getConfiguration_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getConfiguration_result result = new getConfiguration_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getConfiguration_args args, org.apache.thrift.async.AsyncMethodCallback<Map<String,String>> resultHandler) throws TException {
++        iface.getConfiguration(args.tinfo, args.credentials, args.type,resultHandler);
++      }
++    }
++
++    public static class getTableConfiguration<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getTableConfiguration_args, Map<String,String>> {
++      public getTableConfiguration() {
++        super("getTableConfiguration");
++      }
++
++      public getTableConfiguration_args getEmptyArgsInstance() {
++        return new getTableConfiguration_args();
++      }
++
++      public AsyncMethodCallback<Map<String,String>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Map<String,String>>() { 
++          public void onComplete(Map<String,String> o) {
++            getTableConfiguration_result result = new getTableConfiguration_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getTableConfiguration_result result = new getTableConfiguration_result();
++            if (e instanceof ThriftTableOperationException) {
++                        result.tope = (ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getTableConfiguration_args args, org.apache.thrift.async.AsyncMethodCallback<Map<String,String>> resultHandler) throws TException {
++        iface.getTableConfiguration(args.tinfo, args.credentials, args.tableName,resultHandler);
++      }
++    }
++
++    public static class getNamespaceConfiguration<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getNamespaceConfiguration_args, Map<String,String>> {
++      public getNamespaceConfiguration() {
++        super("getNamespaceConfiguration");
++      }
++
++      public getNamespaceConfiguration_args getEmptyArgsInstance() {
++        return new getNamespaceConfiguration_args();
++      }
++
++      public AsyncMethodCallback<Map<String,String>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Map<String,String>>() { 
++          public void onComplete(Map<String,String> o) {
++            getNamespaceConfiguration_result result = new getNamespaceConfiguration_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getNamespaceConfiguration_result result = new getNamespaceConfiguration_result();
++            if (e instanceof ThriftTableOperationException) {
++                        result.tope = (ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getNamespaceConfiguration_args args, org.apache.thrift.async.AsyncMethodCallback<Map<String,String>> resultHandler) throws TException {
++        iface.getNamespaceConfiguration(args.tinfo, args.credentials, args.ns,resultHandler);
++      }
++    }
++
++    public static class checkClass<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, checkClass_args, Boolean> {
++      public checkClass() {
++        super("checkClass");
++      }
++
++      public checkClass_args getEmptyArgsInstance() {
++        return new checkClass_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            checkClass_result result = new checkClass_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            checkClass_result result = new checkClass_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, checkClass_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.checkClass(args.tinfo, args.credentials, args.className, args.interfaceMatch,resultHandler);
++      }
++    }
++
++    public static class checkTableClass<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, checkTableClass_args, Boolean> {
++      public checkTableClass() {
++        super("checkTableClass");
++      }
++
++      public checkTableClass_args getEmptyArgsInstance() {
++        return new checkTableClass_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            checkTableClass_result result = new checkTableClass_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            checkTableClass_result result = new checkTableClass_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof ThriftTableOperationException) {
++                        result.tope = (ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, checkTableClass_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.checkTableClass(args.tinfo, args.credentials, args.tableId, args.className, args.interfaceMatch,resultHandler);
++      }
++    }
++
++    public static class checkNamespaceClass<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, checkNamespaceClass_args, Boolean> {
++      public checkNamespaceClass() {
++        super("checkNamespaceClass");
++      }
++
++      public checkNamespaceClass_args getEmptyArgsInstance() {
++        return new checkNamespaceClass_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            checkNamespaceClass_result result = new checkNamespaceClass_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            checkNamespaceClass_result result = new checkNamespaceClass_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.sec = (ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof ThriftTableOperationException) {
++                        result.tope = (ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, checkNamespaceClass_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.checkNamespaceClass(args.tinfo, args.credentials, args.namespaceId, args.className, args.interfaceMatch,resultHandler);
++      }
++    }
++
++  }
++
++  public static class getRootTabletLocation_args implements org.apache.thrift.TBase<getRootTabletLocation_args, getRootTabletLocation_args._Fields>, java.io.Serializable, Cloneable, Comparable<getRootTabletLocation_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getRootTabletLocation_args");
+ 
+ 
+@@ -3127,13 +4897,13 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getRootTabletLocation_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getRootTabletLocation_args typedOther = (getRootTabletLocation_args)other;
+ 
+       return 0;
+     }
+@@ -3240,7 +5010,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getRootTabletLocation_result implements org.apache.thrift.TBase<getRootTabletLocation_result, getRootTabletLocation_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getRootTabletLocation_result implements org.apache.thrift.TBase<getRootTabletLocation_result, getRootTabletLocation_result._Fields>, java.io.Serializable, Cloneable, Comparable<getRootTabletLocation_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getRootTabletLocation_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRING, (short)0);
+@@ -3438,20 +5208,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getRootTabletLocation_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getRootTabletLocation_result typedOther = (getRootTabletLocation_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -3594,7 +5364,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getInstanceId_args implements org.apache.thrift.TBase<getInstanceId_args, getInstanceId_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getInstanceId_args implements org.apache.thrift.TBase<getInstanceId_args, getInstanceId_args._Fields>, java.io.Serializable, Cloneable, Comparable<getInstanceId_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getInstanceId_args");
+ 
+ 
+@@ -3727,13 +5497,13 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getInstanceId_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getInstanceId_args typedOther = (getInstanceId_args)other;
+ 
+       return 0;
+     }
+@@ -3840,7 +5610,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getInstanceId_result implements org.apache.thrift.TBase<getInstanceId_result, getInstanceId_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getInstanceId_result implements org.apache.thrift.TBase<getInstanceId_result, getInstanceId_result._Fields>, java.io.Serializable, Cloneable, Comparable<getInstanceId_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getInstanceId_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRING, (short)0);
+@@ -4038,20 +5808,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getInstanceId_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getInstanceId_result typedOther = (getInstanceId_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -4194,7 +5964,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getZooKeepers_args implements org.apache.thrift.TBase<getZooKeepers_args, getZooKeepers_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getZooKeepers_args implements org.apache.thrift.TBase<getZooKeepers_args, getZooKeepers_args._Fields>, java.io.Serializable, Cloneable, Comparable<getZooKeepers_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getZooKeepers_args");
+ 
+ 
+@@ -4327,13 +6097,13 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getZooKeepers_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getZooKeepers_args typedOther = (getZooKeepers_args)other;
+ 
+       return 0;
+     }
+@@ -4440,7 +6210,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getZooKeepers_result implements org.apache.thrift.TBase<getZooKeepers_result, getZooKeepers_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getZooKeepers_result implements org.apache.thrift.TBase<getZooKeepers_result, getZooKeepers_result._Fields>, java.io.Serializable, Cloneable, Comparable<getZooKeepers_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getZooKeepers_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRING, (short)0);
+@@ -4638,20 +6408,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getZooKeepers_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getZooKeepers_result typedOther = (getZooKeepers_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -4794,7 +6564,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class bulkImportFiles_args implements org.apache.thrift.TBase<bulkImportFiles_args, bulkImportFiles_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class bulkImportFiles_args implements org.apache.thrift.TBase<bulkImportFiles_args, bulkImportFiles_args._Fields>, java.io.Serializable, Cloneable, Comparable<bulkImportFiles_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("bulkImportFiles_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -4961,10 +6731,7 @@ import org.slf4j.LoggerFactory;
+         this.tableId = other.tableId;
+       }
+       if (other.isSetFiles()) {
+-        List<String> __this__files = new ArrayList<String>();
+-        for (String other_element : other.files) {
+-          __this__files.add(other_element);
+-        }
++        List<String> __this__files = new ArrayList<String>(other.files);
+         this.files = __this__files;
+       }
+       if (other.isSetErrorDir()) {
+@@ -5368,80 +7135,80 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(bulkImportFiles_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      bulkImportFiles_args typedOther = (bulkImportFiles_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTid()).compareTo(typedOther.isSetTid());
++      lastComparison = Boolean.valueOf(isSetTid()).compareTo(other.isSetTid());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTid()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tid, typedOther.tid);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tid, other.tid);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableId()).compareTo(typedOther.isSetTableId());
++      lastComparison = Boolean.valueOf(isSetTableId()).compareTo(other.isSetTableId());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableId()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableId, typedOther.tableId);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableId, other.tableId);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetFiles()).compareTo(typedOther.isSetFiles());
++      lastComparison = Boolean.valueOf(isSetFiles()).compareTo(other.isSetFiles());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetFiles()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.files, typedOther.files);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.files, other.files);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetErrorDir()).compareTo(typedOther.isSetErrorDir());
++      lastComparison = Boolean.valueOf(isSetErrorDir()).compareTo(other.isSetErrorDir());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetErrorDir()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.errorDir, typedOther.errorDir);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.errorDir, other.errorDir);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSetTime()).compareTo(typedOther.isSetSetTime());
++      lastComparison = Boolean.valueOf(isSetSetTime()).compareTo(other.isSetSetTime());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSetTime()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.setTime, typedOther.setTime);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.setTime, other.setTime);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -5605,7 +7372,7 @@ import org.slf4j.LoggerFactory;
+                   struct.files = new ArrayList<String>(_list8.size);
+                   for (int _i9 = 0; _i9 < _list8.size; ++_i9)
+                   {
+-                    String _elem10; // required
++                    String _elem10;
+                     _elem10 = iprot.readString();
+                     struct.files.add(_elem10);
+                   }
+@@ -5782,7 +7549,7 @@ import org.slf4j.LoggerFactory;
+             struct.files = new ArrayList<String>(_list13.size);
+             for (int _i14 = 0; _i14 < _list13.size; ++_i14)
+             {
+-              String _elem15; // required
++              String _elem15;
+               _elem15 = iprot.readString();
+               struct.files.add(_elem15);
+             }
+@@ -5802,7 +7569,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class bulkImportFiles_result implements org.apache.thrift.TBase<bulkImportFiles_result, bulkImportFiles_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class bulkImportFiles_result implements org.apache.thrift.TBase<bulkImportFiles_result, bulkImportFiles_result._Fields>, java.io.Serializable, Cloneable, Comparable<bulkImportFiles_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("bulkImportFiles_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0);
+@@ -5917,10 +7684,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public bulkImportFiles_result(bulkImportFiles_result other) {
+       if (other.isSetSuccess()) {
+-        List<String> __this__success = new ArrayList<String>();
+-        for (String other_element : other.success) {
+-          __this__success.add(other_element);
+-        }
++        List<String> __this__success = new ArrayList<String>(other.success);
+         this.success = __this__success;
+       }
+       if (other.isSetSec()) {
+@@ -6138,40 +7902,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(bulkImportFiles_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      bulkImportFiles_result typedOther = (bulkImportFiles_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -6269,7 +8033,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new ArrayList<String>(_list16.size);
+                   for (int _i17 = 0; _i17 < _list16.size; ++_i17)
+                   {
+-                    String _elem18; // required
++                    String _elem18;
+                     _elem18 = iprot.readString();
+                     struct.success.add(_elem18);
+                   }
+@@ -6390,7 +8154,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new ArrayList<String>(_list21.size);
+             for (int _i22 = 0; _i22 < _list21.size; ++_i22)
+             {
+-              String _elem23; // required
++              String _elem23;
+               _elem23 = iprot.readString();
+               struct.success.add(_elem23);
+             }
+@@ -6412,7 +8176,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class isActive_args implements org.apache.thrift.TBase<isActive_args, isActive_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class isActive_args implements org.apache.thrift.TBase<isActive_args, isActive_args._Fields>, java.io.Serializable, Cloneable, Comparable<isActive_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("isActive_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -6671,30 +8435,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(isActive_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      isActive_args typedOther = (isActive_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTid()).compareTo(typedOther.isSetTid());
++      lastComparison = Boolean.valueOf(isSetTid()).compareTo(other.isSetTid());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTid()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tid, typedOther.tid);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tid, other.tid);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -6869,7 +8633,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class isActive_result implements org.apache.thrift.TBase<isActive_result, isActive_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class isActive_result implements org.apache.thrift.TBase<isActive_result, isActive_result._Fields>, java.io.Serializable, Cloneable, Comparable<isActive_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("isActive_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -7069,20 +8833,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(isActive_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      isActive_result typedOther = (isActive_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -7223,7 +8987,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class ping_args implements org.apache.thrift.TBase<ping_args, ping_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class ping_args implements org.apache.thrift.TBase<ping_args, ping_args._Fields>, java.io.Serializable, Cloneable, Comparable<ping_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ping_args");
+ 
+     private static final org.apache.thrift.protocol.TField CREDENTIALS_FIELD_DESC = new org.apache.thrift.protocol.TField("credentials", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+@@ -7421,20 +9185,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(ping_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      ping_args typedOther = (ping_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -7582,7 +9346,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class ping_result implements org.apache.thrift.TBase<ping_result, ping_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class ping_result implements org.apache.thrift.TBase<ping_result, ping_result._Fields>, java.io.Serializable, Cloneable, Comparable<ping_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ping_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -7780,20 +9544,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(ping_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      ping_result typedOther = (ping_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -7938,7 +9702,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getDiskUsage_args implements org.apache.thrift.TBase<getDiskUsage_args, getDiskUsage_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getDiskUsage_args implements org.apache.thrift.TBase<getDiskUsage_args, getDiskUsage_args._Fields>, java.io.Serializable, Cloneable, Comparable<getDiskUsage_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getDiskUsage_args");
+ 
+     private static final org.apache.thrift.protocol.TField TABLES_FIELD_DESC = new org.apache.thrift.protocol.TField("tables", org.apache.thrift.protocol.TType.SET, (short)2);
+@@ -8044,10 +9808,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getDiskUsage_args(getDiskUsage_args other) {
+       if (other.isSetTables()) {
+-        Set<String> __this__tables = new HashSet<String>();
+-        for (String other_element : other.tables) {
+-          __this__tables.add(other_element);
+-        }
++        Set<String> __this__tables = new HashSet<String>(other.tables);
+         this.tables = __this__tables;
+       }
+       if (other.isSetCredentials()) {
+@@ -8215,30 +9976,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getDiskUsage_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getDiskUsage_args typedOther = (getDiskUsage_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTables()).compareTo(typedOther.isSetTables());
++      lastComparison = Boolean.valueOf(isSetTables()).compareTo(other.isSetTables());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTables()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tables, typedOther.tables);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tables, other.tables);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -8331,7 +10092,7 @@ import org.slf4j.LoggerFactory;
+                   struct.tables = new HashSet<String>(2*_set24.size);
+                   for (int _i25 = 0; _i25 < _set24.size; ++_i25)
+                   {
+-                    String _elem26; // required
++                    String _elem26;
+                     _elem26 = iprot.readString();
+                     struct.tables.add(_elem26);
+                   }
+@@ -8432,7 +10193,7 @@ import org.slf4j.LoggerFactory;
+             struct.tables = new HashSet<String>(2*_set29.size);
+             for (int _i30 = 0; _i30 < _set29.size; ++_i30)
+             {
+-              String _elem31; // required
++              String _elem31;
+               _elem31 = iprot.readString();
+               struct.tables.add(_elem31);
+             }
+@@ -8449,7 +10210,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getDiskUsage_result implements org.apache.thrift.TBase<getDiskUsage_result, getDiskUsage_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getDiskUsage_result implements org.apache.thrift.TBase<getDiskUsage_result, getDiskUsage_result._Fields>, java.io.Serializable, Cloneable, Comparable<getDiskUsage_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getDiskUsage_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0);
+@@ -8564,7 +10325,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getDiskUsage_result(getDiskUsage_result other) {
+       if (other.isSetSuccess()) {
+-        List<TDiskUsage> __this__success = new ArrayList<TDiskUsage>();
++        List<TDiskUsage> __this__success = new ArrayList<TDiskUsage>(other.success.size());
+         for (TDiskUsage other_element : other.success) {
+           __this__success.add(new TDiskUsage(other_element));
+         }
+@@ -8785,40 +10546,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getDiskUsage_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getDiskUsage_result typedOther = (getDiskUsage_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetToe()).compareTo(typedOther.isSetToe());
++      lastComparison = Boolean.valueOf(isSetToe()).compareTo(other.isSetToe());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetToe()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.toe, typedOther.toe);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.toe, other.toe);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -8916,7 +10677,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new ArrayList<TDiskUsage>(_list32.size);
+                   for (int _i33 = 0; _i33 < _list32.size; ++_i33)
+                   {
+-                    TDiskUsage _elem34; // required
++                    TDiskUsage _elem34;
+                     _elem34 = new TDiskUsage();
+                     _elem34.read(iprot);
+                     struct.success.add(_elem34);
+@@ -9038,7 +10799,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new ArrayList<TDiskUsage>(_list37.size);
+             for (int _i38 = 0; _i38 < _list37.size; ++_i38)
+             {
+-              TDiskUsage _elem39; // required
++              TDiskUsage _elem39;
+               _elem39 = new TDiskUsage();
+               _elem39.read(iprot);
+               struct.success.add(_elem39);
+@@ -9061,7 +10822,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class listLocalUsers_args implements org.apache.thrift.TBase<listLocalUsers_args, listLocalUsers_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class listLocalUsers_args implements org.apache.thrift.TBase<listLocalUsers_args, listLocalUsers_args._Fields>, java.io.Serializable, Cloneable, Comparable<listLocalUsers_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("listLocalUsers_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+@@ -9318,30 +11079,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(listLocalUsers_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      listLocalUsers_args typedOther = (listLocalUsers_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -9525,7 +11286,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class listLocalUsers_result implements org.apache.thrift.TBase<listLocalUsers_result, listLocalUsers_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class listLocalUsers_result implements org.apache.thrift.TBase<listLocalUsers_result, listLocalUsers_result._Fields>, java.io.Serializable, Cloneable, Comparable<listLocalUsers_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("listLocalUsers_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.SET, (short)0);
+@@ -9631,10 +11392,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public listLocalUsers_result(listLocalUsers_result other) {
+       if (other.isSetSuccess()) {
+-        Set<String> __this__success = new HashSet<String>();
+-        for (String other_element : other.success) {
+-          __this__success.add(other_element);
+-        }
++        Set<String> __this__success = new HashSet<String>(other.success);
+         this.success = __this__success;
+       }
+       if (other.isSetSec()) {
+@@ -9802,30 +11560,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(listLocalUsers_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      listLocalUsers_result typedOther = (listLocalUsers_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -9915,7 +11673,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new HashSet<String>(2*_set40.size);
+                   for (int _i41 = 0; _i41 < _set40.size; ++_i41)
+                   {
+-                    String _elem42; // required
++                    String _elem42;
+                     _elem42 = iprot.readString();
+                     struct.success.add(_elem42);
+                   }
+@@ -10016,7 +11774,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new HashSet<String>(2*_set45.size);
+             for (int _i46 = 0; _i46 < _set45.size; ++_i46)
+             {
+-              String _elem47; // required
++              String _elem47;
+               _elem47 = iprot.readString();
+               struct.success.add(_elem47);
+             }
+@@ -10033,7 +11791,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class createLocalUser_args implements org.apache.thrift.TBase<createLocalUser_args, createLocalUser_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class createLocalUser_args implements org.apache.thrift.TBase<createLocalUser_args, createLocalUser_args._Fields>, java.io.Serializable, Cloneable, Comparable<createLocalUser_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("createLocalUser_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)5);
+@@ -10419,50 +12177,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(createLocalUser_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      createLocalUser_args typedOther = (createLocalUser_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(typedOther.isSetPrincipal());
++      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(other.isSetPrincipal());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPrincipal()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, typedOther.principal);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, other.principal);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPassword()).compareTo(typedOther.isSetPassword());
++      lastComparison = Boolean.valueOf(isSetPassword()).compareTo(other.isSetPassword());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPassword()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.password, typedOther.password);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.password, other.password);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -10708,7 +12466,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class createLocalUser_result implements org.apache.thrift.TBase<createLocalUser_result, createLocalUser_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class createLocalUser_result implements org.apache.thrift.TBase<createLocalUser_result, createLocalUser_result._Fields>, java.io.Serializable, Cloneable, Comparable<createLocalUser_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("createLocalUser_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -10906,20 +12664,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(createLocalUser_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      createLocalUser_result typedOther = (createLocalUser_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -11064,7 +12822,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class dropLocalUser_args implements org.apache.thrift.TBase<dropLocalUser_args, dropLocalUser_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class dropLocalUser_args implements org.apache.thrift.TBase<dropLocalUser_args, dropLocalUser_args._Fields>, java.io.Serializable, Cloneable, Comparable<dropLocalUser_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("dropLocalUser_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+@@ -11380,40 +13138,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(dropLocalUser_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      dropLocalUser_args typedOther = (dropLocalUser_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(typedOther.isSetPrincipal());
++      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(other.isSetPrincipal());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPrincipal()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, typedOther.principal);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, other.principal);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -11628,7 +13386,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class dropLocalUser_result implements org.apache.thrift.TBase<dropLocalUser_result, dropLocalUser_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class dropLocalUser_result implements org.apache.thrift.TBase<dropLocalUser_result, dropLocalUser_result._Fields>, java.io.Serializable, Cloneable, Comparable<dropLocalUser_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("dropLocalUser_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -11826,20 +13584,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(dropLocalUser_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      dropLocalUser_result typedOther = (dropLocalUser_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -11984,7 +13742,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class changeLocalUserPassword_args implements org.apache.thrift.TBase<changeLocalUserPassword_args, changeLocalUserPassword_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class changeLocalUserPassword_args implements org.apache.thrift.TBase<changeLocalUserPassword_args, changeLocalUserPassword_args._Fields>, java.io.Serializable, Cloneable, Comparable<changeLocalUserPassword_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("changeLocalUserPassword_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)4);
+@@ -12370,50 +14128,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(changeLocalUserPassword_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      changeLocalUserPassword_args typedOther = (changeLocalUserPassword_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(typedOther.isSetPrincipal());
++      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(other.isSetPrincipal());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPrincipal()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, typedOther.principal);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, other.principal);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPassword()).compareTo(typedOther.isSetPassword());
++      lastComparison = Boolean.valueOf(isSetPassword()).compareTo(other.isSetPassword());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPassword()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.password, typedOther.password);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.password, other.password);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -12659,7 +14417,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class changeLocalUserPassword_result implements org.apache.thrift.TBase<changeLocalUserPassword_result, changeLocalUserPassword_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class changeLocalUserPassword_result implements org.apache.thrift.TBase<changeLocalUserPassword_result, changeLocalUserPassword_result._Fields>, java.io.Serializable, Cloneable, Comparable<changeLocalUserPassword_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("changeLocalUserPassword_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -12857,20 +14615,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(changeLocalUserPassword_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      changeLocalUserPassword_result typedOther = (changeLocalUserPassword_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -13015,7 +14773,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class authenticate_args implements org.apache.thrift.TBase<authenticate_args, authenticate_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class authenticate_args implements org.apache.thrift.TBase<authenticate_args, authenticate_args._Fields>, java.io.Serializable, Cloneable, Comparable<authenticate_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("authenticate_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -13272,30 +15030,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(authenticate_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      authenticate_args typedOther = (authenticate_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -13479,7 +15237,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class authenticate_result implements org.apache.thrift.TBase<authenticate_result, authenticate_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class authenticate_result implements org.apache.thrift.TBase<authenticate_result, authenticate_result._Fields>, java.io.Serializable, Cloneable, Comparable<authenticate_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("authenticate_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -13738,30 +15496,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(authenticate_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      authenticate_result typedOther = (authenticate_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -13935,7 +15693,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class authenticateUser_args implements org.apache.thrift.TBase<authenticateUser_args, authenticateUser_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class authenticateUser_args implements org.apache.thrift.TBase<authenticateUser_args, authenticateUser_args._Fields>, java.io.Serializable, Cloneable, Comparable<authenticateUser_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("authenticateUser_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -14251,40 +16009,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(authenticateUser_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      authenticateUser_args typedOther = (authenticateUser_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetToAuth()).compareTo(typedOther.isSetToAuth());
++      lastComparison = Boolean.valueOf(isSetToAuth()).compareTo(other.isSetToAuth());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetToAuth()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.toAuth, typedOther.toAuth);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.toAuth, other.toAuth);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -14504,7 +16262,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class authenticateUser_result implements org.apache.thrift.TBase<authenticateUser_result, authenticateUser_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class authenticateUser_result implements org.apache.thrift.TBase<authenticateUser_result, authenticateUser_result._Fields>, java.io.Serializable, Cloneable, Comparable<authenticateUser_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("authenticateUser_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -14763,30 +16521,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(authenticateUser_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      authenticateUser_result typedOther = (authenticateUser_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -14960,7 +16718,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class changeAuthorizations_args implements org.apache.thrift.TBase<changeAuthorizations_args, changeAuthorizations_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class changeAuthorizations_args implements org.apache.thrift.TBase<changeAuthorizations_args, changeAuthorizations_args._Fields>, java.io.Serializable, Cloneable, Comparable<changeAuthorizations_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("changeAuthorizations_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)4);
+@@ -15093,12 +16851,7 @@ import org.slf4j.LoggerFactory;
+         this.principal = other.principal;
+       }
+       if (other.isSetAuthorizations()) {
+-        List<ByteBuffer> __this__authorizations = new ArrayList<ByteBuffer>();
+-        for (ByteBuffer other_element : other.authorizations) {
+-          ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-          __this__authorizations.add(temp_binary_element);
+-        }
++        List<ByteBuffer> __this__authorizations = new ArrayList<ByteBuffer>(other.authorizations);
+         this.authorizations = __this__authorizations;
+       }
+     }
+@@ -15357,50 +17110,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(changeAuthorizations_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      changeAuthorizations_args typedOther = (changeAuthorizations_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(typedOther.isSetPrincipal());
++      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(other.isSetPrincipal());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPrincipal()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, typedOther.principal);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, other.principal);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(typedOther.isSetAuthorizations());
++      lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(other.isSetAuthorizations());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetAuthorizations()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, typedOther.authorizations);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, other.authorizations);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -15538,7 +17291,7 @@ import org.slf4j.LoggerFactory;
+                   struct.authorizations = new ArrayList<ByteBuffer>(_list48.size);
+                   for (int _i49 = 0; _i49 < _list48.size; ++_i49)
+                   {
+-                    ByteBuffer _elem50; // required
++                    ByteBuffer _elem50;
+                     _elem50 = iprot.readBinary();
+                     struct.authorizations.add(_elem50);
+                   }
+@@ -15666,7 +17419,7 @@ import org.slf4j.LoggerFactory;
+             struct.authorizations = new ArrayList<ByteBuffer>(_list53.size);
+             for (int _i54 = 0; _i54 < _list53.size; ++_i54)
+             {
+-              ByteBuffer _elem55; // required
++              ByteBuffer _elem55;
+               _elem55 = iprot.readBinary();
+               struct.authorizations.add(_elem55);
+             }
+@@ -15678,7 +17431,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class changeAuthorizations_result implements org.apache.thrift.TBase<changeAuthorizations_result, changeAuthorizations_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class changeAuthorizations_result implements org.apache.thrift.TBase<changeAuthorizations_result, changeAuthorizations_result._Fields>, java.io.Serializable, Cloneable, Comparable<changeAuthorizations_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("changeAuthorizations_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -15876,20 +17629,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(changeAuthorizations_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      changeAuthorizations_result typedOther = (changeAuthorizations_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -16034,7 +17787,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getUserAuthorizations_args implements org.apache.thrift.TBase<getUserAuthorizations_args, getUserAuthorizations_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getUserAuthorizations_args implements org.apache.thrift.TBase<getUserAuthorizations_args, getUserAuthorizations_args._Fields>, java.io.Serializable, Cloneable, Comparable<getUserAuthorizations_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getUserAuthorizations_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+@@ -16350,40 +18103,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getUserAuthorizations_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getUserAuthorizations_args typedOther = (getUserAuthorizations_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(typedOther.isSetPrincipal());
++      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(other.isSetPrincipal());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPrincipal()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, typedOther.principal);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, other.principal);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -16598,7 +18351,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getUserAuthorizations_result implements org.apache.thrift.TBase<getUserAuthorizations_result, getUserAuthorizations_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getUserAuthorizations_result implements org.apache.thrift.TBase<getUserAuthorizations_result, getUserAuthorizations_result._Fields>, java.io.Serializable, Cloneable, Comparable<getUserAuthorizations_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getUserAuthorizations_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0);
+@@ -16704,12 +18457,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getUserAuthorizations_result(getUserAuthorizations_result other) {
+       if (other.isSetSuccess()) {
+-        List<ByteBuffer> __this__success = new ArrayList<ByteBuffer>();
+-        for (ByteBuffer other_element : other.success) {
+-          ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-          __this__success.add(temp_binary_element);
+-        }
++        List<ByteBuffer> __this__success = new ArrayList<ByteBuffer>(other.success);
+         this.success = __this__success;
+       }
+       if (other.isSetSec()) {
+@@ -16877,30 +18625,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getUserAuthorizations_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getUserAuthorizations_result typedOther = (getUserAuthorizations_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -16990,7 +18738,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new ArrayList<ByteBuffer>(_list56.size);
+                   for (int _i57 = 0; _i57 < _list56.size; ++_i57)
+                   {
+-                    ByteBuffer _elem58; // required
++                    ByteBuffer _elem58;
+                     _elem58 = iprot.readBinary();
+                     struct.success.add(_elem58);
+                   }
+@@ -17091,7 +18839,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new ArrayList<ByteBuffer>(_list61.size);
+             for (int _i62 = 0; _i62 < _list61.size; ++_i62)
+             {
+-              ByteBuffer _elem63; // required
++              ByteBuffer _elem63;
+               _elem63 = iprot.readBinary();
+               struct.success.add(_elem63);
+             }
+@@ -17108,7 +18856,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class hasSystemPermission_args implements org.apache.thrift.TBase<hasSystemPermission_args, hasSystemPermission_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class hasSystemPermission_args implements org.apache.thrift.TBase<hasSystemPermission_args, hasSystemPermission_args._Fields>, java.io.Serializable, Cloneable, Comparable<hasSystemPermission_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("hasSystemPermission_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)4);
+@@ -17485,50 +19233,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(hasSystemPermission_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      hasSystemPermission_args typedOther = (hasSystemPermission_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(typedOther.isSetPrincipal());
++      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(other.isSetPrincipal());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPrincipal()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, typedOther.principal);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, other.principal);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSysPerm()).compareTo(typedOther.isSetSysPerm());
++      lastComparison = Boolean.valueOf(isSetSysPerm()).compareTo(other.isSetSysPerm());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSysPerm()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sysPerm, typedOther.sysPerm);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sysPerm, other.sysPerm);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -17770,7 +19518,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class hasSystemPermission_result implements org.apache.thrift.TBase<hasSystemPermission_result, hasSystemPermission_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class hasSystemPermission_result implements org.apache.thrift.TBase<hasSystemPermission_result, hasSystemPermission_result._Fields>, java.io.Serializable, Cloneable, Comparable<hasSystemPermission_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("hasSystemPermission_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -18029,30 +19777,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(hasSystemPermission_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      hasSystemPermission_result typedOther = (hasSystemPermission_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -18226,7 +19974,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class hasTablePermission_args implements org.apache.thrift.TBase<hasTablePermission_args, hasTablePermission_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class hasTablePermission_args implements org.apache.thrift.TBase<hasTablePermission_args, hasTablePermission_args._Fields>, java.io.Serializable, Cloneable, Comparable<hasTablePermission_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("hasTablePermission_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)5);
+@@ -18662,60 +20410,60 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(hasTablePermission_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      hasTablePermission_args typedOther = (hasTablePermission_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(typedOther.isSetPrincipal());
++      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(other.isSetPrincipal());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPrincipal()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, typedOther.principal);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, other.principal);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTblPerm()).compareTo(typedOther.isSetTblPerm());
++      lastComparison = Boolean.valueOf(isSetTblPerm()).compareTo(other.isSetTblPerm());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTblPerm()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tblPerm, typedOther.tblPerm);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tblPerm, other.tblPerm);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -18988,7 +20736,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class hasTablePermission_result implements org.apache.thrift.TBase<hasTablePermission_result, hasTablePermission_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class hasTablePermission_result implements org.apache.thrift.TBase<hasTablePermission_result, hasTablePermission_result._Fields>, java.io.Serializable, Cloneable, Comparable<hasTablePermission_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("hasTablePermission_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -19306,40 +21054,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(hasTablePermission_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      hasTablePermission_result typedOther = (hasTablePermission_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -19546,7 +21294,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class hasNamespacePermission_args implements org.apache.thrift.TBase<hasNamespacePermission_args, hasNamespacePermission_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class hasNamespacePermission_args implements org.apache.thrift.TBase<hasNamespacePermission_args, hasNamespacePermission_args._Fields>, java.io.Serializable, Cloneable, Comparable<hasNamespacePermission_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("hasNamespacePermission_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -19982,60 +21730,60 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(hasNamespacePermission_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      hasNamespacePermission_args typedOther = (hasNamespacePermission_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(typedOther.isSetPrincipal());
++      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(other.isSetPrincipal());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPrincipal()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, typedOther.principal);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, other.principal);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNs()).compareTo(typedOther.isSetNs());
++      lastComparison = Boolean.valueOf(isSetNs()).compareTo(other.isSetNs());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNs()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ns, typedOther.ns);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ns, other.ns);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTblNspcPerm()).compareTo(typedOther.isSetTblNspcPerm());
++      lastComparison = Boolean.valueOf(isSetTblNspcPerm()).compareTo(other.isSetTblNspcPerm());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTblNspcPerm()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tblNspcPerm, typedOther.tblNspcPerm);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tblNspcPerm, other.tblNspcPerm);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -20308,7 +22056,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class hasNamespacePermission_result implements org.apache.thrift.TBase<hasNamespacePermission_result, hasNamespacePermission_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class hasNamespacePermission_result implements org.apache.thrift.TBase<hasNamespacePermission_result, hasNamespacePermission_result._Fields>, java.io.Serializable, Cloneable, Comparable<hasNamespacePermission_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("hasNamespacePermission_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -20626,40 +22374,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(hasNamespacePermission_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      hasNamespacePermission_result typedOther = (hasNamespacePermission_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -20866,7 +22614,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class grantSystemPermission_args implements org.apache.thrift.TBase<grantSystemPermission_args, grantSystemPermission_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class grantSystemPermission_args implements org.apache.thrift.TBase<grantSystemPermission_args, grantSystemPermission_args._Fields>, java.io.Serializable, Cloneable, Comparable<grantSystemPermission_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("grantSystemPermission_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)4);
+@@ -21243,50 +22991,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(grantSystemPermission_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      grantSystemPermission_args typedOther = (grantSystemPermission_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(typedOther.isSetPrincipal());
++      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(other.isSetPrincipal());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPrincipal()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, typedOther.principal);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, other.principal);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPermission()).compareTo(typedOther.isSetPermission());
++      lastComparison = Boolean.valueOf(isSetPermission()).compareTo(other.isSetPermission());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPermission()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.permission, typedOther.permission);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.permission, other.permission);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -21528,7 +23276,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class grantSystemPermission_result implements org.apache.thrift.TBase<grantSystemPermission_result, grantSystemPermission_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class grantSystemPermission_result implements org.apache.thrift.TBase<grantSystemPermission_result, grantSystemPermission_result._Fields>, java.io.Serializable, Cloneable, Comparable<grantSystemPermission_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("grantSystemPermission_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -21726,20 +23474,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(grantSystemPermission_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      grantSystemPermission_result typedOther = (grantSystemPermission_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -21884,7 +23632,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class revokeSystemPermission_args implements org.apache.thrift.TBase<revokeSystemPermission_args, revokeSystemPermission_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class revokeSystemPermission_args implements org.apache.thrift.TBase<revokeSystemPermission_args, revokeSystemPermission_args._Fields>, java.io.Serializable, Cloneable, Comparable<revokeSystemPermission_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("revokeSystemPermission_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)4);
+@@ -22261,50 +24009,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(revokeSystemPermission_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      revokeSystemPermission_args typedOther = (revokeSystemPermission_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(typedOther.isSetPrincipal());
++      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(other.isSetPrincipal());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPrincipal()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, typedOther.principal);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, other.principal);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPermission()).compareTo(typedOther.isSetPermission());
++      lastComparison = Boolean.valueOf(isSetPermission()).compareTo(other.isSetPermission());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPermission()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.permission, typedOther.permission);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.permission, other.permission);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -22546,7 +24294,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class revokeSystemPermission_result implements org.apache.thrift.TBase<revokeSystemPermission_result, revokeSystemPermission_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class revokeSystemPermission_result implements org.apache.thrift.TBase<revokeSystemPermission_result, revokeSystemPermission_result._Fields>, java.io.Serializable, Cloneable, Comparable<revokeSystemPermission_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("revokeSystemPermission_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -22744,20 +24492,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(revokeSystemPermission_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      revokeSystemPermission_result typedOther = (revokeSystemPermission_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -22902,7 +24650,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class grantTablePermission_args implements org.apache.thrift.TBase<grantTablePermission_args, grantTablePermission_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class grantTablePermission_args implements org.apache.thrift.TBase<grantTablePermission_args, grantTablePermission_args._Fields>, java.io.Serializable, Cloneable, Comparable<grantTablePermission_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("grantTablePermission_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)5);
+@@ -23338,60 +25086,60 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(grantTablePermission_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      grantTablePermission_args typedOther = (grantTablePermission_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(typedOther.isSetPrincipal());
++      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(other.isSetPrincipal());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPrincipal()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, typedOther.principal);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, other.principal);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPermission()).compareTo(typedOther.isSetPermission());
++      lastComparison = Boolean.valueOf(isSetPermission()).compareTo(other.isSetPermission());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPermission()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.permission, typedOther.permission);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.permission, other.permission);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -23664,7 +25412,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class grantTablePermission_result implements org.apache.thrift.TBase<grantTablePermission_result, grantTablePermission_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class grantTablePermission_result implements org.apache.thrift.TBase<grantTablePermission_result, grantTablePermission_result._Fields>, java.io.Serializable, Cloneable, Comparable<grantTablePermission_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("grantTablePermission_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -23921,30 +25669,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(grantTablePermission_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      grantTablePermission_result typedOther = (grantTablePermission_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -24122,7 +25870,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class revokeTablePermission_args implements org.apache.thrift.TBase<revokeTablePermission_args, revokeTablePermission_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class revokeTablePermission_args implements org.apache.thrift.TBase<revokeTablePermission_args, revokeTablePermission_args._Fields>, java.io.Serializable, Cloneable, Comparable<revokeTablePermission_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("revokeTablePermission_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)5);
+@@ -24558,60 +26306,60 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(revokeTablePermission_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      revokeTablePermission_args typedOther = (revokeTablePermission_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(typedOther.isSetPrincipal());
++      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(other.isSetPrincipal());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPrincipal()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, typedOther.principal);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, other.principal);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPermission()).compareTo(typedOther.isSetPermission());
++      lastComparison = Boolean.valueOf(isSetPermission()).compareTo(other.isSetPermission());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPermission()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.permission, typedOther.permission);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.permission, other.permission);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -24884,7 +26632,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class revokeTablePermission_result implements org.apache.thrift.TBase<revokeTablePermission_result, revokeTablePermission_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class revokeTablePermission_result implements org.apache.thrift.TBase<revokeTablePermission_result, revokeTablePermission_result._Fields>, java.io.Serializable, Cloneable, Comparable<revokeTablePermission_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("revokeTablePermission_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -25141,30 +26889,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(revokeTablePermission_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      revokeTablePermission_result typedOther = (revokeTablePermission_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -25342,7 +27090,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class grantNamespacePermission_args implements org.apache.thrift.TBase<grantNamespacePermission_args, grantNamespacePermission_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class grantNamespacePermission_args implements org.apache.thrift.TBase<grantNamespacePermission_args, grantNamespacePermission_args._Fields>, java.io.Serializable, Cloneable, Comparable<grantNamespacePermission_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("grantNamespacePermission_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -25778,60 +27526,60 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(grantNamespacePermission_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      grantNamespacePermission_args typedOther = (grantNamespacePermission_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(typedOther.isSetPrincipal());
++      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(other.isSetPrincipal());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPrincipal()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, typedOther.principal);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, other.principal);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNs()).compareTo(typedOther.isSetNs());
++      lastComparison = Boolean.valueOf(isSetNs()).compareTo(other.isSetNs());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNs()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ns, typedOther.ns);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ns, other.ns);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPermission()).compareTo(typedOther.isSetPermission());
++      lastComparison = Boolean.valueOf(isSetPermission()).compareTo(other.isSetPermission());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPermission()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.permission, typedOther.permission);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.permission, other.permission);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -26104,7 +27852,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class grantNamespacePermission_result implements org.apache.thrift.TBase<grantNamespacePermission_result, grantNamespacePermission_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class grantNamespacePermission_result implements org.apache.thrift.TBase<grantNamespacePermission_result, grantNamespacePermission_result._Fields>, java.io.Serializable, Cloneable, Comparable<grantNamespacePermission_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("grantNamespacePermission_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -26361,30 +28109,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(grantNamespacePermission_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      grantNamespacePermission_result typedOther = (grantNamespacePermission_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -26562,7 +28310,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class revokeNamespacePermission_args implements org.apache.thrift.TBase<revokeNamespacePermission_args, revokeNamespacePermission_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class revokeNamespacePermission_args implements org.apache.thrift.TBase<revokeNamespacePermission_args, revokeNamespacePermission_args._Fields>, java.io.Serializable, Cloneable, Comparable<revokeNamespacePermission_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("revokeNamespacePermission_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -26998,60 +28746,60 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(revokeNamespacePermission_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      revokeNamespacePermission_args typedOther = (revokeNamespacePermission_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(typedOther.isSetPrincipal());
++      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(other.isSetPrincipal());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPrincipal()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, typedOther.principal);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, other.principal);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNs()).compareTo(typedOther.isSetNs());
++      lastComparison = Boolean.valueOf(isSetNs()).compareTo(other.isSetNs());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNs()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ns, typedOther.ns);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ns, other.ns);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPermission()).compareTo(typedOther.isSetPermission());
++      lastComparison = Boolean.valueOf(isSetPermission()).compareTo(other.isSetPermission());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPermission()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.permission, typedOther.permission);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.permission, other.permission);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -27324,7 +29072,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class revokeNamespacePermission_result implements org.apache.thrift.TBase<revokeNamespacePermission_result, revokeNamespacePermission_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class revokeNamespacePermission_result implements org.apache.thrift.TBase<revokeNamespacePermission_result, revokeNamespacePermission_result._Fields>, java.io.Serializable, Cloneable, Comparable<revokeNamespacePermission_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("revokeNamespacePermission_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -27581,30 +29329,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(revokeNamespacePermission_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      revokeNamespacePermission_result typedOther = (revokeNamespacePermission_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -27782,7 +29530,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getConfiguration_args implements org.apache.thrift.TBase<getConfiguration_args, getConfiguration_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getConfiguration_args implements org.apache.thrift.TBase<getConfiguration_args, getConfiguration_args._Fields>, java.io.Serializable, Cloneable, Comparable<getConfiguration_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getConfiguration_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+@@ -28114,40 +29862,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getConfiguration_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getConfiguration_args typedOther = (getConfiguration_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetType()).compareTo(typedOther.isSetType());
++      lastComparison = Boolean.valueOf(isSetType()).compareTo(other.isSetType());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetType()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.type, typedOther.type);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.type, other.type);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -28362,7 +30110,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getConfiguration_result implements org.apache.thrift.TBase<getConfiguration_result, getConfiguration_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getConfiguration_result implements org.apache.thrift.TBase<getConfiguration_result, getConfiguration_result._Fields>, java.io.Serializable, Cloneable, Comparable<getConfiguration_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getConfiguration_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.MAP, (short)0);
+@@ -28460,18 +30208,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getConfiguration_result(getConfiguration_result other) {
+       if (other.isSetSuccess()) {
+-        Map<String,String> __this__success = new HashMap<String,String>();
+-        for (Map.Entry<String, String> other_element : other.success.entrySet()) {
+-
+-          String other_element_key = other_element.getKey();
+-          String other_element_value = other_element.getValue();
+-
+-          String __this__success_copy_key = other_element_key;
+-
+-          String __this__success_copy_value = other_element_value;
+-
+-          __this__success.put(__this__success_copy_key, __this__success_copy_value);
+-        }
++        Map<String,String> __this__success = new HashMap<String,String>(other.success);
+         this.success = __this__success;
+       }
+     }
+@@ -28585,20 +30322,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getConfiguration_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getConfiguration_result typedOther = (getConfiguration_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -28680,8 +30417,8 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new HashMap<String,String>(2*_map64.size);
+                   for (int _i65 = 0; _i65 < _map64.size; ++_i65)
+                   {
+-                    String _key66; // required
+-                    String _val67; // required
++                    String _key66;
++                    String _val67;
+                     _key66 = iprot.readString();
+                     _val67 = iprot.readString();
+                     struct.success.put(_key66, _val67);
+@@ -28765,8 +30502,8 @@ import org.slf4j.LoggerFactory;
+             struct.success = new HashMap<String,String>(2*_map70.size);
+             for (int _i71 = 0; _i71 < _map70.size; ++_i71)
+             {
+-              String _key72; // required
+-              String _val73; // required
++              String _key72;
++              String _val73;
+               _key72 = iprot.readString();
+               _val73 = iprot.readString();
+               struct.success.put(_key72, _val73);
+@@ -28779,7 +30516,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getTableConfiguration_args implements org.apache.thrift.TBase<getTableConfiguration_args, getTableConfiguration_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getTableConfiguration_args implements org.apache.thrift.TBase<getTableConfiguration_args, getTableConfiguration_args._Fields>, java.io.Serializable, Cloneable, Comparable<getTableConfiguration_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getTableConfiguration_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -29095,40 +30832,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getTableConfiguration_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getTableConfiguration_args typedOther = (getTableConfiguration_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -29343,7 +31080,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getTableConfiguration_result implements org.apache.thrift.TBase<getTableConfiguration_result, getTableConfiguration_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getTableConfiguration_result implements org.apache.thrift.TBase<getTableConfiguration_result, getTableConfiguration_result._Fields>, java.io.Serializable, Cloneable, Comparable<getTableConfiguration_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getTableConfiguration_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.MAP, (short)0);
+@@ -29450,18 +31187,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getTableConfiguration_result(getTableConfiguration_result other) {
+       if (other.isSetSuccess()) {
+-        Map<String,String> __this__success = new HashMap<String,String>();
+-        for (Map.Entry<String, String> other_element : other.success.entrySet()) {
+-
+-          String other_element_key = other_element.getKey();
+-          String other_element_value = other_element.getValue();
+-
+-          String __this__success_copy_key = other_element_key;
+-
+-          String __this__success_copy_value = other_element_value;
+-
+-          __this__success.put(__this__success_copy_key, __this__success_copy_value);
+-        }
++        Map<String,String> __this__success = new HashMap<String,String>(other.success);
+         this.success = __this__success;
+       }
+       if (other.isSetTope()) {
+@@ -29625,30 +31351,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getTableConfiguration_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getTableConfiguration_result typedOther = (getTableConfiguration_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -29738,8 +31464,8 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new HashMap<String,String>(2*_map74.size);
+                   for (int _i75 = 0; _i75 < _map74.size; ++_i75)
+                   {
+-                    String _key76; // required
+-                    String _val77; // required
++                    String _key76;
++                    String _val77;
+                     _key76 = iprot.readString();
+                     _val77 = iprot.readString();
+                     struct.success.put(_key76, _val77);
+@@ -29843,8 +31569,8 @@ import org.slf4j.LoggerFactory;
+             struct.success = new HashMap<String,String>(2*_map80.size);
+             for (int _i81 = 0; _i81 < _map80.size; ++_i81)
+             {
+-              String _key82; // required
+-              String _val83; // required
++              String _key82;
++              String _val83;
+               _key82 = iprot.readString();
+               _val83 = iprot.readString();
+               struct.success.put(_key82, _val83);
+@@ -29862,7 +31588,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getNamespaceConfiguration_args implements org.apache.thrift.TBase<getNamespaceConfiguration_args, getNamespaceConfiguration_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getNamespaceConfiguration_args implements org.apache.thrift.TBase<getNamespaceConfiguration_args, getNamespaceConfiguration_args._Fields>, java.io.Serializable, Cloneable, Comparable<getNamespaceConfiguration_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getNamespaceConfiguration_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -30178,40 +31904,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getNamespaceConfiguration_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getNamespaceConfiguration_args typedOther = (getNamespaceConfiguration_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNs()).compareTo(typedOther.isSetNs());
++      lastComparison = Boolean.valueOf(isSetNs()).compareTo(other.isSetNs());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNs()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ns, typedOther.ns);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ns, other.ns);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -30426,7 +32152,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getNamespaceConfiguration_result implements org.apache.thrift.TBase<getNamespaceConfiguration_result, getNamespaceConfiguration_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getNamespaceConfiguration_result implements org.apache.thrift.TBase<getNamespaceConfiguration_result, getNamespaceConfiguration_result._Fields>, java.io.Serializable, Cloneable, Comparable<getNamespaceConfiguration_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getNamespaceConfiguration_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.MAP, (short)0);
+@@ -30533,18 +32259,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getNamespaceConfiguration_result(getNamespaceConfiguration_result other) {
+       if (other.isSetSuccess()) {
+-        Map<String,String> __this__success = new HashMap<String,String>();
+-        for (Map.Entry<String, String> other_element : other.success.entrySet()) {
+-
+-          String other_element_key = other_element.getKey();
+-          String other_element_value = other_element.getValue();
+-
+-          String __this__success_copy_key = other_element_key;
+-
+-          String __this__success_copy_value = other_element_value;
+-
+-          __this__success.put(__this__success_copy_key, __this__success_copy_value);
+-        }
++        Map<String,String> __this__success = new HashMap<String,String>(other.success);
+         this.success = __this__success;
+       }
+       if (other.isSetTope()) {
+@@ -30708,30 +32423,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getNamespaceConfiguration_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getNamespaceConfiguration_result typedOther = (getNamespaceConfiguration_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -30821,8 +32536,8 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new HashMap<String,String>(2*_map84.size);
+                   for (int _i85 = 0; _i85 < _map84.size; ++_i85)
+                   {
+-                    String _key86; // required
+-                    String _val87; // required
++                    String _key86;
++                    String _val87;
+                     _key86 = iprot.readString();
+                     _val87 = iprot.readString();
+                     struct.success.put(_key86, _val87);
+@@ -30926,8 +32641,8 @@ import org.slf4j.LoggerFactory;
+             struct.success = new HashMap<String,String>(2*_map90.size);
+             for (int _i91 = 0; _i91 < _map90.size; ++_i91)
+             {
+-              String _key92; // required
+-              String _val93; // required
++              String _key92;
++              String _val93;
+               _key92 = iprot.readString();
+               _val93 = iprot.readString();
+               struct.success.put(_key92, _val93);
+@@ -30945,7 +32660,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class checkClass_args implements org.apache.thrift.TBase<checkClass_args, checkClass_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class checkClass_args implements org.apache.thrift.TBase<checkClass_args, checkClass_args._Fields>, java.io.Serializable, Cloneable, Comparable<checkClass_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("checkClass_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -31320,50 +33035,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(checkClass_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      checkClass_args typedOther = (checkClass_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetClassName()).compareTo(typedOther.isSetClassName());
++      lastComparison = Boolean.valueOf(isSetClassName()).compareTo(other.isSetClassName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetClassName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.className, typedOther.className);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.className, other.className);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetInterfaceMatch()).compareTo(typedOther.isSetInterfaceMatch());
++      lastComparison = Boolean.valueOf(isSetInterfaceMatch()).compareTo(other.isSetInterfaceMatch());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetInterfaceMatch()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.interfaceMatch, typedOther.interfaceMatch);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.interfaceMatch, other.interfaceMatch);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -31609,7 +33324,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class checkClass_result implements org.apache.thrift.TBase<checkClass_result, checkClass_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class checkClass_result implements org.apache.thrift.TBase<checkClass_result, checkClass_result._Fields>, java.io.Serializable, Cloneable, Comparable<checkClass_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("checkClass_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -31809,20 +33524,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(checkClass_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      checkClass_result typedOther = (checkClass_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -31963,7 +33678,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class checkTableClass_args implements org.apache.thrift.TBase<checkTableClass_args, checkTableClass_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class checkTableClass_args implements org.apache.thrift.TBase<checkTableClass_args, checkTableClass_args._Fields>, java.io.Serializable, Cloneable, Comparable<checkTableClass_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("checkTableClass_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -32397,60 +34112,60 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(checkTableClass_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      checkTableClass_args typedOther = (checkTableClass_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableId()).compareTo(typedOther.isSetTableId());
++      lastComparison = Boolean.valueOf(isSetTableId()).compareTo(other.isSetTableId());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableId()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableId, typedOther.tableId);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableId, other.tableId);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetClassName()).compareTo(typedOther.isSetClassName());
++      lastComparison = Boolean.valueOf(isSetClassName()).compareTo(other.isSetClassName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetClassName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.className, typedOther.className);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.className, other.className);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetInterfaceMatch()).compareTo(typedOther.isSetInterfaceMatch());
++      lastComparison = Boolean.valueOf(isSetInterfaceMatch()).compareTo(other.isSetInterfaceMatch());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetInterfaceMatch()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.interfaceMatch, typedOther.interfaceMatch);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.interfaceMatch, other.interfaceMatch);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -32727,7 +34442,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class checkTableClass_result implements org.apache.thrift.TBase<checkTableClass_result, checkTableClass_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class checkTableClass_result implements org.apache.thrift.TBase<checkTableClass_result, checkTableClass_result._Fields>, java.io.Serializable, Cloneable, Comparable<checkTableClass_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("checkTableClass_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -33045,40 +34760,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(checkTableClass_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      checkTableClass_result typedOther = (checkTableClass_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -33285,7 +35000,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class checkNamespaceClass_args implements org.apache.thrift.TBase<checkNamespaceClass_args, checkNamespaceClass_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class checkNamespaceClass_args implements org.apache.thrift.TBase<checkNamespaceClass_args, checkNamespaceClass_args._Fields>, java.io.Serializable, Cloneable, Comparable<checkNamespaceClass_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("checkNamespaceClass_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -33719,60 +35434,60 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(checkNamespaceClass_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      checkNamespaceClass_args typedOther = (checkNamespaceClass_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNamespaceId()).compareTo(typedOther.isSetNamespaceId());
++      lastComparison = Boolean.valueOf(isSetNamespaceId()).compareTo(other.isSetNamespaceId());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNamespaceId()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.namespaceId, typedOther.namespaceId);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.namespaceId, other.namespaceId);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetClassName()).compareTo(typedOther.isSetClassName());
++      lastComparison = Boolean.valueOf(isSetClassName()).compareTo(other.isSetClassName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetClassName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.className, typedOther.className);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.className, other.className);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetInterfaceMatch()).compareTo(typedOther.isSetInterfaceMatch());
++      lastComparison = Boolean.valueOf(isSetInterfaceMatch()).compareTo(other.isSetInterfaceMatch());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetInterfaceMatch()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.interfaceMatch, typedOther.interfaceMatch);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.interfaceMatch, other.interfaceMatch);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -34049,7 +35764,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class checkNamespaceClass_result implements org.apache.thrift.TBase<checkNamespaceClass_result, checkNamespaceClass_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class checkNamespaceClass_result implements org.apache.thrift.TBase<checkNamespaceClass_result, checkNamespaceClass_result._Fields>, java.io.Serializable, Cloneable, Comparable<checkNamespaceClass_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("checkNamespaceClass_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -34367,40 +36082,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(checkNamespaceClass_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      checkNamespaceClass_result typedOther = (checkNamespaceClass_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+diff --git a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ConfigurationType.java b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ConfigurationType.java
+index 8c6c31e..f5be98c 100644
+--- a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ConfigurationType.java
++++ b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ConfigurationType.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/SecurityErrorCode.java b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/SecurityErrorCode.java
+index adeff6f..111cffa 100644
+--- a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/SecurityErrorCode.java
++++ b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/SecurityErrorCode.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/TDiskUsage.java b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/TDiskUsage.java
+index abd97ba..1b85d47 100644
+--- a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/TDiskUsage.java
++++ b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/TDiskUsage.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TDiskUsage implements org.apache.thrift.TBase<TDiskUsage, TDiskUsage._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TDiskUsage implements org.apache.thrift.TBase<TDiskUsage, TDiskUsage._Fields>, java.io.Serializable, Cloneable, Comparable<TDiskUsage> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TDiskUsage");
+ 
+   private static final org.apache.thrift.protocol.TField TABLES_FIELD_DESC = new org.apache.thrift.protocol.TField("tables", org.apache.thrift.protocol.TType.LIST, (short)1);
+@@ -156,10 +158,7 @@ import org.slf4j.LoggerFactory;
+   public TDiskUsage(TDiskUsage other) {
+     __isset_bitfield = other.__isset_bitfield;
+     if (other.isSetTables()) {
+-      List<String> __this__tables = new ArrayList<String>();
+-      for (String other_element : other.tables) {
+-        __this__tables.add(other_element);
+-      }
++      List<String> __this__tables = new ArrayList<String>(other.tables);
+       this.tables = __this__tables;
+     }
+     this.usage = other.usage;
+@@ -325,30 +324,30 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TDiskUsage other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TDiskUsage typedOther = (TDiskUsage)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetTables()).compareTo(typedOther.isSetTables());
++    lastComparison = Boolean.valueOf(isSetTables()).compareTo(other.isSetTables());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTables()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tables, typedOther.tables);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tables, other.tables);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetUsage()).compareTo(typedOther.isSetUsage());
++    lastComparison = Boolean.valueOf(isSetUsage()).compareTo(other.isSetUsage());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetUsage()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.usage, typedOther.usage);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.usage, other.usage);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -436,7 +435,7 @@ import org.slf4j.LoggerFactory;
+                 struct.tables = new ArrayList<String>(_list0.size);
+                 for (int _i1 = 0; _i1 < _list0.size; ++_i1)
+                 {
+-                  String _elem2; // required
++                  String _elem2;
+                   _elem2 = iprot.readString();
+                   struct.tables.add(_elem2);
+                 }
+@@ -534,7 +533,7 @@ import org.slf4j.LoggerFactory;
+           struct.tables = new ArrayList<String>(_list5.size);
+           for (int _i6 = 0; _i6 < _list5.size; ++_i6)
+           {
+-            String _elem7; // required
++            String _elem7;
+             _elem7 = iprot.readString();
+             struct.tables.add(_elem7);
+           }
+diff --git a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/TableOperation.java b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/TableOperation.java
+index e6760f1..7716823 100644
+--- a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/TableOperation.java
++++ b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/TableOperation.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/TableOperationExceptionType.java b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/TableOperationExceptionType.java
+index 6222f8e..baea21e 100644
+--- a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/TableOperationExceptionType.java
++++ b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/TableOperationExceptionType.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ThriftSecurityException.java b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ThriftSecurityException.java
+index 968a646..a6500e5 100644
+--- a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ThriftSecurityException.java
++++ b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ThriftSecurityException.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class ThriftSecurityException extends TException implements org.apache.thrift.TBase<ThriftSecurityException, ThriftSecurityException._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class ThriftSecurityException extends TException implements org.apache.thrift.TBase<ThriftSecurityException, ThriftSecurityException._Fields>, java.io.Serializable, Cloneable, Comparable<ThriftSecurityException> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ThriftSecurityException");
+ 
+   private static final org.apache.thrift.protocol.TField USER_FIELD_DESC = new org.apache.thrift.protocol.TField("user", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -319,30 +321,30 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(ThriftSecurityException other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    ThriftSecurityException typedOther = (ThriftSecurityException)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetUser()).compareTo(typedOther.isSetUser());
++    lastComparison = Boolean.valueOf(isSetUser()).compareTo(other.isSetUser());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetUser()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, typedOther.user);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, other.user);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetCode()).compareTo(typedOther.isSetCode());
++    lastComparison = Boolean.valueOf(isSetCode()).compareTo(other.isSetCode());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetCode()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.code, typedOther.code);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.code, other.code);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ThriftTableOperationException.java b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ThriftTableOperationException.java
+index 3863e75..0c8ab4b 100644
+--- a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ThriftTableOperationException.java
++++ b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ThriftTableOperationException.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class ThriftTableOperationException extends TException implements org.apache.thrift.TBase<ThriftTableOperationException, ThriftTableOperationException._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class ThriftTableOperationException extends TException implements org.apache.thrift.TBase<ThriftTableOperationException, ThriftTableOperationException._Fields>, java.io.Serializable, Cloneable, Comparable<ThriftTableOperationException> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ThriftTableOperationException");
+ 
+   private static final org.apache.thrift.protocol.TField TABLE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("tableId", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -512,60 +514,60 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(ThriftTableOperationException other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    ThriftTableOperationException typedOther = (ThriftTableOperationException)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetTableId()).compareTo(typedOther.isSetTableId());
++    lastComparison = Boolean.valueOf(isSetTableId()).compareTo(other.isSetTableId());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTableId()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableId, typedOther.tableId);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableId, other.tableId);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++    lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTableName()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetOp()).compareTo(typedOther.isSetOp());
++    lastComparison = Boolean.valueOf(isSetOp()).compareTo(other.isSetOp());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetOp()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.op, typedOther.op);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.op, other.op);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetType()).compareTo(typedOther.isSetType());
++    lastComparison = Boolean.valueOf(isSetType()).compareTo(other.isSetType());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetType()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.type, typedOther.type);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.type, other.type);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetDescription()).compareTo(typedOther.isSetDescription());
++    lastComparison = Boolean.valueOf(isSetDescription()).compareTo(other.isSetDescription());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetDescription()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.description, typedOther.description);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.description, other.description);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ThriftTest.java b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ThriftTest.java
+index f07abcf..5f785ff 100644
+--- a/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ThriftTest.java
++++ b/core/src/main/java/org/apache/accumulo/core/client/impl/thrift/ThriftTest.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -60,11 +62,11 @@ import org.slf4j.LoggerFactory;
+ 
+   public interface AsyncIface {
+ 
+-    public void success(org.apache.thrift.async.AsyncMethodCallback<AsyncClient.success_call> resultHandler) throws org.apache.thrift.TException;
++    public void success(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void fails(org.apache.thrift.async.AsyncMethodCallback<AsyncClient.fails_call> resultHandler) throws org.apache.thrift.TException;
++    public void fails(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void throwsError(org.apache.thrift.async.AsyncMethodCallback<AsyncClient.throwsError_call> resultHandler) throws org.apache.thrift.TException;
++    public void throwsError(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+   }
+ 
+@@ -175,7 +177,7 @@ import org.slf4j.LoggerFactory;
+       super(protocolFactory, clientManager, transport);
+     }
+ 
+-    public void success(org.apache.thrift.async.AsyncMethodCallback<success_call> resultHandler) throws org.apache.thrift.TException {
++    public void success(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       success_call method_call = new success_call(resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -183,7 +185,7 @@ import org.slf4j.LoggerFactory;
+     }
+ 
+     public static class success_call extends org.apache.thrift.async.TAsyncMethodCall {
+-      public success_call(org.apache.thrift.async.AsyncMethodCallback<success_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public success_call(org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+       }
+ 
+@@ -204,7 +206,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void fails(org.apache.thrift.async.AsyncMethodCallback<fails_call> resultHandler) throws org.apache.thrift.TException {
++    public void fails(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       fails_call method_call = new fails_call(resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -212,7 +214,7 @@ import org.slf4j.LoggerFactory;
+     }
+ 
+     public static class fails_call extends org.apache.thrift.async.TAsyncMethodCall {
+-      public fails_call(org.apache.thrift.async.AsyncMethodCallback<fails_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public fails_call(org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+       }
+ 
+@@ -233,7 +235,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void throwsError(org.apache.thrift.async.AsyncMethodCallback<throwsError_call> resultHandler) throws org.apache.thrift.TException {
++    public void throwsError(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       throwsError_call method_call = new throwsError_call(resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -241,7 +243,7 @@ import org.slf4j.LoggerFactory;
+     }
+ 
+     public static class throwsError_call extends org.apache.thrift.async.TAsyncMethodCall {
+-      public throwsError_call(org.apache.thrift.async.AsyncMethodCallback<throwsError_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public throwsError_call(org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+       }
+ 
+@@ -350,7 +352,188 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class success_args implements org.apache.thrift.TBase<success_args, success_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class AsyncProcessor<I extends AsyncIface> extends org.apache.thrift.TBaseAsyncProcessor<I> {
++    private static final Logger LOGGER = LoggerFactory.getLogger(AsyncProcessor.class.getName());
++    public AsyncProcessor(I iface) {
++      super(iface, getProcessMap(new HashMap<String, org.apache.thrift.AsyncProcessFunction<I, ? extends org.apache.thrift.TBase, ?>>()));
++    }
++
++    protected AsyncProcessor(I iface, Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      super(iface, getProcessMap(processMap));
++    }
++
++    private static <I extends AsyncIface> Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase,?>> getProcessMap(Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      processMap.put("success", new success());
++      processMap.put("fails", new fails());
++      processMap.put("throwsError", new throwsError());
++      return processMap;
++    }
++
++    public static class success<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, success_args, Boolean> {
++      public success() {
++        super("success");
++      }
++
++      public success_args getEmptyArgsInstance() {
++        return new success_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            success_result result = new success_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            success_result result = new success_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, success_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.success(resultHandler);
++      }
++    }
++
++    public static class fails<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, fails_args, Boolean> {
++      public fails() {
++        super("fails");
++      }
++
++      public fails_args getEmptyArgsInstance() {
++        return new fails_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            fails_result result = new fails_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            fails_result result = new fails_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, fails_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.fails(resultHandler);
++      }
++    }
++
++    public static class throwsError<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, throwsError_args, Boolean> {
++      public throwsError() {
++        super("throwsError");
++      }
++
++      public throwsError_args getEmptyArgsInstance() {
++        return new throwsError_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            throwsError_result result = new throwsError_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            throwsError_result result = new throwsError_result();
++            if (e instanceof ThriftSecurityException) {
++                        result.ex = (ThriftSecurityException) e;
++                        result.setExIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, throwsError_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.throwsError(resultHandler);
++      }
++    }
++
++  }
++
++  public static class success_args implements org.apache.thrift.TBase<success_args, success_args._Fields>, java.io.Serializable, Cloneable, Comparable<success_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("success_args");
+ 
+ 
+@@ -483,13 +666,13 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(success_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      success_args typedOther = (success_args)other;
+ 
+       return 0;
+     }
+@@ -596,7 +779,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class success_result implements org.apache.thrift.TBase<success_result, success_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class success_result implements org.apache.thrift.TBase<success_result, success_result._Fields>, java.io.Serializable, Cloneable, Comparable<success_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("success_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -796,20 +979,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(success_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      success_result typedOther = (success_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -950,7 +1133,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class fails_args implements org.apache.thrift.TBase<fails_args, fails_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class fails_args implements org.apache.thrift.TBase<fails_args, fails_args._Fields>, java.io.Serializable, Cloneable, Comparable<fails_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("fails_args");
+ 
+ 
+@@ -1083,13 +1266,13 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(fails_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      fails_args typedOther = (fails_args)other;
+ 
+       return 0;
+     }
+@@ -1196,7 +1379,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class fails_result implements org.apache.thrift.TBase<fails_result, fails_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class fails_result implements org.apache.thrift.TBase<fails_result, fails_result._Fields>, java.io.Serializable, Cloneable, Comparable<fails_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("fails_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -1396,20 +1579,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(fails_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      fails_result typedOther = (fails_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -1550,7 +1733,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class throwsError_args implements org.apache.thrift.TBase<throwsError_args, throwsError_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class throwsError_args implements org.apache.thrift.TBase<throwsError_args, throwsError_args._Fields>, java.io.Serializable, Cloneable, Comparable<throwsError_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("throwsError_args");
+ 
+ 
+@@ -1683,13 +1866,13 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(throwsError_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      throwsError_args typedOther = (throwsError_args)other;
+ 
+       return 0;
+     }
+@@ -1796,7 +1979,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class throwsError_result implements org.apache.thrift.TBase<throwsError_result, throwsError_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class throwsError_result implements org.apache.thrift.TBase<throwsError_result, throwsError_result._Fields>, java.io.Serializable, Cloneable, Comparable<throwsError_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("throwsError_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -2055,30 +2238,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(throwsError_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      throwsError_result typedOther = (throwsError_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetEx()).compareTo(typedOther.isSetEx());
++      lastComparison = Boolean.valueOf(isSetEx()).compareTo(other.isSetEx());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetEx()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ex, typedOther.ex);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ex, other.ex);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/InitialMultiScan.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/InitialMultiScan.java
+index d8957f9..d4d5424 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/InitialMultiScan.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/InitialMultiScan.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class InitialMultiScan implements org.apache.thrift.TBase<InitialMultiScan, InitialMultiScan._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class InitialMultiScan implements org.apache.thrift.TBase<InitialMultiScan, InitialMultiScan._Fields>, java.io.Serializable, Cloneable, Comparable<InitialMultiScan> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("InitialMultiScan");
+ 
+   private static final org.apache.thrift.protocol.TField SCAN_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("scanID", org.apache.thrift.protocol.TType.I64, (short)1);
+@@ -305,30 +307,30 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(InitialMultiScan other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    InitialMultiScan typedOther = (InitialMultiScan)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetScanID()).compareTo(typedOther.isSetScanID());
++    lastComparison = Boolean.valueOf(isSetScanID()).compareTo(other.isSetScanID());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetScanID()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanID, typedOther.scanID);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanID, other.scanID);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetResult()).compareTo(typedOther.isSetResult());
++    lastComparison = Boolean.valueOf(isSetResult()).compareTo(other.isSetResult());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetResult()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.result, typedOther.result);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.result, other.result);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/InitialScan.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/InitialScan.java
+index f8f07d6..001bc51 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/InitialScan.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/InitialScan.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class InitialScan implements org.apache.thrift.TBase<InitialScan, InitialScan._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class InitialScan implements org.apache.thrift.TBase<InitialScan, InitialScan._Fields>, java.io.Serializable, Cloneable, Comparable<InitialScan> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("InitialScan");
+ 
+   private static final org.apache.thrift.protocol.TField SCAN_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("scanID", org.apache.thrift.protocol.TType.I64, (short)1);
+@@ -305,30 +307,30 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(InitialScan other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    InitialScan typedOther = (InitialScan)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetScanID()).compareTo(typedOther.isSetScanID());
++    lastComparison = Boolean.valueOf(isSetScanID()).compareTo(other.isSetScanID());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetScanID()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanID, typedOther.scanID);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanID, other.scanID);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetResult()).compareTo(typedOther.isSetResult());
++    lastComparison = Boolean.valueOf(isSetResult()).compareTo(other.isSetResult());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetResult()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.result, typedOther.result);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.result, other.result);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/IterInfo.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/IterInfo.java
+index 802c40b..6135634 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/IterInfo.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/IterInfo.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class IterInfo implements org.apache.thrift.TBase<IterInfo, IterInfo._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class IterInfo implements org.apache.thrift.TBase<IterInfo, IterInfo._Fields>, java.io.Serializable, Cloneable, Comparable<IterInfo> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("IterInfo");
+ 
+   private static final org.apache.thrift.protocol.TField PRIORITY_FIELD_DESC = new org.apache.thrift.protocol.TField("priority", org.apache.thrift.protocol.TType.I32, (short)1);
+@@ -364,40 +366,40 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(IterInfo other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    IterInfo typedOther = (IterInfo)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetPriority()).compareTo(typedOther.isSetPriority());
++    lastComparison = Boolean.valueOf(isSetPriority()).compareTo(other.isSetPriority());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetPriority()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.priority, typedOther.priority);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.priority, other.priority);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetClassName()).compareTo(typedOther.isSetClassName());
++    lastComparison = Boolean.valueOf(isSetClassName()).compareTo(other.isSetClassName());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetClassName()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.className, typedOther.className);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.className, other.className);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetIterName()).compareTo(typedOther.isSetIterName());
++    lastComparison = Boolean.valueOf(isSetIterName()).compareTo(other.isSetIterName());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIterName()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterName, typedOther.iterName);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterName, other.iterName);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/MapFileInfo.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/MapFileInfo.java
+index 3e3021c..8598818 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/MapFileInfo.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/MapFileInfo.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class MapFileInfo implements org.apache.thrift.TBase<MapFileInfo, MapFileInfo._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class MapFileInfo implements org.apache.thrift.TBase<MapFileInfo, MapFileInfo._Fields>, java.io.Serializable, Cloneable, Comparable<MapFileInfo> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("MapFileInfo");
+ 
+   private static final org.apache.thrift.protocol.TField ESTIMATED_SIZE_FIELD_DESC = new org.apache.thrift.protocol.TField("estimatedSize", org.apache.thrift.protocol.TType.I64, (short)1);
+@@ -246,20 +248,20 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(MapFileInfo other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    MapFileInfo typedOther = (MapFileInfo)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetEstimatedSize()).compareTo(typedOther.isSetEstimatedSize());
++    lastComparison = Boolean.valueOf(isSetEstimatedSize()).compareTo(other.isSetEstimatedSize());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetEstimatedSize()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.estimatedSize, typedOther.estimatedSize);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.estimatedSize, other.estimatedSize);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/MultiScanResult.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/MultiScanResult.java
+index f0b8a87..d7c0374 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/MultiScanResult.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/MultiScanResult.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class MultiScanResult implements org.apache.thrift.TBase<MultiScanResult, MultiScanResult._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class MultiScanResult implements org.apache.thrift.TBase<MultiScanResult, MultiScanResult._Fields>, java.io.Serializable, Cloneable, Comparable<MultiScanResult> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("MultiScanResult");
+ 
+   private static final org.apache.thrift.protocol.TField RESULTS_FIELD_DESC = new org.apache.thrift.protocol.TField("results", org.apache.thrift.protocol.TType.LIST, (short)1);
+@@ -204,7 +206,7 @@ import org.slf4j.LoggerFactory;
+   public MultiScanResult(MultiScanResult other) {
+     __isset_bitfield = other.__isset_bitfield;
+     if (other.isSetResults()) {
+-      List<TKeyValue> __this__results = new ArrayList<TKeyValue>();
++      List<TKeyValue> __this__results = new ArrayList<TKeyValue>(other.results.size());
+       for (TKeyValue other_element : other.results) {
+         __this__results.add(new TKeyValue(other_element));
+       }
+@@ -214,7 +216,7 @@ import org.slf4j.LoggerFactory;
+       this.failures = other.failures;
+     }
+     if (other.isSetFullScans()) {
+-      List<TKeyExtent> __this__fullScans = new ArrayList<TKeyExtent>();
++      List<TKeyExtent> __this__fullScans = new ArrayList<TKeyExtent>(other.fullScans.size());
+       for (TKeyExtent other_element : other.fullScans) {
+         __this__fullScans.add(new TKeyExtent(other_element));
+       }
+@@ -651,80 +653,80 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(MultiScanResult other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    MultiScanResult typedOther = (MultiScanResult)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetResults()).compareTo(typedOther.isSetResults());
++    lastComparison = Boolean.valueOf(isSetResults()).compareTo(other.isSetResults());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetResults()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.results, typedOther.results);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.results, other.results);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetFailures()).compareTo(typedOther.isSetFailures());
++    lastComparison = Boolean.valueOf(isSetFailures()).compareTo(other.isSetFailures());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetFailures()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.failures, typedOther.failures);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.failures, other.failures);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetFullScans()).compareTo(typedOther.isSetFullScans());
++    lastComparison = Boolean.valueOf(isSetFullScans()).compareTo(other.isSetFullScans());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetFullScans()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.fullScans, typedOther.fullScans);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.fullScans, other.fullScans);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetPartScan()).compareTo(typedOther.isSetPartScan());
++    lastComparison = Boolean.valueOf(isSetPartScan()).compareTo(other.isSetPartScan());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetPartScan()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.partScan, typedOther.partScan);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.partScan, other.partScan);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetPartNextKey()).compareTo(typedOther.isSetPartNextKey());
++    lastComparison = Boolean.valueOf(isSetPartNextKey()).compareTo(other.isSetPartNextKey());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetPartNextKey()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.partNextKey, typedOther.partNextKey);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.partNextKey, other.partNextKey);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetPartNextKeyInclusive()).compareTo(typedOther.isSetPartNextKeyInclusive());
++    lastComparison = Boolean.valueOf(isSetPartNextKeyInclusive()).compareTo(other.isSetPartNextKeyInclusive());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetPartNextKeyInclusive()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.partNextKeyInclusive, typedOther.partNextKeyInclusive);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.partNextKeyInclusive, other.partNextKeyInclusive);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetMore()).compareTo(typedOther.isSetMore());
++    lastComparison = Boolean.valueOf(isSetMore()).compareTo(other.isSetMore());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMore()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.more, typedOther.more);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.more, other.more);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -854,7 +856,7 @@ import org.slf4j.LoggerFactory;
+                 struct.results = new ArrayList<TKeyValue>(_list16.size);
+                 for (int _i17 = 0; _i17 < _list16.size; ++_i17)
+                 {
+-                  TKeyValue _elem18; // required
++                  TKeyValue _elem18;
+                   _elem18 = new TKeyValue();
+                   _elem18.read(iprot);
+                   struct.results.add(_elem18);
+@@ -873,8 +875,8 @@ import org.slf4j.LoggerFactory;
+                 struct.failures = new HashMap<TKeyExtent,List<TRange>>(2*_map19.size);
+                 for (int _i20 = 0; _i20 < _map19.size; ++_i20)
+                 {
+-                  TKeyExtent _key21; // required
+-                  List<TRange> _val22; // required
++                  TKeyExtent _key21;
++                  List<TRange> _val22;
+                   _key21 = new TKeyExtent();
+                   _key21.read(iprot);
+                   {
+@@ -882,7 +884,7 @@ import org.slf4j.LoggerFactory;
+                     _val22 = new ArrayList<TRange>(_list23.size);
+                     for (int _i24 = 0; _i24 < _list23.size; ++_i24)
+                     {
+-                      TRange _elem25; // required
++                      TRange _elem25;
+                       _elem25 = new TRange();
+                       _elem25.read(iprot);
+                       _val22.add(_elem25);
+@@ -905,7 +907,7 @@ import org.slf4j.LoggerFactory;
+                 struct.fullScans = new ArrayList<TKeyExtent>(_list26.size);
+                 for (int _i27 = 0; _i27 < _list26.size; ++_i27)
+                 {
+-                  TKeyExtent _elem28; // required
++                  TKeyExtent _elem28;
+                   _elem28 = new TKeyExtent();
+                   _elem28.read(iprot);
+                   struct.fullScans.add(_elem28);
+@@ -1124,7 +1126,7 @@ import org.slf4j.LoggerFactory;
+           struct.results = new ArrayList<TKeyValue>(_list37.size);
+           for (int _i38 = 0; _i38 < _list37.size; ++_i38)
+           {
+-            TKeyValue _elem39; // required
++            TKeyValue _elem39;
+             _elem39 = new TKeyValue();
+             _elem39.read(iprot);
+             struct.results.add(_elem39);
+@@ -1138,8 +1140,8 @@ import org.slf4j.LoggerFactory;
+           struct.failures = new HashMap<TKeyExtent,List<TRange>>(2*_map40.size);
+           for (int _i41 = 0; _i41 < _map40.size; ++_i41)
+           {
+-            TKeyExtent _key42; // required
+-            List<TRange> _val43; // required
++            TKeyExtent _key42;
++            List<TRange> _val43;
+             _key42 = new TKeyExtent();
+             _key42.read(iprot);
+             {
+@@ -1147,7 +1149,7 @@ import org.slf4j.LoggerFactory;
+               _val43 = new ArrayList<TRange>(_list44.size);
+               for (int _i45 = 0; _i45 < _list44.size; ++_i45)
+               {
+-                TRange _elem46; // required
++                TRange _elem46;
+                 _elem46 = new TRange();
+                 _elem46.read(iprot);
+                 _val43.add(_elem46);
+@@ -1164,7 +1166,7 @@ import org.slf4j.LoggerFactory;
+           struct.fullScans = new ArrayList<TKeyExtent>(_list47.size);
+           for (int _i48 = 0; _i48 < _list47.size; ++_i48)
+           {
+-            TKeyExtent _elem49; // required
++            TKeyExtent _elem49;
+             _elem49 = new TKeyExtent();
+             _elem49.read(iprot);
+             struct.fullScans.add(_elem49);
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/ScanResult.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/ScanResult.java
+index 6472587..ce418a6 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/ScanResult.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/ScanResult.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class ScanResult implements org.apache.thrift.TBase<ScanResult, ScanResult._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class ScanResult implements org.apache.thrift.TBase<ScanResult, ScanResult._Fields>, java.io.Serializable, Cloneable, Comparable<ScanResult> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ScanResult");
+ 
+   private static final org.apache.thrift.protocol.TField RESULTS_FIELD_DESC = new org.apache.thrift.protocol.TField("results", org.apache.thrift.protocol.TType.LIST, (short)1);
+@@ -156,7 +158,7 @@ import org.slf4j.LoggerFactory;
+   public ScanResult(ScanResult other) {
+     __isset_bitfield = other.__isset_bitfield;
+     if (other.isSetResults()) {
+-      List<TKeyValue> __this__results = new ArrayList<TKeyValue>();
++      List<TKeyValue> __this__results = new ArrayList<TKeyValue>(other.results.size());
+       for (TKeyValue other_element : other.results) {
+         __this__results.add(new TKeyValue(other_element));
+       }
+@@ -325,30 +327,30 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(ScanResult other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    ScanResult typedOther = (ScanResult)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetResults()).compareTo(typedOther.isSetResults());
++    lastComparison = Boolean.valueOf(isSetResults()).compareTo(other.isSetResults());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetResults()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.results, typedOther.results);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.results, other.results);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetMore()).compareTo(typedOther.isSetMore());
++    lastComparison = Boolean.valueOf(isSetMore()).compareTo(other.isSetMore());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMore()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.more, typedOther.more);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.more, other.more);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -436,7 +438,7 @@ import org.slf4j.LoggerFactory;
+                 struct.results = new ArrayList<TKeyValue>(_list8.size);
+                 for (int _i9 = 0; _i9 < _list8.size; ++_i9)
+                 {
+-                  TKeyValue _elem10; // required
++                  TKeyValue _elem10;
+                   _elem10 = new TKeyValue();
+                   _elem10.read(iprot);
+                   struct.results.add(_elem10);
+@@ -535,7 +537,7 @@ import org.slf4j.LoggerFactory;
+           struct.results = new ArrayList<TKeyValue>(_list13.size);
+           for (int _i14 = 0; _i14 < _list13.size; ++_i14)
+           {
+-            TKeyValue _elem15; // required
++            TKeyValue _elem15;
+             _elem15 = new TKeyValue();
+             _elem15.read(iprot);
+             struct.results.add(_elem15);
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/TCMResult.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/TCMResult.java
+index fe72fd6..598bd48 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/TCMResult.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/TCMResult.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TCMResult implements org.apache.thrift.TBase<TCMResult, TCMResult._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TCMResult implements org.apache.thrift.TBase<TCMResult, TCMResult._Fields>, java.io.Serializable, Cloneable, Comparable<TCMResult> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TCMResult");
+ 
+   private static final org.apache.thrift.protocol.TField CMID_FIELD_DESC = new org.apache.thrift.protocol.TField("cmid", org.apache.thrift.protocol.TType.I64, (short)1);
+@@ -321,30 +323,30 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TCMResult other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TCMResult typedOther = (TCMResult)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetCmid()).compareTo(typedOther.isSetCmid());
++    lastComparison = Boolean.valueOf(isSetCmid()).compareTo(other.isSetCmid());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetCmid()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cmid, typedOther.cmid);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cmid, other.cmid);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetStatus()).compareTo(typedOther.isSetStatus());
++    lastComparison = Boolean.valueOf(isSetStatus()).compareTo(other.isSetStatus());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetStatus()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.status, typedOther.status);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.status, other.status);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/TCMStatus.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/TCMStatus.java
+index 6ef94d5..ee4592c 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/TCMStatus.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/TCMStatus.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/TColumn.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/TColumn.java
+index 7c19c96..125cece 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/TColumn.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/TColumn.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TColumn implements org.apache.thrift.TBase<TColumn, TColumn._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TColumn implements org.apache.thrift.TBase<TColumn, TColumn._Fields>, java.io.Serializable, Cloneable, Comparable<TColumn> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TColumn");
+ 
+   private static final org.apache.thrift.protocol.TField COLUMN_FAMILY_FIELD_DESC = new org.apache.thrift.protocol.TField("columnFamily", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -395,40 +397,40 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TColumn other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TColumn typedOther = (TColumn)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetColumnFamily()).compareTo(typedOther.isSetColumnFamily());
++    lastComparison = Boolean.valueOf(isSetColumnFamily()).compareTo(other.isSetColumnFamily());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColumnFamily()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columnFamily, typedOther.columnFamily);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columnFamily, other.columnFamily);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColumnQualifier()).compareTo(typedOther.isSetColumnQualifier());
++    lastComparison = Boolean.valueOf(isSetColumnQualifier()).compareTo(other.isSetColumnQualifier());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColumnQualifier()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columnQualifier, typedOther.columnQualifier);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columnQualifier, other.columnQualifier);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColumnVisibility()).compareTo(typedOther.isSetColumnVisibility());
++    lastComparison = Boolean.valueOf(isSetColumnVisibility()).compareTo(other.isSetColumnVisibility());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColumnVisibility()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columnVisibility, typedOther.columnVisibility);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columnVisibility, other.columnVisibility);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/TCondition.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/TCondition.java
+index 40a12be..9fc3968 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/TCondition.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/TCondition.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TCondition implements org.apache.thrift.TBase<TCondition, TCondition._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TCondition implements org.apache.thrift.TBase<TCondition, TCondition._Fields>, java.io.Serializable, Cloneable, Comparable<TCondition> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TCondition");
+ 
+   private static final org.apache.thrift.protocol.TField CF_FIELD_DESC = new org.apache.thrift.protocol.TField("cf", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -655,80 +657,80 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TCondition other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TCondition typedOther = (TCondition)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetCf()).compareTo(typedOther.isSetCf());
++    lastComparison = Boolean.valueOf(isSetCf()).compareTo(other.isSetCf());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetCf()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cf, typedOther.cf);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cf, other.cf);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetCq()).compareTo(typedOther.isSetCq());
++    lastComparison = Boolean.valueOf(isSetCq()).compareTo(other.isSetCq());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetCq()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cq, typedOther.cq);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cq, other.cq);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetCv()).compareTo(typedOther.isSetCv());
++    lastComparison = Boolean.valueOf(isSetCv()).compareTo(other.isSetCv());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetCv()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cv, typedOther.cv);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cv, other.cv);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetTs()).compareTo(typedOther.isSetTs());
++    lastComparison = Boolean.valueOf(isSetTs()).compareTo(other.isSetTs());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTs()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ts, typedOther.ts);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ts, other.ts);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetHasTimestamp()).compareTo(typedOther.isSetHasTimestamp());
++    lastComparison = Boolean.valueOf(isSetHasTimestamp()).compareTo(other.isSetHasTimestamp());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetHasTimestamp()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.hasTimestamp, typedOther.hasTimestamp);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.hasTimestamp, other.hasTimestamp);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetVal()).compareTo(typedOther.isSetVal());
++    lastComparison = Boolean.valueOf(isSetVal()).compareTo(other.isSetVal());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetVal()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.val, typedOther.val);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.val, other.val);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetIterators()).compareTo(typedOther.isSetIterators());
++    lastComparison = Boolean.valueOf(isSetIterators()).compareTo(other.isSetIterators());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIterators()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterators, typedOther.iterators);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterators, other.iterators);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/TConditionalMutation.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/TConditionalMutation.java
+index 3f9b3f7..3d49c45 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/TConditionalMutation.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/TConditionalMutation.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TConditionalMutation implements org.apache.thrift.TBase<TConditionalMutation, TConditionalMutation._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TConditionalMutation implements org.apache.thrift.TBase<TConditionalMutation, TConditionalMutation._Fields>, java.io.Serializable, Cloneable, Comparable<TConditionalMutation> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TConditionalMutation");
+ 
+   private static final org.apache.thrift.protocol.TField CONDITIONS_FIELD_DESC = new org.apache.thrift.protocol.TField("conditions", org.apache.thrift.protocol.TType.LIST, (short)1);
+@@ -165,7 +167,7 @@ import org.slf4j.LoggerFactory;
+   public TConditionalMutation(TConditionalMutation other) {
+     __isset_bitfield = other.__isset_bitfield;
+     if (other.isSetConditions()) {
+-      List<TCondition> __this__conditions = new ArrayList<TCondition>();
++      List<TCondition> __this__conditions = new ArrayList<TCondition>(other.conditions.size());
+       for (TCondition other_element : other.conditions) {
+         __this__conditions.add(new TCondition(other_element));
+       }
+@@ -384,40 +386,40 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TConditionalMutation other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TConditionalMutation typedOther = (TConditionalMutation)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetConditions()).compareTo(typedOther.isSetConditions());
++    lastComparison = Boolean.valueOf(isSetConditions()).compareTo(other.isSetConditions());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetConditions()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.conditions, typedOther.conditions);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.conditions, other.conditions);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetMutation()).compareTo(typedOther.isSetMutation());
++    lastComparison = Boolean.valueOf(isSetMutation()).compareTo(other.isSetMutation());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMutation()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.mutation, typedOther.mutation);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.mutation, other.mutation);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetId()).compareTo(typedOther.isSetId());
++    lastComparison = Boolean.valueOf(isSetId()).compareTo(other.isSetId());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetId()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.id, typedOther.id);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.id, other.id);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -516,7 +518,7 @@ import org.slf4j.LoggerFactory;
+                 struct.conditions = new ArrayList<TCondition>(_list78.size);
+                 for (int _i79 = 0; _i79 < _list78.size; ++_i79)
+                 {
+-                  TCondition _elem80; // required
++                  TCondition _elem80;
+                   _elem80 = new TCondition();
+                   _elem80.read(iprot);
+                   struct.conditions.add(_elem80);
+@@ -635,7 +637,7 @@ import org.slf4j.LoggerFactory;
+           struct.conditions = new ArrayList<TCondition>(_list83.size);
+           for (int _i84 = 0; _i84 < _list83.size; ++_i84)
+           {
+-            TCondition _elem85; // required
++            TCondition _elem85;
+             _elem85 = new TCondition();
+             _elem85.read(iprot);
+             struct.conditions.add(_elem85);
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/TConditionalSession.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/TConditionalSession.java
+index e7f8a08..646dbdb 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/TConditionalSession.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/TConditionalSession.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TConditionalSession implements org.apache.thrift.TBase<TConditionalSession, TConditionalSession._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TConditionalSession implements org.apache.thrift.TBase<TConditionalSession, TConditionalSession._Fields>, java.io.Serializable, Cloneable, Comparable<TConditionalSession> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TConditionalSession");
+ 
+   private static final org.apache.thrift.protocol.TField SESSION_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("sessionId", org.apache.thrift.protocol.TType.I64, (short)1);
+@@ -364,40 +366,40 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TConditionalSession other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TConditionalSession typedOther = (TConditionalSession)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetSessionId()).compareTo(typedOther.isSetSessionId());
++    lastComparison = Boolean.valueOf(isSetSessionId()).compareTo(other.isSetSessionId());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetSessionId()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sessionId, typedOther.sessionId);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sessionId, other.sessionId);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetTserverLock()).compareTo(typedOther.isSetTserverLock());
++    lastComparison = Boolean.valueOf(isSetTserverLock()).compareTo(other.isSetTserverLock());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTserverLock()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tserverLock, typedOther.tserverLock);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tserverLock, other.tserverLock);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetTtl()).compareTo(typedOther.isSetTtl());
++    lastComparison = Boolean.valueOf(isSetTtl()).compareTo(other.isSetTtl());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTtl()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ttl, typedOther.ttl);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ttl, other.ttl);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/TConstraintViolationSummary.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/TConstraintViolationSummary.java
+index 16c4d2c..d841eff 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/TConstraintViolationSummary.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/TConstraintViolationSummary.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TConstraintViolationSummary implements org.apache.thrift.TBase<TConstraintViolationSummary, TConstraintViolationSummary._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TConstraintViolationSummary implements org.apache.thrift.TBase<TConstraintViolationSummary, TConstraintViolationSummary._Fields>, java.io.Serializable, Cloneable, Comparable<TConstraintViolationSummary> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TConstraintViolationSummary");
+ 
+   private static final org.apache.thrift.protocol.TField CONSTRAIN_CLASS_FIELD_DESC = new org.apache.thrift.protocol.TField("constrainClass", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -423,50 +425,50 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TConstraintViolationSummary other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TConstraintViolationSummary typedOther = (TConstraintViolationSummary)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetConstrainClass()).compareTo(typedOther.isSetConstrainClass());
++    lastComparison = Boolean.valueOf(isSetConstrainClass()).compareTo(other.isSetConstrainClass());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetConstrainClass()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.constrainClass, typedOther.constrainClass);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.constrainClass, other.constrainClass);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetViolationCode()).compareTo(typedOther.isSetViolationCode());
++    lastComparison = Boolean.valueOf(isSetViolationCode()).compareTo(other.isSetViolationCode());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetViolationCode()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.violationCode, typedOther.violationCode);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.violationCode, other.violationCode);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetViolationDescription()).compareTo(typedOther.isSetViolationDescription());
++    lastComparison = Boolean.valueOf(isSetViolationDescription()).compareTo(other.isSetViolationDescription());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetViolationDescription()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.violationDescription, typedOther.violationDescription);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.violationDescription, other.violationDescription);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetNumberOfViolatingMutations()).compareTo(typedOther.isSetNumberOfViolatingMutations());
++    lastComparison = Boolean.valueOf(isSetNumberOfViolatingMutations()).compareTo(other.isSetNumberOfViolatingMutations());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetNumberOfViolatingMutations()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.numberOfViolatingMutations, typedOther.numberOfViolatingMutations);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.numberOfViolatingMutations, other.numberOfViolatingMutations);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/TKey.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/TKey.java
+index 3ee3cdf..4f05c66 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/TKey.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/TKey.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TKey implements org.apache.thrift.TBase<TKey, TKey._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TKey implements org.apache.thrift.TBase<TKey, TKey._Fields>, java.io.Serializable, Cloneable, Comparable<TKey> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TKey");
+ 
+   private static final org.apache.thrift.protocol.TField ROW_FIELD_DESC = new org.apache.thrift.protocol.TField("row", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -526,60 +528,60 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TKey other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TKey typedOther = (TKey)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetRow()).compareTo(typedOther.isSetRow());
++    lastComparison = Boolean.valueOf(isSetRow()).compareTo(other.isSetRow());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetRow()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.row, typedOther.row);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.row, other.row);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColFamily()).compareTo(typedOther.isSetColFamily());
++    lastComparison = Boolean.valueOf(isSetColFamily()).compareTo(other.isSetColFamily());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColFamily()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colFamily, typedOther.colFamily);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colFamily, other.colFamily);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColQualifier()).compareTo(typedOther.isSetColQualifier());
++    lastComparison = Boolean.valueOf(isSetColQualifier()).compareTo(other.isSetColQualifier());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColQualifier()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colQualifier, typedOther.colQualifier);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colQualifier, other.colQualifier);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColVisibility()).compareTo(typedOther.isSetColVisibility());
++    lastComparison = Boolean.valueOf(isSetColVisibility()).compareTo(other.isSetColVisibility());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColVisibility()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colVisibility, typedOther.colVisibility);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colVisibility, other.colVisibility);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetTimestamp()).compareTo(typedOther.isSetTimestamp());
++    lastComparison = Boolean.valueOf(isSetTimestamp()).compareTo(other.isSetTimestamp());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTimestamp()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.timestamp, typedOther.timestamp);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.timestamp, other.timestamp);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/TKeyExtent.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/TKeyExtent.java
+index 84fd99c..b83fc1a 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/TKeyExtent.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/TKeyExtent.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TKeyExtent implements org.apache.thrift.TBase<TKeyExtent, TKeyExtent._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TKeyExtent implements org.apache.thrift.TBase<TKeyExtent, TKeyExtent._Fields>, java.io.Serializable, Cloneable, Comparable<TKeyExtent> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TKeyExtent");
+ 
+   private static final org.apache.thrift.protocol.TField TABLE_FIELD_DESC = new org.apache.thrift.protocol.TField("table", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -395,40 +397,40 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TKeyExtent other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TKeyExtent typedOther = (TKeyExtent)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetTable()).compareTo(typedOther.isSetTable());
++    lastComparison = Boolean.valueOf(isSetTable()).compareTo(other.isSetTable());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTable()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.table, typedOther.table);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.table, other.table);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(typedOther.isSetEndRow());
++    lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(other.isSetEndRow());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetEndRow()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, typedOther.endRow);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, other.endRow);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetPrevEndRow()).compareTo(typedOther.isSetPrevEndRow());
++    lastComparison = Boolean.valueOf(isSetPrevEndRow()).compareTo(other.isSetPrevEndRow());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetPrevEndRow()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.prevEndRow, typedOther.prevEndRow);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.prevEndRow, other.prevEndRow);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/TKeyValue.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/TKeyValue.java
+index f96faab..4c47c69 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/TKeyValue.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/TKeyValue.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TKeyValue implements org.apache.thrift.TBase<TKeyValue, TKeyValue._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TKeyValue implements org.apache.thrift.TBase<TKeyValue, TKeyValue._Fields>, java.io.Serializable, Cloneable, Comparable<TKeyValue> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TKeyValue");
+ 
+   private static final org.apache.thrift.protocol.TField KEY_FIELD_DESC = new org.apache.thrift.protocol.TField("key", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -314,30 +316,30 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TKeyValue other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TKeyValue typedOther = (TKeyValue)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetKey()).compareTo(typedOther.isSetKey());
++    lastComparison = Boolean.valueOf(isSetKey()).compareTo(other.isSetKey());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetKey()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.key, typedOther.key);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.key, other.key);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetValue()).compareTo(typedOther.isSetValue());
++    lastComparison = Boolean.valueOf(isSetValue()).compareTo(other.isSetValue());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetValue()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, typedOther.value);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, other.value);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/TMutation.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/TMutation.java
+index f698892..1e00047 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/TMutation.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/TMutation.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TMutation implements org.apache.thrift.TBase<TMutation, TMutation._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TMutation implements org.apache.thrift.TBase<TMutation, TMutation._Fields>, java.io.Serializable, Cloneable, Comparable<TMutation> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TMutation");
+ 
+   private static final org.apache.thrift.protocol.TField ROW_FIELD_DESC = new org.apache.thrift.protocol.TField("row", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -182,12 +184,7 @@ import org.slf4j.LoggerFactory;
+ ;
+     }
+     if (other.isSetValues()) {
+-      List<ByteBuffer> __this__values = new ArrayList<ByteBuffer>();
+-      for (ByteBuffer other_element : other.values) {
+-        ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-        __this__values.add(temp_binary_element);
+-      }
++      List<ByteBuffer> __this__values = new ArrayList<ByteBuffer>(other.values);
+       this.values = __this__values;
+     }
+     this.entries = other.entries;
+@@ -467,50 +464,50 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TMutation other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TMutation typedOther = (TMutation)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetRow()).compareTo(typedOther.isSetRow());
++    lastComparison = Boolean.valueOf(isSetRow()).compareTo(other.isSetRow());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetRow()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.row, typedOther.row);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.row, other.row);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetData()).compareTo(typedOther.isSetData());
++    lastComparison = Boolean.valueOf(isSetData()).compareTo(other.isSetData());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetData()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.data, typedOther.data);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.data, other.data);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetValues()).compareTo(typedOther.isSetValues());
++    lastComparison = Boolean.valueOf(isSetValues()).compareTo(other.isSetValues());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetValues()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.values, typedOther.values);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.values, other.values);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetEntries()).compareTo(typedOther.isSetEntries());
++    lastComparison = Boolean.valueOf(isSetEntries()).compareTo(other.isSetEntries());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetEntries()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.entries, typedOther.entries);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.entries, other.entries);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -630,7 +627,7 @@ import org.slf4j.LoggerFactory;
+                 struct.values = new ArrayList<ByteBuffer>(_list0.size);
+                 for (int _i1 = 0; _i1 < _list0.size; ++_i1)
+                 {
+-                  ByteBuffer _elem2; // required
++                  ByteBuffer _elem2;
+                   _elem2 = iprot.readBinary();
+                   struct.values.add(_elem2);
+                 }
+@@ -758,7 +755,7 @@ import org.slf4j.LoggerFactory;
+           struct.values = new ArrayList<ByteBuffer>(_list5.size);
+           for (int _i6 = 0; _i6 < _list5.size; ++_i6)
+           {
+-            ByteBuffer _elem7; // required
++            ByteBuffer _elem7;
+             _elem7 = iprot.readBinary();
+             struct.values.add(_elem7);
+           }
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/TRange.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/TRange.java
+index 5b56ca0..58e805f 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/TRange.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/TRange.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TRange implements org.apache.thrift.TBase<TRange, TRange._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TRange implements org.apache.thrift.TBase<TRange, TRange._Fields>, java.io.Serializable, Cloneable, Comparable<TRange> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TRange");
+ 
+   private static final org.apache.thrift.protocol.TField START_FIELD_DESC = new org.apache.thrift.protocol.TField("start", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -541,70 +543,70 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TRange other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TRange typedOther = (TRange)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetStart()).compareTo(typedOther.isSetStart());
++    lastComparison = Boolean.valueOf(isSetStart()).compareTo(other.isSetStart());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetStart()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.start, typedOther.start);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.start, other.start);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetStop()).compareTo(typedOther.isSetStop());
++    lastComparison = Boolean.valueOf(isSetStop()).compareTo(other.isSetStop());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetStop()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.stop, typedOther.stop);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.stop, other.stop);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetStartKeyInclusive()).compareTo(typedOther.isSetStartKeyInclusive());
++    lastComparison = Boolean.valueOf(isSetStartKeyInclusive()).compareTo(other.isSetStartKeyInclusive());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetStartKeyInclusive()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startKeyInclusive, typedOther.startKeyInclusive);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startKeyInclusive, other.startKeyInclusive);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetStopKeyInclusive()).compareTo(typedOther.isSetStopKeyInclusive());
++    lastComparison = Boolean.valueOf(isSetStopKeyInclusive()).compareTo(other.isSetStopKeyInclusive());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetStopKeyInclusive()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.stopKeyInclusive, typedOther.stopKeyInclusive);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.stopKeyInclusive, other.stopKeyInclusive);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetInfiniteStartKey()).compareTo(typedOther.isSetInfiniteStartKey());
++    lastComparison = Boolean.valueOf(isSetInfiniteStartKey()).compareTo(other.isSetInfiniteStartKey());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetInfiniteStartKey()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.infiniteStartKey, typedOther.infiniteStartKey);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.infiniteStartKey, other.infiniteStartKey);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetInfiniteStopKey()).compareTo(typedOther.isSetInfiniteStopKey());
++    lastComparison = Boolean.valueOf(isSetInfiniteStopKey()).compareTo(other.isSetInfiniteStopKey());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetInfiniteStopKey()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.infiniteStopKey, typedOther.infiniteStopKey);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.infiniteStopKey, other.infiniteStopKey);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/data/thrift/UpdateErrors.java b/core/src/main/java/org/apache/accumulo/core/data/thrift/UpdateErrors.java
+index 59ce5cb..55a0602 100644
+--- a/core/src/main/java/org/apache/accumulo/core/data/thrift/UpdateErrors.java
++++ b/core/src/main/java/org/apache/accumulo/core/data/thrift/UpdateErrors.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class UpdateErrors implements org.apache.thrift.TBase<UpdateErrors, UpdateErrors._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class UpdateErrors implements org.apache.thrift.TBase<UpdateErrors, UpdateErrors._Fields>, java.io.Serializable, Cloneable, Comparable<UpdateErrors> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("UpdateErrors");
+ 
+   private static final org.apache.thrift.protocol.TField FAILED_EXTENTS_FIELD_DESC = new org.apache.thrift.protocol.TField("failedExtents", org.apache.thrift.protocol.TType.MAP, (short)1);
+@@ -165,7 +167,7 @@ import org.slf4j.LoggerFactory;
+    */
+   public UpdateErrors(UpdateErrors other) {
+     if (other.isSetFailedExtents()) {
+-      Map<TKeyExtent,Long> __this__failedExtents = new HashMap<TKeyExtent,Long>();
++      Map<TKeyExtent,Long> __this__failedExtents = new HashMap<TKeyExtent,Long>(other.failedExtents.size());
+       for (Map.Entry<TKeyExtent, Long> other_element : other.failedExtents.entrySet()) {
+ 
+         TKeyExtent other_element_key = other_element.getKey();
+@@ -180,14 +182,14 @@ import org.slf4j.LoggerFactory;
+       this.failedExtents = __this__failedExtents;
+     }
+     if (other.isSetViolationSummaries()) {
+-      List<TConstraintViolationSummary> __this__violationSummaries = new ArrayList<TConstraintViolationSummary>();
++      List<TConstraintViolationSummary> __this__violationSummaries = new ArrayList<TConstraintViolationSummary>(other.violationSummaries.size());
+       for (TConstraintViolationSummary other_element : other.violationSummaries) {
+         __this__violationSummaries.add(new TConstraintViolationSummary(other_element));
+       }
+       this.violationSummaries = __this__violationSummaries;
+     }
+     if (other.isSetAuthorizationFailures()) {
+-      Map<TKeyExtent,org.apache.accumulo.core.client.impl.thrift.SecurityErrorCode> __this__authorizationFailures = new HashMap<TKeyExtent,org.apache.accumulo.core.client.impl.thrift.SecurityErrorCode>();
++      Map<TKeyExtent,org.apache.accumulo.core.client.impl.thrift.SecurityErrorCode> __this__authorizationFailures = new HashMap<TKeyExtent,org.apache.accumulo.core.client.impl.thrift.SecurityErrorCode>(other.authorizationFailures.size());
+       for (Map.Entry<TKeyExtent, org.apache.accumulo.core.client.impl.thrift.SecurityErrorCode> other_element : other.authorizationFailures.entrySet()) {
+ 
+         TKeyExtent other_element_key = other_element.getKey();
+@@ -432,40 +434,40 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(UpdateErrors other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    UpdateErrors typedOther = (UpdateErrors)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetFailedExtents()).compareTo(typedOther.isSetFailedExtents());
++    lastComparison = Boolean.valueOf(isSetFailedExtents()).compareTo(other.isSetFailedExtents());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetFailedExtents()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.failedExtents, typedOther.failedExtents);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.failedExtents, other.failedExtents);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetViolationSummaries()).compareTo(typedOther.isSetViolationSummaries());
++    lastComparison = Boolean.valueOf(isSetViolationSummaries()).compareTo(other.isSetViolationSummaries());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetViolationSummaries()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.violationSummaries, typedOther.violationSummaries);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.violationSummaries, other.violationSummaries);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetAuthorizationFailures()).compareTo(typedOther.isSetAuthorizationFailures());
++    lastComparison = Boolean.valueOf(isSetAuthorizationFailures()).compareTo(other.isSetAuthorizationFailures());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetAuthorizationFailures()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizationFailures, typedOther.authorizationFailures);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizationFailures, other.authorizationFailures);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -563,8 +565,8 @@ import org.slf4j.LoggerFactory;
+                 struct.failedExtents = new HashMap<TKeyExtent,Long>(2*_map50.size);
+                 for (int _i51 = 0; _i51 < _map50.size; ++_i51)
+                 {
+-                  TKeyExtent _key52; // required
+-                  long _val53; // required
++                  TKeyExtent _key52;
++                  long _val53;
+                   _key52 = new TKeyExtent();
+                   _key52.read(iprot);
+                   _val53 = iprot.readI64();
+@@ -584,7 +586,7 @@ import org.slf4j.LoggerFactory;
+                 struct.violationSummaries = new ArrayList<TConstraintViolationSummary>(_list54.size);
+                 for (int _i55 = 0; _i55 < _list54.size; ++_i55)
+                 {
+-                  TConstraintViolationSummary _elem56; // required
++                  TConstraintViolationSummary _elem56;
+                   _elem56 = new TConstraintViolationSummary();
+                   _elem56.read(iprot);
+                   struct.violationSummaries.add(_elem56);
+@@ -603,8 +605,8 @@ import org.slf4j.LoggerFactory;
+                 struct.authorizationFailures = new HashMap<TKeyExtent,org.apache.accumulo.core.client.impl.thrift.SecurityErrorCode>(2*_map57.size);
+                 for (int _i58 = 0; _i58 < _map57.size; ++_i58)
+                 {
+-                  TKeyExtent _key59; // required
+-                  org.apache.accumulo.core.client.impl.thrift.SecurityErrorCode _val60; // required
++                  TKeyExtent _key59;
++                  org.apache.accumulo.core.client.impl.thrift.SecurityErrorCode _val60;
+                   _key59 = new TKeyExtent();
+                   _key59.read(iprot);
+                   _val60 = org.apache.accumulo.core.client.impl.thrift.SecurityErrorCode.findByValue(iprot.readI32());
+@@ -739,8 +741,8 @@ import org.slf4j.LoggerFactory;
+           struct.failedExtents = new HashMap<TKeyExtent,Long>(2*_map67.size);
+           for (int _i68 = 0; _i68 < _map67.size; ++_i68)
+           {
+-            TKeyExtent _key69; // required
+-            long _val70; // required
++            TKeyExtent _key69;
++            long _val70;
+             _key69 = new TKeyExtent();
+             _key69.read(iprot);
+             _val70 = iprot.readI64();
+@@ -755,7 +757,7 @@ import org.slf4j.LoggerFactory;
+           struct.violationSummaries = new ArrayList<TConstraintViolationSummary>(_list71.size);
+           for (int _i72 = 0; _i72 < _list71.size; ++_i72)
+           {
+-            TConstraintViolationSummary _elem73; // required
++            TConstraintViolationSummary _elem73;
+             _elem73 = new TConstraintViolationSummary();
+             _elem73.read(iprot);
+             struct.violationSummaries.add(_elem73);
+@@ -769,8 +771,8 @@ import org.slf4j.LoggerFactory;
+           struct.authorizationFailures = new HashMap<TKeyExtent,org.apache.accumulo.core.client.impl.thrift.SecurityErrorCode>(2*_map74.size);
+           for (int _i75 = 0; _i75 < _map74.size; ++_i75)
+           {
+-            TKeyExtent _key76; // required
+-            org.apache.accumulo.core.client.impl.thrift.SecurityErrorCode _val77; // required
++            TKeyExtent _key76;
++            org.apache.accumulo.core.client.impl.thrift.SecurityErrorCode _val77;
+             _key76 = new TKeyExtent();
+             _key76.read(iprot);
+             _val77 = org.apache.accumulo.core.client.impl.thrift.SecurityErrorCode.findByValue(iprot.readI32());
+diff --git a/core/src/main/java/org/apache/accumulo/core/gc/thrift/GCMonitorService.java b/core/src/main/java/org/apache/accumulo/core/gc/thrift/GCMonitorService.java
+index 9bd8739..9d7ba57 100644
+--- a/core/src/main/java/org/apache/accumulo/core/gc/thrift/GCMonitorService.java
++++ b/core/src/main/java/org/apache/accumulo/core/gc/thrift/GCMonitorService.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -56,7 +58,7 @@ import org.slf4j.LoggerFactory;
+ 
+   public interface AsyncIface {
+ 
+-    public void getStatus(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getStatus_call> resultHandler) throws org.apache.thrift.TException;
++    public void getStatus(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+   }
+ 
+@@ -125,7 +127,7 @@ import org.slf4j.LoggerFactory;
+       super(protocolFactory, clientManager, transport);
+     }
+ 
+-    public void getStatus(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<getStatus_call> resultHandler) throws org.apache.thrift.TException {
++    public void getStatus(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getStatus_call method_call = new getStatus_call(tinfo, credentials, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -135,7 +137,7 @@ import org.slf4j.LoggerFactory;
+     public static class getStatus_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+-      public getStatus_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<getStatus_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getStatus_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -203,7 +205,81 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getStatus_args implements org.apache.thrift.TBase<getStatus_args, getStatus_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class AsyncProcessor<I extends AsyncIface> extends org.apache.thrift.TBaseAsyncProcessor<I> {
++    private static final Logger LOGGER = LoggerFactory.getLogger(AsyncProcessor.class.getName());
++    public AsyncProcessor(I iface) {
++      super(iface, getProcessMap(new HashMap<String, org.apache.thrift.AsyncProcessFunction<I, ? extends org.apache.thrift.TBase, ?>>()));
++    }
++
++    protected AsyncProcessor(I iface, Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      super(iface, getProcessMap(processMap));
++    }
++
++    private static <I extends AsyncIface> Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase,?>> getProcessMap(Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      processMap.put("getStatus", new getStatus());
++      return processMap;
++    }
++
++    public static class getStatus<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getStatus_args, GCStatus> {
++      public getStatus() {
++        super("getStatus");
++      }
++
++      public getStatus_args getEmptyArgsInstance() {
++        return new getStatus_args();
++      }
++
++      public AsyncMethodCallback<GCStatus> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<GCStatus>() { 
++          public void onComplete(GCStatus o) {
++            getStatus_result result = new getStatus_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getStatus_result result = new getStatus_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getStatus_args args, org.apache.thrift.async.AsyncMethodCallback<GCStatus> resultHandler) throws TException {
++        iface.getStatus(args.tinfo, args.credentials,resultHandler);
++      }
++    }
++
++  }
++
++  public static class getStatus_args implements org.apache.thrift.TBase<getStatus_args, getStatus_args._Fields>, java.io.Serializable, Cloneable, Comparable<getStatus_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getStatus_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+@@ -460,30 +536,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getStatus_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getStatus_args typedOther = (getStatus_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -667,7 +743,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getStatus_result implements org.apache.thrift.TBase<getStatus_result, getStatus_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getStatus_result implements org.apache.thrift.TBase<getStatus_result, getStatus_result._Fields>, java.io.Serializable, Cloneable, Comparable<getStatus_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getStatus_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRUCT, (short)0);
+@@ -924,30 +1000,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getStatus_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getStatus_result typedOther = (getStatus_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+diff --git a/core/src/main/java/org/apache/accumulo/core/gc/thrift/GCStatus.java b/core/src/main/java/org/apache/accumulo/core/gc/thrift/GCStatus.java
+index af655f7..7c90b7a 100644
+--- a/core/src/main/java/org/apache/accumulo/core/gc/thrift/GCStatus.java
++++ b/core/src/main/java/org/apache/accumulo/core/gc/thrift/GCStatus.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class GCStatus implements org.apache.thrift.TBase<GCStatus, GCStatus._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class GCStatus implements org.apache.thrift.TBase<GCStatus, GCStatus._Fields>, java.io.Serializable, Cloneable, Comparable<GCStatus> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("GCStatus");
+ 
+   private static final org.apache.thrift.protocol.TField LAST_FIELD_DESC = new org.apache.thrift.protocol.TField("last", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -421,50 +423,50 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(GCStatus other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    GCStatus typedOther = (GCStatus)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetLast()).compareTo(typedOther.isSetLast());
++    lastComparison = Boolean.valueOf(isSetLast()).compareTo(other.isSetLast());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetLast()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.last, typedOther.last);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.last, other.last);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetLastLog()).compareTo(typedOther.isSetLastLog());
++    lastComparison = Boolean.valueOf(isSetLastLog()).compareTo(other.isSetLastLog());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetLastLog()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lastLog, typedOther.lastLog);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lastLog, other.lastLog);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetCurrent()).compareTo(typedOther.isSetCurrent());
++    lastComparison = Boolean.valueOf(isSetCurrent()).compareTo(other.isSetCurrent());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetCurrent()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.current, typedOther.current);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.current, other.current);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetCurrentLog()).compareTo(typedOther.isSetCurrentLog());
++    lastComparison = Boolean.valueOf(isSetCurrentLog()).compareTo(other.isSetCurrentLog());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetCurrentLog()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.currentLog, typedOther.currentLog);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.currentLog, other.currentLog);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/gc/thrift/GcCycleStats.java b/core/src/main/java/org/apache/accumulo/core/gc/thrift/GcCycleStats.java
+index 15691bf..a76c14c 100644
+--- a/core/src/main/java/org/apache/accumulo/core/gc/thrift/GcCycleStats.java
++++ b/core/src/main/java/org/apache/accumulo/core/gc/thrift/GcCycleStats.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class GcCycleStats implements org.apache.thrift.TBase<GcCycleStats, GcCycleStats._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class GcCycleStats implements org.apache.thrift.TBase<GcCycleStats, GcCycleStats._Fields>, java.io.Serializable, Cloneable, Comparable<GcCycleStats> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("GcCycleStats");
+ 
+   private static final org.apache.thrift.protocol.TField STARTED_FIELD_DESC = new org.apache.thrift.protocol.TField("started", org.apache.thrift.protocol.TType.I64, (short)1);
+@@ -541,70 +543,70 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(GcCycleStats other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    GcCycleStats typedOther = (GcCycleStats)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetStarted()).compareTo(typedOther.isSetStarted());
++    lastComparison = Boolean.valueOf(isSetStarted()).compareTo(other.isSetStarted());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetStarted()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.started, typedOther.started);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.started, other.started);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetFinished()).compareTo(typedOther.isSetFinished());
++    lastComparison = Boolean.valueOf(isSetFinished()).compareTo(other.isSetFinished());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetFinished()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.finished, typedOther.finished);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.finished, other.finished);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetCandidates()).compareTo(typedOther.isSetCandidates());
++    lastComparison = Boolean.valueOf(isSetCandidates()).compareTo(other.isSetCandidates());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetCandidates()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.candidates, typedOther.candidates);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.candidates, other.candidates);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetInUse()).compareTo(typedOther.isSetInUse());
++    lastComparison = Boolean.valueOf(isSetInUse()).compareTo(other.isSetInUse());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetInUse()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.inUse, typedOther.inUse);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.inUse, other.inUse);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetDeleted()).compareTo(typedOther.isSetDeleted());
++    lastComparison = Boolean.valueOf(isSetDeleted()).compareTo(other.isSetDeleted());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetDeleted()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.deleted, typedOther.deleted);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.deleted, other.deleted);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetErrors()).compareTo(typedOther.isSetErrors());
++    lastComparison = Boolean.valueOf(isSetErrors()).compareTo(other.isSetErrors());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetErrors()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.errors, typedOther.errors);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.errors, other.errors);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/master/thrift/Compacting.java b/core/src/main/java/org/apache/accumulo/core/master/thrift/Compacting.java
+index 64807b9..d99d41f 100644
+--- a/core/src/main/java/org/apache/accumulo/core/master/thrift/Compacting.java
++++ b/core/src/main/java/org/apache/accumulo/core/master/thrift/Compacting.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class Compacting implements org.apache.thrift.TBase<Compacting, Compacting._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class Compacting implements org.apache.thrift.TBase<Compacting, Compacting._Fields>, java.io.Serializable, Cloneable, Comparable<Compacting> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Compacting");
+ 
+   private static final org.apache.thrift.protocol.TField RUNNING_FIELD_DESC = new org.apache.thrift.protocol.TField("running", org.apache.thrift.protocol.TType.I32, (short)1);
+@@ -305,30 +307,30 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(Compacting other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    Compacting typedOther = (Compacting)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetRunning()).compareTo(typedOther.isSetRunning());
++    lastComparison = Boolean.valueOf(isSetRunning()).compareTo(other.isSetRunning());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetRunning()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.running, typedOther.running);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.running, other.running);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetQueued()).compareTo(typedOther.isSetQueued());
++    lastComparison = Boolean.valueOf(isSetQueued()).compareTo(other.isSetQueued());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetQueued()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queued, typedOther.queued);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queued, other.queued);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/master/thrift/DeadServer.java b/core/src/main/java/org/apache/accumulo/core/master/thrift/DeadServer.java
+index ec2e549..e428589 100644
+--- a/core/src/main/java/org/apache/accumulo/core/master/thrift/DeadServer.java
++++ b/core/src/main/java/org/apache/accumulo/core/master/thrift/DeadServer.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class DeadServer implements org.apache.thrift.TBase<DeadServer, DeadServer._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class DeadServer implements org.apache.thrift.TBase<DeadServer, DeadServer._Fields>, java.io.Serializable, Cloneable, Comparable<DeadServer> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("DeadServer");
+ 
+   private static final org.apache.thrift.protocol.TField SERVER_FIELD_DESC = new org.apache.thrift.protocol.TField("server", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -364,40 +366,40 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(DeadServer other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    DeadServer typedOther = (DeadServer)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetServer()).compareTo(typedOther.isSetServer());
++    lastComparison = Boolean.valueOf(isSetServer()).compareTo(other.isSetServer());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetServer()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.server, typedOther.server);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.server, other.server);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetLastStatus()).compareTo(typedOther.isSetLastStatus());
++    lastComparison = Boolean.valueOf(isSetLastStatus()).compareTo(other.isSetLastStatus());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetLastStatus()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lastStatus, typedOther.lastStatus);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lastStatus, other.lastStatus);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetStatus()).compareTo(typedOther.isSetStatus());
++    lastComparison = Boolean.valueOf(isSetStatus()).compareTo(other.isSetStatus());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetStatus()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.status, typedOther.status);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.status, other.status);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/master/thrift/FateOperation.java b/core/src/main/java/org/apache/accumulo/core/master/thrift/FateOperation.java
+index 60cb63e..f65f552 100644
+--- a/core/src/main/java/org/apache/accumulo/core/master/thrift/FateOperation.java
++++ b/core/src/main/java/org/apache/accumulo/core/master/thrift/FateOperation.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/core/src/main/java/org/apache/accumulo/core/master/thrift/FateService.java b/core/src/main/java/org/apache/accumulo/core/master/thrift/FateService.java
+index cc4d175..6b337b4 100644
+--- a/core/src/main/java/org/apache/accumulo/core/master/thrift/FateService.java
++++ b/core/src/main/java/org/apache/accumulo/core/master/thrift/FateService.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -62,13 +64,13 @@ import org.slf4j.LoggerFactory;
+ 
+   public interface AsyncIface {
+ 
+-    public void beginFateOperation(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.beginFateOperation_call> resultHandler) throws org.apache.thrift.TException;
++    public void beginFateOperation(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void executeFateOperation(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, FateOperation op, List<ByteBuffer> arguments, Map<String,String> options, boolean autoClean, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.executeFateOperation_call> resultHandler) throws org.apache.thrift.TException;
++    public void executeFateOperation(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, FateOperation op, List<ByteBuffer> arguments, Map<String,String> options, boolean autoClean, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void waitForFateOperation(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.waitForFateOperation_call> resultHandler) throws org.apache.thrift.TException;
++    public void waitForFateOperation(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void finishFateOperation(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.finishFateOperation_call> resultHandler) throws org.apache.thrift.TException;
++    public void finishFateOperation(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+   }
+ 
+@@ -225,7 +227,7 @@ import org.slf4j.LoggerFactory;
+       super(protocolFactory, clientManager, transport);
+     }
+ 
+-    public void beginFateOperation(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<beginFateOperation_call> resultHandler) throws org.apache.thrift.TException {
++    public void beginFateOperation(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       beginFateOperation_call method_call = new beginFateOperation_call(tinfo, credentials, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -235,7 +237,7 @@ import org.slf4j.LoggerFactory;
+     public static class beginFateOperation_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+-      public beginFateOperation_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<beginFateOperation_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public beginFateOperation_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -260,7 +262,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void executeFateOperation(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, FateOperation op, List<ByteBuffer> arguments, Map<String,String> options, boolean autoClean, org.apache.thrift.async.AsyncMethodCallback<executeFateOperation_call> resultHandler) throws org.apache.thrift.TException {
++    public void executeFateOperation(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, FateOperation op, List<ByteBuffer> arguments, Map<String,String> options, boolean autoClean, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       executeFateOperation_call method_call = new executeFateOperation_call(tinfo, credentials, opid, op, arguments, options, autoClean, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -275,7 +277,7 @@ import org.slf4j.LoggerFactory;
+       private List<ByteBuffer> arguments;
+       private Map<String,String> options;
+       private boolean autoClean;
+-      public executeFateOperation_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, FateOperation op, List<ByteBuffer> arguments, Map<String,String> options, boolean autoClean, org.apache.thrift.async.AsyncMethodCallback<executeFateOperation_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public executeFateOperation_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, FateOperation op, List<ByteBuffer> arguments, Map<String,String> options, boolean autoClean, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -310,7 +312,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void waitForFateOperation(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, org.apache.thrift.async.AsyncMethodCallback<waitForFateOperation_call> resultHandler) throws org.apache.thrift.TException {
++    public void waitForFateOperation(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       waitForFateOperation_call method_call = new waitForFateOperation_call(tinfo, credentials, opid, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -321,7 +323,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private long opid;
+-      public waitForFateOperation_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, org.apache.thrift.async.AsyncMethodCallback<waitForFateOperation_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public waitForFateOperation_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -348,7 +350,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void finishFateOperation(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, org.apache.thrift.async.AsyncMethodCallback<finishFateOperation_call> resultHandler) throws org.apache.thrift.TException {
++    public void finishFateOperation(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       finishFateOperation_call method_call = new finishFateOperation_call(tinfo, credentials, opid, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -359,7 +361,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private long opid;
+-      public finishFateOperation_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, org.apache.thrift.async.AsyncMethodCallback<finishFateOperation_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public finishFateOperation_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long opid, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -509,7 +511,264 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class beginFateOperation_args implements org.apache.thrift.TBase<beginFateOperation_args, beginFateOperation_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class AsyncProcessor<I extends AsyncIface> extends org.apache.thrift.TBaseAsyncProcessor<I> {
++    private static final Logger LOGGER = LoggerFactory.getLogger(AsyncProcessor.class.getName());
++    public AsyncProcessor(I iface) {
++      super(iface, getProcessMap(new HashMap<String, org.apache.thrift.AsyncProcessFunction<I, ? extends org.apache.thrift.TBase, ?>>()));
++    }
++
++    protected AsyncProcessor(I iface, Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      super(iface, getProcessMap(processMap));
++    }
++
++    private static <I extends AsyncIface> Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase,?>> getProcessMap(Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      processMap.put("beginFateOperation", new beginFateOperation());
++      processMap.put("executeFateOperation", new executeFateOperation());
++      processMap.put("waitForFateOperation", new waitForFateOperation());
++      processMap.put("finishFateOperation", new finishFateOperation());
++      return processMap;
++    }
++
++    public static class beginFateOperation<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, beginFateOperation_args, Long> {
++      public beginFateOperation() {
++        super("beginFateOperation");
++      }
++
++      public beginFateOperation_args getEmptyArgsInstance() {
++        return new beginFateOperation_args();
++      }
++
++      public AsyncMethodCallback<Long> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Long>() { 
++          public void onComplete(Long o) {
++            beginFateOperation_result result = new beginFateOperation_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            beginFateOperation_result result = new beginFateOperation_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, beginFateOperation_args args, org.apache.thrift.async.AsyncMethodCallback<Long> resultHandler) throws TException {
++        iface.beginFateOperation(args.tinfo, args.credentials,resultHandler);
++      }
++    }
++
++    public static class executeFateOperation<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, executeFateOperation_args, Void> {
++      public executeFateOperation() {
++        super("executeFateOperation");
++      }
++
++      public executeFateOperation_args getEmptyArgsInstance() {
++        return new executeFateOperation_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            executeFateOperation_result result = new executeFateOperation_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            executeFateOperation_result result = new executeFateOperation_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftTableOperationException) {
++                        result.tope = (org.apache.accumulo.core.client.impl.thrift.ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, executeFateOperation_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.executeFateOperation(args.tinfo, args.credentials, args.opid, args.op, args.arguments, args.options, args.autoClean,resultHandler);
++      }
++    }
++
++    public static class waitForFateOperation<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, waitForFateOperation_args, String> {
++      public waitForFateOperation() {
++        super("waitForFateOperation");
++      }
++
++      public waitForFateOperation_args getEmptyArgsInstance() {
++        return new waitForFateOperation_args();
++      }
++
++      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<String>() { 
++          public void onComplete(String o) {
++            waitForFateOperation_result result = new waitForFateOperation_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            waitForFateOperation_result result = new waitForFateOperation_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftTableOperationException) {
++                        result.tope = (org.apache.accumulo.core.client.impl.thrift.ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, waitForFateOperation_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
++        iface.waitForFateOperation(args.tinfo, args.credentials, args.opid,resultHandler);
++      }
++    }
++
++    public static class finishFateOperation<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, finishFateOperation_args, Void> {
++      public finishFateOperation() {
++        super("finishFateOperation");
++      }
++
++      public finishFateOperation_args getEmptyArgsInstance() {
++        return new finishFateOperation_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            finishFateOperation_result result = new finishFateOperation_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            finishFateOperation_result result = new finishFateOperation_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, finishFateOperation_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.finishFateOperation(args.tinfo, args.credentials, args.opid,resultHandler);
++      }
++    }
++
++  }
++
++  public static class beginFateOperation_args implements org.apache.thrift.TBase<beginFateOperation_args, beginFateOperation_args._Fields>, java.io.Serializable, Cloneable, Comparable<beginFateOperation_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("beginFateOperation_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+@@ -766,30 +1025,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(beginFateOperation_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      beginFateOperation_args typedOther = (beginFateOperation_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -973,7 +1232,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class beginFateOperation_result implements org.apache.thrift.TBase<beginFateOperation_result, beginFateOperation_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class beginFateOperation_result implements org.apache.thrift.TBase<beginFateOperation_result, beginFateOperation_result._Fields>, java.io.Serializable, Cloneable, Comparable<beginFateOperation_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("beginFateOperation_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.I64, (short)0);
+@@ -1232,30 +1491,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(beginFateOperation_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      beginFateOperation_result typedOther = (beginFateOperation_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -1429,7 +1688,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class executeFateOperation_args implements org.apache.thrift.TBase<executeFateOperation_args, executeFateOperation_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class executeFateOperation_args implements org.apache.thrift.TBase<executeFateOperation_args, executeFateOperation_args._Fields>, java.io.Serializable, Cloneable, Comparable<executeFateOperation_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("executeFateOperation_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)7);
+@@ -1606,27 +1865,11 @@ import org.slf4j.LoggerFactory;
+         this.op = other.op;
+       }
+       if (other.isSetArguments()) {
+-        List<ByteBuffer> __this__arguments = new ArrayList<ByteBuffer>();
+-        for (ByteBuffer other_element : other.arguments) {
+-          ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-          __this__arguments.add(temp_binary_element);
+-        }
++        List<ByteBuffer> __this__arguments = new ArrayList<ByteBuffer>(other.arguments);
+         this.arguments = __this__arguments;
+       }
+       if (other.isSetOptions()) {
+-        Map<String,String> __this__options = new HashMap<String,String>();
+-        for (Map.Entry<String, String> other_element : other.options.entrySet()) {
+-
+-          String other_element_key = other_element.getKey();
+-          String other_element_value = other_element.getValue();
+-
+-          String __this__options_copy_key = other_element_key;
+-
+-          String __this__options_copy_value = other_element_value;
+-
+-          __this__options.put(__this__options_copy_key, __this__options_copy_value);
+-        }
++        Map<String,String> __this__options = new HashMap<String,String>(other.options);
+         this.options = __this__options;
+       }
+       this.autoClean = other.autoClean;
+@@ -2046,80 +2289,80 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(executeFateOperation_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      executeFateOperation_args typedOther = (executeFateOperation_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOpid()).compareTo(typedOther.isSetOpid());
++      lastComparison = Boolean.valueOf(isSetOpid()).compareTo(other.isSetOpid());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOpid()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.opid, typedOther.opid);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.opid, other.opid);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOp()).compareTo(typedOther.isSetOp());
++      lastComparison = Boolean.valueOf(isSetOp()).compareTo(other.isSetOp());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOp()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.op, typedOther.op);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.op, other.op);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetArguments()).compareTo(typedOther.isSetArguments());
++      lastComparison = Boolean.valueOf(isSetArguments()).compareTo(other.isSetArguments());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetArguments()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.arguments, typedOther.arguments);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.arguments, other.arguments);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOptions()).compareTo(typedOther.isSetOptions());
++      lastComparison = Boolean.valueOf(isSetOptions()).compareTo(other.isSetOptions());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOptions()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.options, typedOther.options);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.options, other.options);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetAutoClean()).compareTo(typedOther.isSetAutoClean());
++      lastComparison = Boolean.valueOf(isSetAutoClean()).compareTo(other.isSetAutoClean());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetAutoClean()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.autoClean, typedOther.autoClean);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.autoClean, other.autoClean);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -2283,7 +2526,7 @@ import org.slf4j.LoggerFactory;
+                   struct.arguments = new ArrayList<ByteBuffer>(_list70.size);
+                   for (int _i71 = 0; _i71 < _list70.size; ++_i71)
+                   {
+-                    ByteBuffer _elem72; // required
++                    ByteBuffer _elem72;
+                     _elem72 = iprot.readBinary();
+                     struct.arguments.add(_elem72);
+                   }
+@@ -2301,8 +2544,8 @@ import org.slf4j.LoggerFactory;
+                   struct.options = new HashMap<String,String>(2*_map73.size);
+                   for (int _i74 = 0; _i74 < _map73.size; ++_i74)
+                   {
+-                    String _key75; // required
+-                    String _val76; // required
++                    String _key75;
++                    String _val76;
+                     _key75 = iprot.readString();
+                     _val76 = iprot.readString();
+                     struct.options.put(_key75, _val76);
+@@ -2487,7 +2730,7 @@ import org.slf4j.LoggerFactory;
+             struct.arguments = new ArrayList<ByteBuffer>(_list81.size);
+             for (int _i82 = 0; _i82 < _list81.size; ++_i82)
+             {
+-              ByteBuffer _elem83; // required
++              ByteBuffer _elem83;
+               _elem83 = iprot.readBinary();
+               struct.arguments.add(_elem83);
+             }
+@@ -2500,8 +2743,8 @@ import org.slf4j.LoggerFactory;
+             struct.options = new HashMap<String,String>(2*_map84.size);
+             for (int _i85 = 0; _i85 < _map84.size; ++_i85)
+             {
+-              String _key86; // required
+-              String _val87; // required
++              String _key86;
++              String _val87;
+               _key86 = iprot.readString();
+               _val87 = iprot.readString();
+               struct.options.put(_key86, _val87);
+@@ -2518,7 +2761,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class executeFateOperation_result implements org.apache.thrift.TBase<executeFateOperation_result, executeFateOperation_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class executeFateOperation_result implements org.apache.thrift.TBase<executeFateOperation_result, executeFateOperation_result._Fields>, java.io.Serializable, Cloneable, Comparable<executeFateOperation_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("executeFateOperation_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -2775,30 +3018,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(executeFateOperation_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      executeFateOperation_result typedOther = (executeFateOperation_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -2976,7 +3219,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class waitForFateOperation_args implements org.apache.thrift.TBase<waitForFateOperation_args, waitForFateOperation_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class waitForFateOperation_args implements org.apache.thrift.TBase<waitForFateOperation_args, waitForFateOperation_args._Fields>, java.io.Serializable, Cloneable, Comparable<waitForFateOperation_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("waitForFateOperation_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+@@ -3294,40 +3537,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(waitForFateOperation_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      waitForFateOperation_args typedOther = (waitForFateOperation_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOpid()).compareTo(typedOther.isSetOpid());
++      lastComparison = Boolean.valueOf(isSetOpid()).compareTo(other.isSetOpid());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOpid()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.opid, typedOther.opid);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.opid, other.opid);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -3538,7 +3781,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class waitForFateOperation_result implements org.apache.thrift.TBase<waitForFateOperation_result, waitForFateOperation_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class waitForFateOperation_result implements org.apache.thrift.TBase<waitForFateOperation_result, waitForFateOperation_result._Fields>, java.io.Serializable, Cloneable, Comparable<waitForFateOperation_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("waitForFateOperation_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRING, (short)0);
+@@ -3854,40 +4097,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(waitForFateOperation_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      waitForFateOperation_result typedOther = (waitForFateOperation_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -4096,7 +4339,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class finishFateOperation_args implements org.apache.thrift.TBase<finishFateOperation_args, finishFateOperation_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class finishFateOperation_args implements org.apache.thrift.TBase<finishFateOperation_args, finishFateOperation_args._Fields>, java.io.Serializable, Cloneable, Comparable<finishFateOperation_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("finishFateOperation_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+@@ -4414,40 +4657,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(finishFateOperation_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      finishFateOperation_args typedOther = (finishFateOperation_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOpid()).compareTo(typedOther.isSetOpid());
++      lastComparison = Boolean.valueOf(isSetOpid()).compareTo(other.isSetOpid());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOpid()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.opid, typedOther.opid);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.opid, other.opid);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -4658,7 +4901,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class finishFateOperation_result implements org.apache.thrift.TBase<finishFateOperation_result, finishFateOperation_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class finishFateOperation_result implements org.apache.thrift.TBase<finishFateOperation_result, finishFateOperation_result._Fields>, java.io.Serializable, Cloneable, Comparable<finishFateOperation_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("finishFateOperation_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -4856,20 +5099,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(finishFateOperation_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      finishFateOperation_result typedOther = (finishFateOperation_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+diff --git a/core/src/main/java/org/apache/accumulo/core/master/thrift/MasterClientService.java b/core/src/main/java/org/apache/accumulo/core/master/thrift/MasterClientService.java
+index f6f1e0e..0800aa9 100644
+--- a/core/src/main/java/org/apache/accumulo/core/master/thrift/MasterClientService.java
++++ b/core/src/main/java/org/apache/accumulo/core/master/thrift/MasterClientService.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -82,33 +84,33 @@ import org.slf4j.LoggerFactory;
+ 
+   public interface AsyncIface extends FateService .AsyncIface {
+ 
+-    public void initiateFlush(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.initiateFlush_call> resultHandler) throws org.apache.thrift.TException;
++    public void initiateFlush(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void waitForFlush(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, ByteBuffer startRow, ByteBuffer endRow, long flushID, long maxLoops, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.waitForFlush_call> resultHandler) throws org.apache.thrift.TException;
++    public void waitForFlush(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, ByteBuffer startRow, ByteBuffer endRow, long flushID, long maxLoops, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void setTableProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, String property, String value, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.setTableProperty_call> resultHandler) throws org.apache.thrift.TException;
++    public void setTableProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, String property, String value, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void removeTableProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, String property, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.removeTableProperty_call> resultHandler) throws org.apache.thrift.TException;
++    public void removeTableProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, String property, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void setNamespaceProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, String property, String value, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.setNamespaceProperty_call> resultHandler) throws org.apache.thrift.TException;
++    public void setNamespaceProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, String property, String value, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void removeNamespaceProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, String property, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.removeNamespaceProperty_call> resultHandler) throws org.apache.thrift.TException;
++    public void removeNamespaceProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, String property, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void setMasterGoalState(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, MasterGoalState state, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.setMasterGoalState_call> resultHandler) throws org.apache.thrift.TException;
++    public void setMasterGoalState(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, MasterGoalState state, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void shutdown(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, boolean stopTabletServers, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.shutdown_call> resultHandler) throws org.apache.thrift.TException;
++    public void shutdown(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, boolean stopTabletServers, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void shutdownTabletServer(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tabletServer, boolean force, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.shutdownTabletServer_call> resultHandler) throws org.apache.thrift.TException;
++    public void shutdownTabletServer(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tabletServer, boolean force, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void setSystemProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String property, String value, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.setSystemProperty_call> resultHandler) throws org.apache.thrift.TException;
++    public void setSystemProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String property, String value, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void removeSystemProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String property, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.removeSystemProperty_call> resultHandler) throws org.apache.thrift.TException;
++    public void removeSystemProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String property, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getMasterStats(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getMasterStats_call> resultHandler) throws org.apache.thrift.TException;
++    public void getMasterStats(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void reportSplitExtent(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String serverName, TabletSplit split, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.reportSplitExtent_call> resultHandler) throws org.apache.thrift.TException;
++    public void reportSplitExtent(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String serverName, TabletSplit split, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void reportTabletStatus(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String serverName, TabletLoadState status, org.apache.accumulo.core.data.thrift.TKeyExtent tablet, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.reportTabletStatus_call> resultHandler) throws org.apache.thrift.TException;
++    public void reportTabletStatus(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String serverName, TabletLoadState status, org.apache.accumulo.core.data.thrift.TKeyExtent tablet, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+   }
+ 
+@@ -516,7 +518,7 @@ import org.slf4j.LoggerFactory;
+       super(protocolFactory, clientManager, transport);
+     }
+ 
+-    public void initiateFlush(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, org.apache.thrift.async.AsyncMethodCallback<initiateFlush_call> resultHandler) throws org.apache.thrift.TException {
++    public void initiateFlush(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       initiateFlush_call method_call = new initiateFlush_call(tinfo, credentials, tableName, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -527,7 +529,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String tableName;
+-      public initiateFlush_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, org.apache.thrift.async.AsyncMethodCallback<initiateFlush_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public initiateFlush_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -554,7 +556,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void waitForFlush(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, ByteBuffer startRow, ByteBuffer endRow, long flushID, long maxLoops, org.apache.thrift.async.AsyncMethodCallback<waitForFlush_call> resultHandler) throws org.apache.thrift.TException {
++    public void waitForFlush(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, ByteBuffer startRow, ByteBuffer endRow, long flushID, long maxLoops, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       waitForFlush_call method_call = new waitForFlush_call(tinfo, credentials, tableName, startRow, endRow, flushID, maxLoops, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -569,7 +571,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer endRow;
+       private long flushID;
+       private long maxLoops;
+-      public waitForFlush_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, ByteBuffer startRow, ByteBuffer endRow, long flushID, long maxLoops, org.apache.thrift.async.AsyncMethodCallback<waitForFlush_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public waitForFlush_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, ByteBuffer startRow, ByteBuffer endRow, long flushID, long maxLoops, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -604,7 +606,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void setTableProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, String property, String value, org.apache.thrift.async.AsyncMethodCallback<setTableProperty_call> resultHandler) throws org.apache.thrift.TException {
++    public void setTableProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, String property, String value, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       setTableProperty_call method_call = new setTableProperty_call(tinfo, credentials, tableName, property, value, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -617,7 +619,7 @@ import org.slf4j.LoggerFactory;
+       private String tableName;
+       private String property;
+       private String value;
+-      public setTableProperty_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, String property, String value, org.apache.thrift.async.AsyncMethodCallback<setTableProperty_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public setTableProperty_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, String property, String value, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -648,7 +650,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void removeTableProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, String property, org.apache.thrift.async.AsyncMethodCallback<removeTableProperty_call> resultHandler) throws org.apache.thrift.TException {
++    public void removeTableProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, String property, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       removeTableProperty_call method_call = new removeTableProperty_call(tinfo, credentials, tableName, property, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -660,7 +662,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String tableName;
+       private String property;
+-      public removeTableProperty_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, String property, org.apache.thrift.async.AsyncMethodCallback<removeTableProperty_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public removeTableProperty_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableName, String property, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -689,7 +691,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void setNamespaceProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, String property, String value, org.apache.thrift.async.AsyncMethodCallback<setNamespaceProperty_call> resultHandler) throws org.apache.thrift.TException {
++    public void setNamespaceProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, String property, String value, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       setNamespaceProperty_call method_call = new setNamespaceProperty_call(tinfo, credentials, ns, property, value, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -702,7 +704,7 @@ import org.slf4j.LoggerFactory;
+       private String ns;
+       private String property;
+       private String value;
+-      public setNamespaceProperty_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, String property, String value, org.apache.thrift.async.AsyncMethodCallback<setNamespaceProperty_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public setNamespaceProperty_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, String property, String value, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -733,7 +735,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void removeNamespaceProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, String property, org.apache.thrift.async.AsyncMethodCallback<removeNamespaceProperty_call> resultHandler) throws org.apache.thrift.TException {
++    public void removeNamespaceProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, String property, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       removeNamespaceProperty_call method_call = new removeNamespaceProperty_call(tinfo, credentials, ns, property, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -745,7 +747,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String ns;
+       private String property;
+-      public removeNamespaceProperty_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, String property, org.apache.thrift.async.AsyncMethodCallback<removeNamespaceProperty_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public removeNamespaceProperty_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String ns, String property, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -774,7 +776,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void setMasterGoalState(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, MasterGoalState state, org.apache.thrift.async.AsyncMethodCallback<setMasterGoalState_call> resultHandler) throws org.apache.thrift.TException {
++    public void setMasterGoalState(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, MasterGoalState state, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       setMasterGoalState_call method_call = new setMasterGoalState_call(tinfo, credentials, state, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -785,7 +787,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private MasterGoalState state;
+-      public setMasterGoalState_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, MasterGoalState state, org.apache.thrift.async.AsyncMethodCallback<setMasterGoalState_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public setMasterGoalState_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, MasterGoalState state, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -812,7 +814,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void shutdown(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, boolean stopTabletServers, org.apache.thrift.async.AsyncMethodCallback<shutdown_call> resultHandler) throws org.apache.thrift.TException {
++    public void shutdown(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, boolean stopTabletServers, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       shutdown_call method_call = new shutdown_call(tinfo, credentials, stopTabletServers, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -823,7 +825,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private boolean stopTabletServers;
+-      public shutdown_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, boolean stopTabletServers, org.apache.thrift.async.AsyncMethodCallback<shutdown_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public shutdown_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, boolean stopTabletServers, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -850,7 +852,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void shutdownTabletServer(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tabletServer, boolean force, org.apache.thrift.async.AsyncMethodCallback<shutdownTabletServer_call> resultHandler) throws org.apache.thrift.TException {
++    public void shutdownTabletServer(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tabletServer, boolean force, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       shutdownTabletServer_call method_call = new shutdownTabletServer_call(tinfo, credentials, tabletServer, force, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -862,7 +864,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String tabletServer;
+       private boolean force;
+-      public shutdownTabletServer_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tabletServer, boolean force, org.apache.thrift.async.AsyncMethodCallback<shutdownTabletServer_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public shutdownTabletServer_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tabletServer, boolean force, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -891,7 +893,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void setSystemProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String property, String value, org.apache.thrift.async.AsyncMethodCallback<setSystemProperty_call> resultHandler) throws org.apache.thrift.TException {
++    public void setSystemProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String property, String value, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       setSystemProperty_call method_call = new setSystemProperty_call(tinfo, credentials, property, value, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -903,7 +905,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String property;
+       private String value;
+-      public setSystemProperty_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String property, String value, org.apache.thrift.async.AsyncMethodCallback<setSystemProperty_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public setSystemProperty_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String property, String value, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -932,7 +934,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void removeSystemProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String property, org.apache.thrift.async.AsyncMethodCallback<removeSystemProperty_call> resultHandler) throws org.apache.thrift.TException {
++    public void removeSystemProperty(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String property, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       removeSystemProperty_call method_call = new removeSystemProperty_call(tinfo, credentials, property, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -943,7 +945,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String property;
+-      public removeSystemProperty_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String property, org.apache.thrift.async.AsyncMethodCallback<removeSystemProperty_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public removeSystemProperty_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String property, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -970,7 +972,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getMasterStats(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<getMasterStats_call> resultHandler) throws org.apache.thrift.TException {
++    public void getMasterStats(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getMasterStats_call method_call = new getMasterStats_call(tinfo, credentials, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -980,7 +982,7 @@ import org.slf4j.LoggerFactory;
+     public static class getMasterStats_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+-      public getMasterStats_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<getMasterStats_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getMasterStats_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1005,7 +1007,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void reportSplitExtent(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String serverName, TabletSplit split, org.apache.thrift.async.AsyncMethodCallback<reportSplitExtent_call> resultHandler) throws org.apache.thrift.TException {
++    public void reportSplitExtent(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String serverName, TabletSplit split, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       reportSplitExtent_call method_call = new reportSplitExtent_call(tinfo, credentials, serverName, split, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1017,7 +1019,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String serverName;
+       private TabletSplit split;
+-      public reportSplitExtent_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String serverName, TabletSplit split, org.apache.thrift.async.AsyncMethodCallback<reportSplitExtent_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public reportSplitExtent_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String serverName, TabletSplit split, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, true);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1045,7 +1047,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void reportTabletStatus(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String serverName, TabletLoadState status, org.apache.accumulo.core.data.thrift.TKeyExtent tablet, org.apache.thrift.async.AsyncMethodCallback<reportTabletStatus_call> resultHandler) throws org.apache.thrift.TException {
++    public void reportTabletStatus(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String serverName, TabletLoadState status, org.apache.accumulo.core.data.thrift.TKeyExtent tablet, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       reportTabletStatus_call method_call = new reportTabletStatus_call(tinfo, credentials, serverName, status, tablet, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1058,7 +1060,7 @@ import org.slf4j.LoggerFactory;
+       private String serverName;
+       private TabletLoadState status;
+       private org.apache.accumulo.core.data.thrift.TKeyExtent tablet;
+-      public reportTabletStatus_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String serverName, TabletLoadState status, org.apache.accumulo.core.data.thrift.TKeyExtent tablet, org.apache.thrift.async.AsyncMethodCallback<reportTabletStatus_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public reportTabletStatus_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String serverName, TabletLoadState status, org.apache.accumulo.core.data.thrift.TKeyExtent tablet, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, true);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1459,7 +1461,798 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class initiateFlush_args implements org.apache.thrift.TBase<initiateFlush_args, initiateFlush_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class AsyncProcessor<I extends AsyncIface> extends FateService.AsyncProcessor<I> {
++    private static final Logger LOGGER = LoggerFactory.getLogger(AsyncProcessor.class.getName());
++    public AsyncProcessor(I iface) {
++      super(iface, getProcessMap(new HashMap<String, org.apache.thrift.AsyncProcessFunction<I, ? extends org.apache.thrift.TBase, ?>>()));
++    }
++
++    protected AsyncProcessor(I iface, Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      super(iface, getProcessMap(processMap));
++    }
++
++    private static <I extends AsyncIface> Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase,?>> getProcessMap(Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      processMap.put("initiateFlush", new initiateFlush());
++      processMap.put("waitForFlush", new waitForFlush());
++      processMap.put("setTableProperty", new setTableProperty());
++      processMap.put("removeTableProperty", new removeTableProperty());
++      processMap.put("setNamespaceProperty", new setNamespaceProperty());
++      processMap.put("removeNamespaceProperty", new removeNamespaceProperty());
++      processMap.put("setMasterGoalState", new setMasterGoalState());
++      processMap.put("shutdown", new shutdown());
++      processMap.put("shutdownTabletServer", new shutdownTabletServer());
++      processMap.put("setSystemProperty", new setSystemProperty());
++      processMap.put("removeSystemProperty", new removeSystemProperty());
++      processMap.put("getMasterStats", new getMasterStats());
++      processMap.put("reportSplitExtent", new reportSplitExtent());
++      processMap.put("reportTabletStatus", new reportTabletStatus());
++      return processMap;
++    }
++
++    public static class initiateFlush<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, initiateFlush_args, Long> {
++      public initiateFlush() {
++        super("initiateFlush");
++      }
++
++      public initiateFlush_args getEmptyArgsInstance() {
++        return new initiateFlush_args();
++      }
++
++      public AsyncMethodCallback<Long> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Long>() { 
++          public void onComplete(Long o) {
++            initiateFlush_result result = new initiateFlush_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            initiateFlush_result result = new initiateFlush_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftTableOperationException) {
++                        result.tope = (org.apache.accumulo.core.client.impl.thrift.ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, initiateFlush_args args, org.apache.thrift.async.AsyncMethodCallback<Long> resultHandler) throws TException {
++        iface.initiateFlush(args.tinfo, args.credentials, args.tableName,resultHandler);
++      }
++    }
++
++    public static class waitForFlush<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, waitForFlush_args, Void> {
++      public waitForFlush() {
++        super("waitForFlush");
++      }
++
++      public waitForFlush_args getEmptyArgsInstance() {
++        return new waitForFlush_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            waitForFlush_result result = new waitForFlush_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            waitForFlush_result result = new waitForFlush_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftTableOperationException) {
++                        result.tope = (org.apache.accumulo.core.client.impl.thrift.ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, waitForFlush_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.waitForFlush(args.tinfo, args.credentials, args.tableName, args.startRow, args.endRow, args.flushID, args.maxLoops,resultHandler);
++      }
++    }
++
++    public static class setTableProperty<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, setTableProperty_args, Void> {
++      public setTableProperty() {
++        super("setTableProperty");
++      }
++
++      public setTableProperty_args getEmptyArgsInstance() {
++        return new setTableProperty_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            setTableProperty_result result = new setTableProperty_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            setTableProperty_result result = new setTableProperty_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftTableOperationException) {
++                        result.tope = (org.apache.accumulo.core.client.impl.thrift.ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, setTableProperty_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.setTableProperty(args.tinfo, args.credentials, args.tableName, args.property, args.value,resultHandler);
++      }
++    }
++
++    public static class removeTableProperty<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, removeTableProperty_args, Void> {
++      public removeTableProperty() {
++        super("removeTableProperty");
++      }
++
++      public removeTableProperty_args getEmptyArgsInstance() {
++        return new removeTableProperty_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            removeTableProperty_result result = new removeTableProperty_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            removeTableProperty_result result = new removeTableProperty_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftTableOperationException) {
++                        result.tope = (org.apache.accumulo.core.client.impl.thrift.ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, removeTableProperty_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.removeTableProperty(args.tinfo, args.credentials, args.tableName, args.property,resultHandler);
++      }
++    }
++
++    public static class setNamespaceProperty<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, setNamespaceProperty_args, Void> {
++      public setNamespaceProperty() {
++        super("setNamespaceProperty");
++      }
++
++      public setNamespaceProperty_args getEmptyArgsInstance() {
++        return new setNamespaceProperty_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            setNamespaceProperty_result result = new setNamespaceProperty_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            setNamespaceProperty_result result = new setNamespaceProperty_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftTableOperationException) {
++                        result.tope = (org.apache.accumulo.core.client.impl.thrift.ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, setNamespaceProperty_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.setNamespaceProperty(args.tinfo, args.credentials, args.ns, args.property, args.value,resultHandler);
++      }
++    }
++
++    public static class removeNamespaceProperty<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, removeNamespaceProperty_args, Void> {
++      public removeNamespaceProperty() {
++        super("removeNamespaceProperty");
++      }
++
++      public removeNamespaceProperty_args getEmptyArgsInstance() {
++        return new removeNamespaceProperty_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            removeNamespaceProperty_result result = new removeNamespaceProperty_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            removeNamespaceProperty_result result = new removeNamespaceProperty_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftTableOperationException) {
++                        result.tope = (org.apache.accumulo.core.client.impl.thrift.ThriftTableOperationException) e;
++                        result.setTopeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, removeNamespaceProperty_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.removeNamespaceProperty(args.tinfo, args.credentials, args.ns, args.property,resultHandler);
++      }
++    }
++
++    public static class setMasterGoalState<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, setMasterGoalState_args, Void> {
++      public setMasterGoalState() {
++        super("setMasterGoalState");
++      }
++
++      public setMasterGoalState_args getEmptyArgsInstance() {
++        return new setMasterGoalState_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            setMasterGoalState_result result = new setMasterGoalState_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            setMasterGoalState_result result = new setMasterGoalState_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, setMasterGoalState_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.setMasterGoalState(args.tinfo, args.credentials, args.state,resultHandler);
++      }
++    }
++
++    public static class shutdown<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, shutdown_args, Void> {
++      public shutdown() {
++        super("shutdown");
++      }
++
++      public shutdown_args getEmptyArgsInstance() {
++        return new shutdown_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            shutdown_result result = new shutdown_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            shutdown_result result = new shutdown_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, shutdown_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.shutdown(args.tinfo, args.credentials, args.stopTabletServers,resultHandler);
++      }
++    }
++
++    public static class shutdownTabletServer<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, shutdownTabletServer_args, Void> {
++      public shutdownTabletServer() {
++        super("shutdownTabletServer");
++      }
++
++      public shutdownTabletServer_args getEmptyArgsInstance() {
++        return new shutdownTabletServer_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            shutdownTabletServer_result result = new shutdownTabletServer_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            shutdownTabletServer_result result = new shutdownTabletServer_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, shutdownTabletServer_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.shutdownTabletServer(args.tinfo, args.credentials, args.tabletServer, args.force,resultHandler);
++      }
++    }
++
++    public static class setSystemProperty<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, setSystemProperty_args, Void> {
++      public setSystemProperty() {
++        super("setSystemProperty");
++      }
++
++      public setSystemProperty_args getEmptyArgsInstance() {
++        return new setSystemProperty_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            setSystemProperty_result result = new setSystemProperty_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            setSystemProperty_result result = new setSystemProperty_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, setSystemProperty_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.setSystemProperty(args.tinfo, args.credentials, args.property, args.value,resultHandler);
++      }
++    }
++
++    public static class removeSystemProperty<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, removeSystemProperty_args, Void> {
++      public removeSystemProperty() {
++        super("removeSystemProperty");
++      }
++
++      public removeSystemProperty_args getEmptyArgsInstance() {
++        return new removeSystemProperty_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            removeSystemProperty_result result = new removeSystemProperty_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            removeSystemProperty_result result = new removeSystemProperty_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, removeSystemProperty_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.removeSystemProperty(args.tinfo, args.credentials, args.property,resultHandler);
++      }
++    }
++
++    public static class getMasterStats<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getMasterStats_args, MasterMonitorInfo> {
++      public getMasterStats() {
++        super("getMasterStats");
++      }
++
++      public getMasterStats_args getEmptyArgsInstance() {
++        return new getMasterStats_args();
++      }
++
++      public AsyncMethodCallback<MasterMonitorInfo> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<MasterMonitorInfo>() { 
++          public void onComplete(MasterMonitorInfo o) {
++            getMasterStats_result result = new getMasterStats_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getMasterStats_result result = new getMasterStats_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getMasterStats_args args, org.apache.thrift.async.AsyncMethodCallback<MasterMonitorInfo> resultHandler) throws TException {
++        iface.getMasterStats(args.tinfo, args.credentials,resultHandler);
++      }
++    }
++
++    public static class reportSplitExtent<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, reportSplitExtent_args, Void> {
++      public reportSplitExtent() {
++        super("reportSplitExtent");
++      }
++
++      public reportSplitExtent_args getEmptyArgsInstance() {
++        return new reportSplitExtent_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++          }
++          public void onError(Exception e) {
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return true;
++      }
++
++      public void start(I iface, reportSplitExtent_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.reportSplitExtent(args.tinfo, args.credentials, args.serverName, args.split,resultHandler);
++      }
++    }
++
++    public static class reportTabletStatus<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, reportTabletStatus_args, Void> {
++      public reportTabletStatus() {
++        super("reportTabletStatus");
++      }
++
++      public reportTabletStatus_args getEmptyArgsInstance() {
++        return new reportTabletStatus_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++          }
++          public void onError(Exception e) {
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return true;
++      }
++
++      public void start(I iface, reportTabletStatus_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.reportTabletStatus(args.tinfo, args.credentials, args.serverName, args.status, args.tablet,resultHandler);
++      }
++    }
++
++  }
++
++  public static class initiateFlush_args implements org.apache.thrift.TBase<initiateFlush_args, initiateFlush_args._Fields>, java.io.Serializable, Cloneable, Comparable<initiateFlush_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("initiateFlush_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+@@ -1775,40 +2568,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(initiateFlush_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      initiateFlush_args typedOther = (initiateFlush_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -2023,7 +2816,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class initiateFlush_result implements org.apache.thrift.TBase<initiateFlush_result, initiateFlush_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class initiateFlush_result implements org.apache.thrift.TBase<initiateFlush_result, initiateFlush_result._Fields>, java.io.Serializable, Cloneable, Comparable<initiateFlush_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("initiateFlush_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.I64, (short)0);
+@@ -2341,40 +3134,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(initiateFlush_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      initiateFlush_result typedOther = (initiateFlush_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -2581,7 +3374,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class waitForFlush_args implements org.apache.thrift.TBase<waitForFlush_args, waitForFlush_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class waitForFlush_args implements org.apache.thrift.TBase<waitForFlush_args, waitForFlush_args._Fields>, java.io.Serializable, Cloneable, Comparable<waitForFlush_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("waitForFlush_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)5);
+@@ -3157,80 +3950,80 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(waitForFlush_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      waitForFlush_args typedOther = (waitForFlush_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetStartRow()).compareTo(typedOther.isSetStartRow());
++      lastComparison = Boolean.valueOf(isSetStartRow()).compareTo(other.isSetStartRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetStartRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startRow, typedOther.startRow);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startRow, other.startRow);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(typedOther.isSetEndRow());
++      lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(other.isSetEndRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetEndRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, typedOther.endRow);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, other.endRow);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetFlushID()).compareTo(typedOther.isSetFlushID());
++      lastComparison = Boolean.valueOf(isSetFlushID()).compareTo(other.isSetFlushID());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetFlushID()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.flushID, typedOther.flushID);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.flushID, other.flushID);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetMaxLoops()).compareTo(typedOther.isSetMaxLoops());
++      lastComparison = Boolean.valueOf(isSetMaxLoops()).compareTo(other.isSetMaxLoops());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetMaxLoops()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxLoops, typedOther.maxLoops);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxLoops, other.maxLoops);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -3559,7 +4352,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class waitForFlush_result implements org.apache.thrift.TBase<waitForFlush_result, waitForFlush_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class waitForFlush_result implements org.apache.thrift.TBase<waitForFlush_result, waitForFlush_result._Fields>, java.io.Serializable, Cloneable, Comparable<waitForFlush_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("waitForFlush_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -3816,30 +4609,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(waitForFlush_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      waitForFlush_result typedOther = (waitForFlush_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -4017,7 +4810,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class setTableProperty_args implements org.apache.thrift.TBase<setTableProperty_args, setTableProperty_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class setTableProperty_args implements org.apache.thrift.TBase<setTableProperty_args, setTableProperty_args._Fields>, java.io.Serializable, Cloneable, Comparable<setTableProperty_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("setTableProperty_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)5);
+@@ -4451,60 +5244,60 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(setTableProperty_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      setTableProperty_args typedOther = (setTableProperty_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(typedOther.isSetProperty());
++      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(other.isSetProperty());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetProperty()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, typedOther.property);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, other.property);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetValue()).compareTo(typedOther.isSetValue());
++      lastComparison = Boolean.valueOf(isSetValue()).compareTo(other.isSetValue());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetValue()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, typedOther.value);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, other.value);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -4781,7 +5574,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class setTableProperty_result implements org.apache.thrift.TBase<setTableProperty_result, setTableProperty_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class setTableProperty_result implements org.apache.thrift.TBase<setTableProperty_result, setTableProperty_result._Fields>, java.io.Serializable, Cloneable, Comparable<setTableProperty_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("setTableProperty_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -5038,30 +5831,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(setTableProperty_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      setTableProperty_result typedOther = (setTableProperty_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -5239,7 +6032,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class removeTableProperty_args implements org.apache.thrift.TBase<removeTableProperty_args, removeTableProperty_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class removeTableProperty_args implements org.apache.thrift.TBase<removeTableProperty_args, removeTableProperty_args._Fields>, java.io.Serializable, Cloneable, Comparable<removeTableProperty_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("removeTableProperty_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)4);
+@@ -5614,50 +6407,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(removeTableProperty_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      removeTableProperty_args typedOther = (removeTableProperty_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(typedOther.isSetProperty());
++      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(other.isSetProperty());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetProperty()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, typedOther.property);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, other.property);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -5903,7 +6696,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class removeTableProperty_result implements org.apache.thrift.TBase<removeTableProperty_result, removeTableProperty_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class removeTableProperty_result implements org.apache.thrift.TBase<removeTableProperty_result, removeTableProperty_result._Fields>, java.io.Serializable, Cloneable, Comparable<removeTableProperty_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("removeTableProperty_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -6160,30 +6953,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(removeTableProperty_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      removeTableProperty_result typedOther = (removeTableProperty_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -6361,7 +7154,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class setNamespaceProperty_args implements org.apache.thrift.TBase<setNamespaceProperty_args, setNamespaceProperty_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class setNamespaceProperty_args implements org.apache.thrift.TBase<setNamespaceProperty_args, setNamespaceProperty_args._Fields>, java.io.Serializable, Cloneable, Comparable<setNamespaceProperty_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("setNamespaceProperty_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)5);
+@@ -6795,60 +7588,60 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(setNamespaceProperty_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      setNamespaceProperty_args typedOther = (setNamespaceProperty_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNs()).compareTo(typedOther.isSetNs());
++      lastComparison = Boolean.valueOf(isSetNs()).compareTo(other.isSetNs());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNs()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ns, typedOther.ns);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ns, other.ns);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(typedOther.isSetProperty());
++      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(other.isSetProperty());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetProperty()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, typedOther.property);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, other.property);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetValue()).compareTo(typedOther.isSetValue());
++      lastComparison = Boolean.valueOf(isSetValue()).compareTo(other.isSetValue());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetValue()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, typedOther.value);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, other.value);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -7125,7 +7918,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class setNamespaceProperty_result implements org.apache.thrift.TBase<setNamespaceProperty_result, setNamespaceProperty_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class setNamespaceProperty_result implements org.apache.thrift.TBase<setNamespaceProperty_result, setNamespaceProperty_result._Fields>, java.io.Serializable, Cloneable, Comparable<setNamespaceProperty_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("setNamespaceProperty_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -7382,30 +8175,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(setNamespaceProperty_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      setNamespaceProperty_result typedOther = (setNamespaceProperty_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -7583,7 +8376,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class removeNamespaceProperty_args implements org.apache.thrift.TBase<removeNamespaceProperty_args, removeNamespaceProperty_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class removeNamespaceProperty_args implements org.apache.thrift.TBase<removeNamespaceProperty_args, removeNamespaceProperty_args._Fields>, java.io.Serializable, Cloneable, Comparable<removeNamespaceProperty_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("removeNamespaceProperty_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)4);
+@@ -7958,50 +8751,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(removeNamespaceProperty_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      removeNamespaceProperty_args typedOther = (removeNamespaceProperty_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNs()).compareTo(typedOther.isSetNs());
++      lastComparison = Boolean.valueOf(isSetNs()).compareTo(other.isSetNs());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNs()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ns, typedOther.ns);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ns, other.ns);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(typedOther.isSetProperty());
++      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(other.isSetProperty());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetProperty()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, typedOther.property);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, other.property);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -8247,7 +9040,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class removeNamespaceProperty_result implements org.apache.thrift.TBase<removeNamespaceProperty_result, removeNamespaceProperty_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class removeNamespaceProperty_result implements org.apache.thrift.TBase<removeNamespaceProperty_result, removeNamespaceProperty_result._Fields>, java.io.Serializable, Cloneable, Comparable<removeNamespaceProperty_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("removeNamespaceProperty_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -8504,30 +9297,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(removeNamespaceProperty_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      removeNamespaceProperty_result typedOther = (removeNamespaceProperty_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTope()).compareTo(typedOther.isSetTope());
++      lastComparison = Boolean.valueOf(isSetTope()).compareTo(other.isSetTope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, typedOther.tope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tope, other.tope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -8705,7 +9498,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class setMasterGoalState_args implements org.apache.thrift.TBase<setMasterGoalState_args, setMasterGoalState_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class setMasterGoalState_args implements org.apache.thrift.TBase<setMasterGoalState_args, setMasterGoalState_args._Fields>, java.io.Serializable, Cloneable, Comparable<setMasterGoalState_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("setMasterGoalState_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+@@ -9037,40 +9830,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(setMasterGoalState_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      setMasterGoalState_args typedOther = (setMasterGoalState_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetState()).compareTo(typedOther.isSetState());
++      lastComparison = Boolean.valueOf(isSetState()).compareTo(other.isSetState());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetState()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.state, typedOther.state);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.state, other.state);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -9285,7 +10078,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class setMasterGoalState_result implements org.apache.thrift.TBase<setMasterGoalState_result, setMasterGoalState_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class setMasterGoalState_result implements org.apache.thrift.TBase<setMasterGoalState_result, setMasterGoalState_result._Fields>, java.io.Serializable, Cloneable, Comparable<setMasterGoalState_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("setMasterGoalState_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -9483,20 +10276,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(setMasterGoalState_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      setMasterGoalState_result typedOther = (setMasterGoalState_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -9641,7 +10434,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class shutdown_args implements org.apache.thrift.TBase<shutdown_args, shutdown_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class shutdown_args implements org.apache.thrift.TBase<shutdown_args, shutdown_args._Fields>, java.io.Serializable, Cloneable, Comparable<shutdown_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("shutdown_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+@@ -9959,40 +10752,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(shutdown_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      shutdown_args typedOther = (shutdown_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetStopTabletServers()).compareTo(typedOther.isSetStopTabletServers());
++      lastComparison = Boolean.valueOf(isSetStopTabletServers()).compareTo(other.isSetStopTabletServers());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetStopTabletServers()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.stopTabletServers, typedOther.stopTabletServers);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.stopTabletServers, other.stopTabletServers);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -10203,7 +10996,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class shutdown_result implements org.apache.thrift.TBase<shutdown_result, shutdown_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class shutdown_result implements org.apache.thrift.TBase<shutdown_result, shutdown_result._Fields>, java.io.Serializable, Cloneable, Comparable<shutdown_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("shutdown_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -10401,20 +11194,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(shutdown_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      shutdown_result typedOther = (shutdown_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -10559,7 +11352,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class shutdownTabletServer_args implements org.apache.thrift.TBase<shutdownTabletServer_args, shutdownTabletServer_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class shutdownTabletServer_args implements org.apache.thrift.TBase<shutdownTabletServer_args, shutdownTabletServer_args._Fields>, java.io.Serializable, Cloneable, Comparable<shutdownTabletServer_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("shutdownTabletServer_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+@@ -10936,50 +11729,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(shutdownTabletServer_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      shutdownTabletServer_args typedOther = (shutdownTabletServer_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTabletServer()).compareTo(typedOther.isSetTabletServer());
++      lastComparison = Boolean.valueOf(isSetTabletServer()).compareTo(other.isSetTabletServer());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTabletServer()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tabletServer, typedOther.tabletServer);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tabletServer, other.tabletServer);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetForce()).compareTo(typedOther.isSetForce());
++      lastComparison = Boolean.valueOf(isSetForce()).compareTo(other.isSetForce());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetForce()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.force, typedOther.force);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.force, other.force);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -11221,7 +12014,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class shutdownTabletServer_result implements org.apache.thrift.TBase<shutdownTabletServer_result, shutdownTabletServer_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class shutdownTabletServer_result implements org.apache.thrift.TBase<shutdownTabletServer_result, shutdownTabletServer_result._Fields>, java.io.Serializable, Cloneable, Comparable<shutdownTabletServer_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("shutdownTabletServer_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -11419,20 +12212,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(shutdownTabletServer_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      shutdownTabletServer_result typedOther = (shutdownTabletServer_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -11577,7 +12370,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class setSystemProperty_args implements org.apache.thrift.TBase<setSystemProperty_args, setSystemProperty_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class setSystemProperty_args implements org.apache.thrift.TBase<setSystemProperty_args, setSystemProperty_args._Fields>, java.io.Serializable, Cloneable, Comparable<setSystemProperty_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("setSystemProperty_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)4);
+@@ -11952,50 +12745,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(setSystemProperty_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      setSystemProperty_args typedOther = (setSystemProperty_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(typedOther.isSetProperty());
++      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(other.isSetProperty());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetProperty()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, typedOther.property);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, other.property);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetValue()).compareTo(typedOther.isSetValue());
++      lastComparison = Boolean.valueOf(isSetValue()).compareTo(other.isSetValue());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetValue()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, typedOther.value);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, other.value);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -12241,7 +13034,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class setSystemProperty_result implements org.apache.thrift.TBase<setSystemProperty_result, setSystemProperty_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class setSystemProperty_result implements org.apache.thrift.TBase<setSystemProperty_result, setSystemProperty_result._Fields>, java.io.Serializable, Cloneable, Comparable<setSystemProperty_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("setSystemProperty_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -12439,20 +13232,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(setSystemProperty_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      setSystemProperty_result typedOther = (setSystemProperty_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -12597,7 +13390,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class removeSystemProperty_args implements org.apache.thrift.TBase<removeSystemProperty_args, removeSystemProperty_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class removeSystemProperty_args implements org.apache.thrift.TBase<removeSystemProperty_args, removeSystemProperty_args._Fields>, java.io.Serializable, Cloneable, Comparable<removeSystemProperty_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("removeSystemProperty_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+@@ -12913,40 +13706,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(removeSystemProperty_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      removeSystemProperty_args typedOther = (removeSystemProperty_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(typedOther.isSetProperty());
++      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(other.isSetProperty());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetProperty()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, typedOther.property);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, other.property);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -13161,7 +13954,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class removeSystemProperty_result implements org.apache.thrift.TBase<removeSystemProperty_result, removeSystemProperty_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class removeSystemProperty_result implements org.apache.thrift.TBase<removeSystemProperty_result, removeSystemProperty_result._Fields>, java.io.Serializable, Cloneable, Comparable<removeSystemProperty_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("removeSystemProperty_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -13359,20 +14152,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(removeSystemProperty_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      removeSystemProperty_result typedOther = (removeSystemProperty_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -13517,7 +14310,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getMasterStats_args implements org.apache.thrift.TBase<getMasterStats_args, getMasterStats_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getMasterStats_args implements org.apache.thrift.TBase<getMasterStats_args, getMasterStats_args._Fields>, java.io.Serializable, Cloneable, Comparable<getMasterStats_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getMasterStats_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+@@ -13774,30 +14567,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getMasterStats_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getMasterStats_args typedOther = (getMasterStats_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -13981,7 +14774,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getMasterStats_result implements org.apache.thrift.TBase<getMasterStats_result, getMasterStats_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getMasterStats_result implements org.apache.thrift.TBase<getMasterStats_result, getMasterStats_result._Fields>, java.io.Serializable, Cloneable, Comparable<getMasterStats_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getMasterStats_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRUCT, (short)0);
+@@ -14238,30 +15031,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getMasterStats_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getMasterStats_result typedOther = (getMasterStats_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -14442,7 +15235,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class reportSplitExtent_args implements org.apache.thrift.TBase<reportSplitExtent_args, reportSplitExtent_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class reportSplitExtent_args implements org.apache.thrift.TBase<reportSplitExtent_args, reportSplitExtent_args._Fields>, java.io.Serializable, Cloneable, Comparable<reportSplitExtent_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("reportSplitExtent_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)4);
+@@ -14817,50 +15610,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(reportSplitExtent_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      reportSplitExtent_args typedOther = (reportSplitExtent_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetServerName()).compareTo(typedOther.isSetServerName());
++      lastComparison = Boolean.valueOf(isSetServerName()).compareTo(other.isSetServerName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetServerName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.serverName, typedOther.serverName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.serverName, other.serverName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSplit()).compareTo(typedOther.isSetSplit());
++      lastComparison = Boolean.valueOf(isSetSplit()).compareTo(other.isSetSplit());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSplit()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.split, typedOther.split);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.split, other.split);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -15111,7 +15904,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class reportTabletStatus_args implements org.apache.thrift.TBase<reportTabletStatus_args, reportTabletStatus_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class reportTabletStatus_args implements org.apache.thrift.TBase<reportTabletStatus_args, reportTabletStatus_args._Fields>, java.io.Serializable, Cloneable, Comparable<reportTabletStatus_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("reportTabletStatus_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)5);
+@@ -15561,60 +16354,60 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(reportTabletStatus_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      reportTabletStatus_args typedOther = (reportTabletStatus_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetServerName()).compareTo(typedOther.isSetServerName());
++      lastComparison = Boolean.valueOf(isSetServerName()).compareTo(other.isSetServerName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetServerName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.serverName, typedOther.serverName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.serverName, other.serverName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetStatus()).compareTo(typedOther.isSetStatus());
++      lastComparison = Boolean.valueOf(isSetStatus()).compareTo(other.isSetStatus());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetStatus()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.status, typedOther.status);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.status, other.status);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTablet()).compareTo(typedOther.isSetTablet());
++      lastComparison = Boolean.valueOf(isSetTablet()).compareTo(other.isSetTablet());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTablet()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tablet, typedOther.tablet);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tablet, other.tablet);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+diff --git a/core/src/main/java/org/apache/accumulo/core/master/thrift/MasterGoalState.java b/core/src/main/java/org/apache/accumulo/core/master/thrift/MasterGoalState.java
+index 9b82965..0cf5f15 100644
+--- a/core/src/main/java/org/apache/accumulo/core/master/thrift/MasterGoalState.java
++++ b/core/src/main/java/org/apache/accumulo/core/master/thrift/MasterGoalState.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/core/src/main/java/org/apache/accumulo/core/master/thrift/MasterMonitorInfo.java b/core/src/main/java/org/apache/accumulo/core/master/thrift/MasterMonitorInfo.java
+index 94843c0..bd37d3e 100644
+--- a/core/src/main/java/org/apache/accumulo/core/master/thrift/MasterMonitorInfo.java
++++ b/core/src/main/java/org/apache/accumulo/core/master/thrift/MasterMonitorInfo.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class MasterMonitorInfo implements org.apache.thrift.TBase<MasterMonitorInfo, MasterMonitorInfo._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class MasterMonitorInfo implements org.apache.thrift.TBase<MasterMonitorInfo, MasterMonitorInfo._Fields>, java.io.Serializable, Cloneable, Comparable<MasterMonitorInfo> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("MasterMonitorInfo");
+ 
+   private static final org.apache.thrift.protocol.TField TABLE_MAP_FIELD_DESC = new org.apache.thrift.protocol.TField("tableMap", org.apache.thrift.protocol.TType.MAP, (short)1);
+@@ -232,7 +234,7 @@ import org.slf4j.LoggerFactory;
+   public MasterMonitorInfo(MasterMonitorInfo other) {
+     __isset_bitfield = other.__isset_bitfield;
+     if (other.isSetTableMap()) {
+-      Map<String,TableInfo> __this__tableMap = new HashMap<String,TableInfo>();
++      Map<String,TableInfo> __this__tableMap = new HashMap<String,TableInfo>(other.tableMap.size());
+       for (Map.Entry<String, TableInfo> other_element : other.tableMap.entrySet()) {
+ 
+         String other_element_key = other_element.getKey();
+@@ -247,25 +249,14 @@ import org.slf4j.LoggerFactory;
+       this.tableMap = __this__tableMap;
+     }
+     if (other.isSetTServerInfo()) {
+-      List<TabletServerStatus> __this__tServerInfo = new ArrayList<TabletServerStatus>();
++      List<TabletServerStatus> __this__tServerInfo = new ArrayList<TabletServerStatus>(other.tServerInfo.size());
+       for (TabletServerStatus other_element : other.tServerInfo) {
+         __this__tServerInfo.add(new TabletServerStatus(other_element));
+       }
+       this.tServerInfo = __this__tServerInfo;
+     }
+     if (other.isSetBadTServers()) {
+-      Map<String,Byte> __this__badTServers = new HashMap<String,Byte>();
+-      for (Map.Entry<String, Byte> other_element : other.badTServers.entrySet()) {
+-
+-        String other_element_key = other_element.getKey();
+-        Byte other_element_value = other_element.getValue();
+-
+-        String __this__badTServers_copy_key = other_element_key;
+-
+-        Byte __this__badTServers_copy_value = other_element_value;
+-
+-        __this__badTServers.put(__this__badTServers_copy_key, __this__badTServers_copy_value);
+-      }
++      Map<String,Byte> __this__badTServers = new HashMap<String,Byte>(other.badTServers);
+       this.badTServers = __this__badTServers;
+     }
+     if (other.isSetState()) {
+@@ -276,14 +267,11 @@ import org.slf4j.LoggerFactory;
+     }
+     this.unassignedTablets = other.unassignedTablets;
+     if (other.isSetServersShuttingDown()) {
+-      Set<String> __this__serversShuttingDown = new HashSet<String>();
+-      for (String other_element : other.serversShuttingDown) {
+-        __this__serversShuttingDown.add(other_element);
+-      }
++      Set<String> __this__serversShuttingDown = new HashSet<String>(other.serversShuttingDown);
+       this.serversShuttingDown = __this__serversShuttingDown;
+     }
+     if (other.isSetDeadTabletServers()) {
+-      List<DeadServer> __this__deadTabletServers = new ArrayList<DeadServer>();
++      List<DeadServer> __this__deadTabletServers = new ArrayList<DeadServer>(other.deadTabletServers.size());
+       for (DeadServer other_element : other.deadTabletServers) {
+         __this__deadTabletServers.add(new DeadServer(other_element));
+       }
+@@ -801,90 +789,90 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(MasterMonitorInfo other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    MasterMonitorInfo typedOther = (MasterMonitorInfo)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetTableMap()).compareTo(typedOther.isSetTableMap());
++    lastComparison = Boolean.valueOf(isSetTableMap()).compareTo(other.isSetTableMap());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTableMap()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableMap, typedOther.tableMap);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableMap, other.tableMap);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetTServerInfo()).compareTo(typedOther.isSetTServerInfo());
++    lastComparison = Boolean.valueOf(isSetTServerInfo()).compareTo(other.isSetTServerInfo());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTServerInfo()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tServerInfo, typedOther.tServerInfo);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tServerInfo, other.tServerInfo);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetBadTServers()).compareTo(typedOther.isSetBadTServers());
++    lastComparison = Boolean.valueOf(isSetBadTServers()).compareTo(other.isSetBadTServers());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetBadTServers()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.badTServers, typedOther.badTServers);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.badTServers, other.badTServers);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetState()).compareTo(typedOther.isSetState());
++    lastComparison = Boolean.valueOf(isSetState()).compareTo(other.isSetState());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetState()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.state, typedOther.state);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.state, other.state);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetGoalState()).compareTo(typedOther.isSetGoalState());
++    lastComparison = Boolean.valueOf(isSetGoalState()).compareTo(other.isSetGoalState());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetGoalState()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.goalState, typedOther.goalState);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.goalState, other.goalState);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetUnassignedTablets()).compareTo(typedOther.isSetUnassignedTablets());
++    lastComparison = Boolean.valueOf(isSetUnassignedTablets()).compareTo(other.isSetUnassignedTablets());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetUnassignedTablets()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.unassignedTablets, typedOther.unassignedTablets);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.unassignedTablets, other.unassignedTablets);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetServersShuttingDown()).compareTo(typedOther.isSetServersShuttingDown());
++    lastComparison = Boolean.valueOf(isSetServersShuttingDown()).compareTo(other.isSetServersShuttingDown());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetServersShuttingDown()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.serversShuttingDown, typedOther.serversShuttingDown);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.serversShuttingDown, other.serversShuttingDown);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetDeadTabletServers()).compareTo(typedOther.isSetDeadTabletServers());
++    lastComparison = Boolean.valueOf(isSetDeadTabletServers()).compareTo(other.isSetDeadTabletServers());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetDeadTabletServers()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.deadTabletServers, typedOther.deadTabletServers);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.deadTabletServers, other.deadTabletServers);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -1020,8 +1008,8 @@ import org.slf4j.LoggerFactory;
+                 struct.tableMap = new HashMap<String,TableInfo>(2*_map18.size);
+                 for (int _i19 = 0; _i19 < _map18.size; ++_i19)
+                 {
+-                  String _key20; // required
+-                  TableInfo _val21; // required
++                  String _key20;
++                  TableInfo _val21;
+                   _key20 = iprot.readString();
+                   _val21 = new TableInfo();
+                   _val21.read(iprot);
+@@ -1041,7 +1029,7 @@ import org.slf4j.LoggerFactory;
+                 struct.tServerInfo = new ArrayList<TabletServerStatus>(_list22.size);
+                 for (int _i23 = 0; _i23 < _list22.size; ++_i23)
+                 {
+-                  TabletServerStatus _elem24; // required
++                  TabletServerStatus _elem24;
+                   _elem24 = new TabletServerStatus();
+                   _elem24.read(iprot);
+                   struct.tServerInfo.add(_elem24);
+@@ -1060,8 +1048,8 @@ import org.slf4j.LoggerFactory;
+                 struct.badTServers = new HashMap<String,Byte>(2*_map25.size);
+                 for (int _i26 = 0; _i26 < _map25.size; ++_i26)
+                 {
+-                  String _key27; // required
+-                  byte _val28; // required
++                  String _key27;
++                  byte _val28;
+                   _key27 = iprot.readString();
+                   _val28 = iprot.readByte();
+                   struct.badTServers.put(_key27, _val28);
+@@ -1104,7 +1092,7 @@ import org.slf4j.LoggerFactory;
+                 struct.serversShuttingDown = new HashSet<String>(2*_set29.size);
+                 for (int _i30 = 0; _i30 < _set29.size; ++_i30)
+                 {
+-                  String _elem31; // required
++                  String _elem31;
+                   _elem31 = iprot.readString();
+                   struct.serversShuttingDown.add(_elem31);
+                 }
+@@ -1122,7 +1110,7 @@ import org.slf4j.LoggerFactory;
+                 struct.deadTabletServers = new ArrayList<DeadServer>(_list32.size);
+                 for (int _i33 = 0; _i33 < _list32.size; ++_i33)
+                 {
+-                  DeadServer _elem34; // required
++                  DeadServer _elem34;
+                   _elem34 = new DeadServer();
+                   _elem34.read(iprot);
+                   struct.deadTabletServers.add(_elem34);
+@@ -1335,8 +1323,8 @@ import org.slf4j.LoggerFactory;
+           struct.tableMap = new HashMap<String,TableInfo>(2*_map45.size);
+           for (int _i46 = 0; _i46 < _map45.size; ++_i46)
+           {
+-            String _key47; // required
+-            TableInfo _val48; // required
++            String _key47;
++            TableInfo _val48;
+             _key47 = iprot.readString();
+             _val48 = new TableInfo();
+             _val48.read(iprot);
+@@ -1351,7 +1339,7 @@ import org.slf4j.LoggerFactory;
+           struct.tServerInfo = new ArrayList<TabletServerStatus>(_list49.size);
+           for (int _i50 = 0; _i50 < _list49.size; ++_i50)
+           {
+-            TabletServerStatus _elem51; // required
++            TabletServerStatus _elem51;
+             _elem51 = new TabletServerStatus();
+             _elem51.read(iprot);
+             struct.tServerInfo.add(_elem51);
+@@ -1365,8 +1353,8 @@ import org.slf4j.LoggerFactory;
+           struct.badTServers = new HashMap<String,Byte>(2*_map52.size);
+           for (int _i53 = 0; _i53 < _map52.size; ++_i53)
+           {
+-            String _key54; // required
+-            byte _val55; // required
++            String _key54;
++            byte _val55;
+             _key54 = iprot.readString();
+             _val55 = iprot.readByte();
+             struct.badTServers.put(_key54, _val55);
+@@ -1392,7 +1380,7 @@ import org.slf4j.LoggerFactory;
+           struct.serversShuttingDown = new HashSet<String>(2*_set56.size);
+           for (int _i57 = 0; _i57 < _set56.size; ++_i57)
+           {
+-            String _elem58; // required
++            String _elem58;
+             _elem58 = iprot.readString();
+             struct.serversShuttingDown.add(_elem58);
+           }
+@@ -1405,7 +1393,7 @@ import org.slf4j.LoggerFactory;
+           struct.deadTabletServers = new ArrayList<DeadServer>(_list59.size);
+           for (int _i60 = 0; _i60 < _list59.size; ++_i60)
+           {
+-            DeadServer _elem61; // required
++            DeadServer _elem61;
+             _elem61 = new DeadServer();
+             _elem61.read(iprot);
+             struct.deadTabletServers.add(_elem61);
+diff --git a/core/src/main/java/org/apache/accumulo/core/master/thrift/MasterState.java b/core/src/main/java/org/apache/accumulo/core/master/thrift/MasterState.java
+index e6c33ca..f479fb5 100644
+--- a/core/src/main/java/org/apache/accumulo/core/master/thrift/MasterState.java
++++ b/core/src/main/java/org/apache/accumulo/core/master/thrift/MasterState.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/core/src/main/java/org/apache/accumulo/core/master/thrift/RecoveryException.java b/core/src/main/java/org/apache/accumulo/core/master/thrift/RecoveryException.java
+index 3a5a57e..afb7422 100644
+--- a/core/src/main/java/org/apache/accumulo/core/master/thrift/RecoveryException.java
++++ b/core/src/main/java/org/apache/accumulo/core/master/thrift/RecoveryException.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class RecoveryException extends TException implements org.apache.thrift.TBase<RecoveryException, RecoveryException._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class RecoveryException extends TException implements org.apache.thrift.TBase<RecoveryException, RecoveryException._Fields>, java.io.Serializable, Cloneable, Comparable<RecoveryException> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("RecoveryException");
+ 
+   private static final org.apache.thrift.protocol.TField WHY_FIELD_DESC = new org.apache.thrift.protocol.TField("why", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -244,20 +246,20 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(RecoveryException other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    RecoveryException typedOther = (RecoveryException)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetWhy()).compareTo(typedOther.isSetWhy());
++    lastComparison = Boolean.valueOf(isSetWhy()).compareTo(other.isSetWhy());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetWhy()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.why, typedOther.why);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.why, other.why);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/master/thrift/RecoveryStatus.java b/core/src/main/java/org/apache/accumulo/core/master/thrift/RecoveryStatus.java
+index 7c3a331..0d14d31 100644
+--- a/core/src/main/java/org/apache/accumulo/core/master/thrift/RecoveryStatus.java
++++ b/core/src/main/java/org/apache/accumulo/core/master/thrift/RecoveryStatus.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class RecoveryStatus implements org.apache.thrift.TBase<RecoveryStatus, RecoveryStatus._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class RecoveryStatus implements org.apache.thrift.TBase<RecoveryStatus, RecoveryStatus._Fields>, java.io.Serializable, Cloneable, Comparable<RecoveryStatus> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("RecoveryStatus");
+ 
+   private static final org.apache.thrift.protocol.TField NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("name", org.apache.thrift.protocol.TType.STRING, (short)2);
+@@ -364,40 +366,40 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(RecoveryStatus other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    RecoveryStatus typedOther = (RecoveryStatus)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetName()).compareTo(typedOther.isSetName());
++    lastComparison = Boolean.valueOf(isSetName()).compareTo(other.isSetName());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetName()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.name, typedOther.name);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.name, other.name);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetRuntime()).compareTo(typedOther.isSetRuntime());
++    lastComparison = Boolean.valueOf(isSetRuntime()).compareTo(other.isSetRuntime());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetRuntime()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.runtime, typedOther.runtime);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.runtime, other.runtime);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetProgress()).compareTo(typedOther.isSetProgress());
++    lastComparison = Boolean.valueOf(isSetProgress()).compareTo(other.isSetProgress());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetProgress()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.progress, typedOther.progress);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.progress, other.progress);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/master/thrift/TableInfo.java b/core/src/main/java/org/apache/accumulo/core/master/thrift/TableInfo.java
+index 1cdea9a..a40df23 100644
+--- a/core/src/main/java/org/apache/accumulo/core/master/thrift/TableInfo.java
++++ b/core/src/main/java/org/apache/accumulo/core/master/thrift/TableInfo.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TableInfo implements org.apache.thrift.TBase<TableInfo, TableInfo._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TableInfo implements org.apache.thrift.TBase<TableInfo, TableInfo._Fields>, java.io.Serializable, Cloneable, Comparable<TableInfo> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TableInfo");
+ 
+   private static final org.apache.thrift.protocol.TField RECS_FIELD_DESC = new org.apache.thrift.protocol.TField("recs", org.apache.thrift.protocol.TType.I64, (short)1);
+@@ -895,130 +897,130 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TableInfo other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TableInfo typedOther = (TableInfo)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetRecs()).compareTo(typedOther.isSetRecs());
++    lastComparison = Boolean.valueOf(isSetRecs()).compareTo(other.isSetRecs());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetRecs()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.recs, typedOther.recs);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.recs, other.recs);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetRecsInMemory()).compareTo(typedOther.isSetRecsInMemory());
++    lastComparison = Boolean.valueOf(isSetRecsInMemory()).compareTo(other.isSetRecsInMemory());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetRecsInMemory()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.recsInMemory, typedOther.recsInMemory);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.recsInMemory, other.recsInMemory);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetTablets()).compareTo(typedOther.isSetTablets());
++    lastComparison = Boolean.valueOf(isSetTablets()).compareTo(other.isSetTablets());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTablets()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tablets, typedOther.tablets);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tablets, other.tablets);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetOnlineTablets()).compareTo(typedOther.isSetOnlineTablets());
++    lastComparison = Boolean.valueOf(isSetOnlineTablets()).compareTo(other.isSetOnlineTablets());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetOnlineTablets()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.onlineTablets, typedOther.onlineTablets);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.onlineTablets, other.onlineTablets);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetIngestRate()).compareTo(typedOther.isSetIngestRate());
++    lastComparison = Boolean.valueOf(isSetIngestRate()).compareTo(other.isSetIngestRate());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIngestRate()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ingestRate, typedOther.ingestRate);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ingestRate, other.ingestRate);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetIngestByteRate()).compareTo(typedOther.isSetIngestByteRate());
++    lastComparison = Boolean.valueOf(isSetIngestByteRate()).compareTo(other.isSetIngestByteRate());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIngestByteRate()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ingestByteRate, typedOther.ingestByteRate);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ingestByteRate, other.ingestByteRate);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetQueryRate()).compareTo(typedOther.isSetQueryRate());
++    lastComparison = Boolean.valueOf(isSetQueryRate()).compareTo(other.isSetQueryRate());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetQueryRate()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queryRate, typedOther.queryRate);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queryRate, other.queryRate);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetQueryByteRate()).compareTo(typedOther.isSetQueryByteRate());
++    lastComparison = Boolean.valueOf(isSetQueryByteRate()).compareTo(other.isSetQueryByteRate());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetQueryByteRate()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queryByteRate, typedOther.queryByteRate);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queryByteRate, other.queryByteRate);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetMinors()).compareTo(typedOther.isSetMinors());
++    lastComparison = Boolean.valueOf(isSetMinors()).compareTo(other.isSetMinors());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMinors()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.minors, typedOther.minors);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.minors, other.minors);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetMajors()).compareTo(typedOther.isSetMajors());
++    lastComparison = Boolean.valueOf(isSetMajors()).compareTo(other.isSetMajors());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMajors()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.majors, typedOther.majors);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.majors, other.majors);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetScans()).compareTo(typedOther.isSetScans());
++    lastComparison = Boolean.valueOf(isSetScans()).compareTo(other.isSetScans());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetScans()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scans, typedOther.scans);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scans, other.scans);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetScanRate()).compareTo(typedOther.isSetScanRate());
++    lastComparison = Boolean.valueOf(isSetScanRate()).compareTo(other.isSetScanRate());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetScanRate()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanRate, typedOther.scanRate);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanRate, other.scanRate);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/master/thrift/TabletLoadState.java b/core/src/main/java/org/apache/accumulo/core/master/thrift/TabletLoadState.java
+index 27288e5..f951c72 100644
+--- a/core/src/main/java/org/apache/accumulo/core/master/thrift/TabletLoadState.java
++++ b/core/src/main/java/org/apache/accumulo/core/master/thrift/TabletLoadState.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/core/src/main/java/org/apache/accumulo/core/master/thrift/TabletServerStatus.java b/core/src/main/java/org/apache/accumulo/core/master/thrift/TabletServerStatus.java
+index a7e29d6..6348537 100644
+--- a/core/src/main/java/org/apache/accumulo/core/master/thrift/TabletServerStatus.java
++++ b/core/src/main/java/org/apache/accumulo/core/master/thrift/TabletServerStatus.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TabletServerStatus implements org.apache.thrift.TBase<TabletServerStatus, TabletServerStatus._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TabletServerStatus implements org.apache.thrift.TBase<TabletServerStatus, TabletServerStatus._Fields>, java.io.Serializable, Cloneable, Comparable<TabletServerStatus> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TabletServerStatus");
+ 
+   private static final org.apache.thrift.protocol.TField TABLE_MAP_FIELD_DESC = new org.apache.thrift.protocol.TField("tableMap", org.apache.thrift.protocol.TType.MAP, (short)1);
+@@ -253,7 +255,7 @@ import org.slf4j.LoggerFactory;
+   public TabletServerStatus(TabletServerStatus other) {
+     __isset_bitfield = other.__isset_bitfield;
+     if (other.isSetTableMap()) {
+-      Map<String,TableInfo> __this__tableMap = new HashMap<String,TableInfo>();
++      Map<String,TableInfo> __this__tableMap = new HashMap<String,TableInfo>(other.tableMap.size());
+       for (Map.Entry<String, TableInfo> other_element : other.tableMap.entrySet()) {
+ 
+         String other_element_key = other_element.getKey();
+@@ -279,7 +281,7 @@ import org.slf4j.LoggerFactory;
+     this.dataCacheHits = other.dataCacheHits;
+     this.dataCacheRequest = other.dataCacheRequest;
+     if (other.isSetLogSorts()) {
+-      List<RecoveryStatus> __this__logSorts = new ArrayList<RecoveryStatus>();
++      List<RecoveryStatus> __this__logSorts = new ArrayList<RecoveryStatus>(other.logSorts.size());
+       for (RecoveryStatus other_element : other.logSorts) {
+         __this__logSorts.add(new RecoveryStatus(other_element));
+       }
+@@ -881,120 +883,120 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TabletServerStatus other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TabletServerStatus typedOther = (TabletServerStatus)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetTableMap()).compareTo(typedOther.isSetTableMap());
++    lastComparison = Boolean.valueOf(isSetTableMap()).compareTo(other.isSetTableMap());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTableMap()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableMap, typedOther.tableMap);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableMap, other.tableMap);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetLastContact()).compareTo(typedOther.isSetLastContact());
++    lastComparison = Boolean.valueOf(isSetLastContact()).compareTo(other.isSetLastContact());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetLastContact()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lastContact, typedOther.lastContact);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lastContact, other.lastContact);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetName()).compareTo(typedOther.isSetName());
++    lastComparison = Boolean.valueOf(isSetName()).compareTo(other.isSetName());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetName()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.name, typedOther.name);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.name, other.name);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetOsLoad()).compareTo(typedOther.isSetOsLoad());
++    lastComparison = Boolean.valueOf(isSetOsLoad()).compareTo(other.isSetOsLoad());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetOsLoad()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.osLoad, typedOther.osLoad);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.osLoad, other.osLoad);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetHoldTime()).compareTo(typedOther.isSetHoldTime());
++    lastComparison = Boolean.valueOf(isSetHoldTime()).compareTo(other.isSetHoldTime());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetHoldTime()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.holdTime, typedOther.holdTime);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.holdTime, other.holdTime);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetLookups()).compareTo(typedOther.isSetLookups());
++    lastComparison = Boolean.valueOf(isSetLookups()).compareTo(other.isSetLookups());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetLookups()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lookups, typedOther.lookups);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lookups, other.lookups);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetIndexCacheHits()).compareTo(typedOther.isSetIndexCacheHits());
++    lastComparison = Boolean.valueOf(isSetIndexCacheHits()).compareTo(other.isSetIndexCacheHits());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIndexCacheHits()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.indexCacheHits, typedOther.indexCacheHits);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.indexCacheHits, other.indexCacheHits);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetIndexCacheRequest()).compareTo(typedOther.isSetIndexCacheRequest());
++    lastComparison = Boolean.valueOf(isSetIndexCacheRequest()).compareTo(other.isSetIndexCacheRequest());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIndexCacheRequest()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.indexCacheRequest, typedOther.indexCacheRequest);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.indexCacheRequest, other.indexCacheRequest);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetDataCacheHits()).compareTo(typedOther.isSetDataCacheHits());
++    lastComparison = Boolean.valueOf(isSetDataCacheHits()).compareTo(other.isSetDataCacheHits());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetDataCacheHits()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.dataCacheHits, typedOther.dataCacheHits);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.dataCacheHits, other.dataCacheHits);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetDataCacheRequest()).compareTo(typedOther.isSetDataCacheRequest());
++    lastComparison = Boolean.valueOf(isSetDataCacheRequest()).compareTo(other.isSetDataCacheRequest());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetDataCacheRequest()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.dataCacheRequest, typedOther.dataCacheRequest);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.dataCacheRequest, other.dataCacheRequest);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetLogSorts()).compareTo(typedOther.isSetLogSorts());
++    lastComparison = Boolean.valueOf(isSetLogSorts()).compareTo(other.isSetLogSorts());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetLogSorts()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.logSorts, typedOther.logSorts);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.logSorts, other.logSorts);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -1126,8 +1128,8 @@ import org.slf4j.LoggerFactory;
+                 struct.tableMap = new HashMap<String,TableInfo>(2*_map0.size);
+                 for (int _i1 = 0; _i1 < _map0.size; ++_i1)
+                 {
+-                  String _key2; // required
+-                  TableInfo _val3; // required
++                  String _key2;
++                  TableInfo _val3;
+                   _key2 = iprot.readString();
+                   _val3 = new TableInfo();
+                   _val3.read(iprot);
+@@ -1219,7 +1221,7 @@ import org.slf4j.LoggerFactory;
+                 struct.logSorts = new ArrayList<RecoveryStatus>(_list4.size);
+                 for (int _i5 = 0; _i5 < _list4.size; ++_i5)
+                 {
+-                  RecoveryStatus _elem6; // required
++                  RecoveryStatus _elem6;
+                   _elem6 = new RecoveryStatus();
+                   _elem6.read(iprot);
+                   struct.logSorts.add(_elem6);
+@@ -1410,8 +1412,8 @@ import org.slf4j.LoggerFactory;
+           struct.tableMap = new HashMap<String,TableInfo>(2*_map11.size);
+           for (int _i12 = 0; _i12 < _map11.size; ++_i12)
+           {
+-            String _key13; // required
+-            TableInfo _val14; // required
++            String _key13;
++            TableInfo _val14;
+             _key13 = iprot.readString();
+             _val14 = new TableInfo();
+             _val14.read(iprot);
+@@ -1462,7 +1464,7 @@ import org.slf4j.LoggerFactory;
+           struct.logSorts = new ArrayList<RecoveryStatus>(_list15.size);
+           for (int _i16 = 0; _i16 < _list15.size; ++_i16)
+           {
+-            RecoveryStatus _elem17; // required
++            RecoveryStatus _elem17;
+             _elem17 = new RecoveryStatus();
+             _elem17.read(iprot);
+             struct.logSorts.add(_elem17);
+diff --git a/core/src/main/java/org/apache/accumulo/core/master/thrift/TabletSplit.java b/core/src/main/java/org/apache/accumulo/core/master/thrift/TabletSplit.java
+index 6102792..2eb671c 100644
+--- a/core/src/main/java/org/apache/accumulo/core/master/thrift/TabletSplit.java
++++ b/core/src/main/java/org/apache/accumulo/core/master/thrift/TabletSplit.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TabletSplit implements org.apache.thrift.TBase<TabletSplit, TabletSplit._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TabletSplit implements org.apache.thrift.TBase<TabletSplit, TabletSplit._Fields>, java.io.Serializable, Cloneable, Comparable<TabletSplit> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TabletSplit");
+ 
+   private static final org.apache.thrift.protocol.TField OLD_TABLET_FIELD_DESC = new org.apache.thrift.protocol.TField("oldTablet", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -155,7 +157,7 @@ import org.slf4j.LoggerFactory;
+       this.oldTablet = new org.apache.accumulo.core.data.thrift.TKeyExtent(other.oldTablet);
+     }
+     if (other.isSetNewTablets()) {
+-      List<org.apache.accumulo.core.data.thrift.TKeyExtent> __this__newTablets = new ArrayList<org.apache.accumulo.core.data.thrift.TKeyExtent>();
++      List<org.apache.accumulo.core.data.thrift.TKeyExtent> __this__newTablets = new ArrayList<org.apache.accumulo.core.data.thrift.TKeyExtent>(other.newTablets.size());
+       for (org.apache.accumulo.core.data.thrift.TKeyExtent other_element : other.newTablets) {
+         __this__newTablets.add(new org.apache.accumulo.core.data.thrift.TKeyExtent(other_element));
+       }
+@@ -323,30 +325,30 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TabletSplit other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TabletSplit typedOther = (TabletSplit)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetOldTablet()).compareTo(typedOther.isSetOldTablet());
++    lastComparison = Boolean.valueOf(isSetOldTablet()).compareTo(other.isSetOldTablet());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetOldTablet()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.oldTablet, typedOther.oldTablet);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.oldTablet, other.oldTablet);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetNewTablets()).compareTo(typedOther.isSetNewTablets());
++    lastComparison = Boolean.valueOf(isSetNewTablets()).compareTo(other.isSetNewTablets());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetNewTablets()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.newTablets, typedOther.newTablets);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.newTablets, other.newTablets);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -448,7 +450,7 @@ import org.slf4j.LoggerFactory;
+                 struct.newTablets = new ArrayList<org.apache.accumulo.core.data.thrift.TKeyExtent>(_list62.size);
+                 for (int _i63 = 0; _i63 < _list62.size; ++_i63)
+                 {
+-                  org.apache.accumulo.core.data.thrift.TKeyExtent _elem64; // required
++                  org.apache.accumulo.core.data.thrift.TKeyExtent _elem64;
+                   _elem64 = new org.apache.accumulo.core.data.thrift.TKeyExtent();
+                   _elem64.read(iprot);
+                   struct.newTablets.add(_elem64);
+@@ -546,7 +548,7 @@ import org.slf4j.LoggerFactory;
+           struct.newTablets = new ArrayList<org.apache.accumulo.core.data.thrift.TKeyExtent>(_list67.size);
+           for (int _i68 = 0; _i68 < _list67.size; ++_i68)
+           {
+-            org.apache.accumulo.core.data.thrift.TKeyExtent _elem69; // required
++            org.apache.accumulo.core.data.thrift.TKeyExtent _elem69;
+             _elem69 = new org.apache.accumulo.core.data.thrift.TKeyExtent();
+             _elem69.read(iprot);
+             struct.newTablets.add(_elem69);
+diff --git a/core/src/main/java/org/apache/accumulo/core/security/thrift/TCredentials.java b/core/src/main/java/org/apache/accumulo/core/security/thrift/TCredentials.java
+index cdef4ca..8d3a3e2 100644
+--- a/core/src/main/java/org/apache/accumulo/core/security/thrift/TCredentials.java
++++ b/core/src/main/java/org/apache/accumulo/core/security/thrift/TCredentials.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TCredentials implements org.apache.thrift.TBase<TCredentials, TCredentials._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TCredentials implements org.apache.thrift.TBase<TCredentials, TCredentials._Fields>, java.io.Serializable, Cloneable, Comparable<TCredentials> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TCredentials");
+ 
+   private static final org.apache.thrift.protocol.TField PRINCIPAL_FIELD_DESC = new org.apache.thrift.protocol.TField("principal", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -432,50 +434,50 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TCredentials other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TCredentials typedOther = (TCredentials)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(typedOther.isSetPrincipal());
++    lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(other.isSetPrincipal());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetPrincipal()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, typedOther.principal);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, other.principal);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetTokenClassName()).compareTo(typedOther.isSetTokenClassName());
++    lastComparison = Boolean.valueOf(isSetTokenClassName()).compareTo(other.isSetTokenClassName());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTokenClassName()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tokenClassName, typedOther.tokenClassName);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tokenClassName, other.tokenClassName);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetToken()).compareTo(typedOther.isSetToken());
++    lastComparison = Boolean.valueOf(isSetToken()).compareTo(other.isSetToken());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetToken()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.token, typedOther.token);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.token, other.token);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetInstanceId()).compareTo(typedOther.isSetInstanceId());
++    lastComparison = Boolean.valueOf(isSetInstanceId()).compareTo(other.isSetInstanceId());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetInstanceId()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.instanceId, typedOther.instanceId);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.instanceId, other.instanceId);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ActionStats.java b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ActionStats.java
+index 50c325e..0cb5c08 100644
+--- a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ActionStats.java
++++ b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ActionStats.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class ActionStats implements org.apache.thrift.TBase<ActionStats, ActionStats._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class ActionStats implements org.apache.thrift.TBase<ActionStats, ActionStats._Fields>, java.io.Serializable, Cloneable, Comparable<ActionStats> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ActionStats");
+ 
+   private static final org.apache.thrift.protocol.TField STATUS_FIELD_DESC = new org.apache.thrift.protocol.TField("status", org.apache.thrift.protocol.TType.I32, (short)1);
+@@ -659,90 +661,90 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(ActionStats other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    ActionStats typedOther = (ActionStats)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetStatus()).compareTo(typedOther.isSetStatus());
++    lastComparison = Boolean.valueOf(isSetStatus()).compareTo(other.isSetStatus());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetStatus()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.status, typedOther.status);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.status, other.status);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetElapsed()).compareTo(typedOther.isSetElapsed());
++    lastComparison = Boolean.valueOf(isSetElapsed()).compareTo(other.isSetElapsed());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetElapsed()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.elapsed, typedOther.elapsed);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.elapsed, other.elapsed);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetNum()).compareTo(typedOther.isSetNum());
++    lastComparison = Boolean.valueOf(isSetNum()).compareTo(other.isSetNum());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetNum()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.num, typedOther.num);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.num, other.num);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetCount()).compareTo(typedOther.isSetCount());
++    lastComparison = Boolean.valueOf(isSetCount()).compareTo(other.isSetCount());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetCount()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.count, typedOther.count);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.count, other.count);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetSumDev()).compareTo(typedOther.isSetSumDev());
++    lastComparison = Boolean.valueOf(isSetSumDev()).compareTo(other.isSetSumDev());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetSumDev()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sumDev, typedOther.sumDev);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sumDev, other.sumDev);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetFail()).compareTo(typedOther.isSetFail());
++    lastComparison = Boolean.valueOf(isSetFail()).compareTo(other.isSetFail());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetFail()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.fail, typedOther.fail);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.fail, other.fail);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetQueueTime()).compareTo(typedOther.isSetQueueTime());
++    lastComparison = Boolean.valueOf(isSetQueueTime()).compareTo(other.isSetQueueTime());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetQueueTime()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queueTime, typedOther.queueTime);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queueTime, other.queueTime);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetQueueSumDev()).compareTo(typedOther.isSetQueueSumDev());
++    lastComparison = Boolean.valueOf(isSetQueueSumDev()).compareTo(other.isSetQueueSumDev());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetQueueSumDev()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queueSumDev, typedOther.queueSumDev);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queueSumDev, other.queueSumDev);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ActiveCompaction.java b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ActiveCompaction.java
+index 2509bd9..c2eddd1 100644
+--- a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ActiveCompaction.java
++++ b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ActiveCompaction.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class ActiveCompaction implements org.apache.thrift.TBase<ActiveCompaction, ActiveCompaction._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class ActiveCompaction implements org.apache.thrift.TBase<ActiveCompaction, ActiveCompaction._Fields>, java.io.Serializable, Cloneable, Comparable<ActiveCompaction> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ActiveCompaction");
+ 
+   private static final org.apache.thrift.protocol.TField EXTENT_FIELD_DESC = new org.apache.thrift.protocol.TField("extent", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -266,10 +268,7 @@ import org.slf4j.LoggerFactory;
+     }
+     this.age = other.age;
+     if (other.isSetInputFiles()) {
+-      List<String> __this__inputFiles = new ArrayList<String>();
+-      for (String other_element : other.inputFiles) {
+-        __this__inputFiles.add(other_element);
+-      }
++      List<String> __this__inputFiles = new ArrayList<String>(other.inputFiles);
+       this.inputFiles = __this__inputFiles;
+     }
+     if (other.isSetOutputFile()) {
+@@ -287,14 +286,14 @@ import org.slf4j.LoggerFactory;
+     this.entriesRead = other.entriesRead;
+     this.entriesWritten = other.entriesWritten;
+     if (other.isSetSsiList()) {
+-      List<org.apache.accumulo.core.data.thrift.IterInfo> __this__ssiList = new ArrayList<org.apache.accumulo.core.data.thrift.IterInfo>();
++      List<org.apache.accumulo.core.data.thrift.IterInfo> __this__ssiList = new ArrayList<org.apache.accumulo.core.data.thrift.IterInfo>(other.ssiList.size());
+       for (org.apache.accumulo.core.data.thrift.IterInfo other_element : other.ssiList) {
+         __this__ssiList.add(new org.apache.accumulo.core.data.thrift.IterInfo(other_element));
+       }
+       this.ssiList = __this__ssiList;
+     }
+     if (other.isSetSsio()) {
+-      Map<String,Map<String,String>> __this__ssio = new HashMap<String,Map<String,String>>();
++      Map<String,Map<String,String>> __this__ssio = new HashMap<String,Map<String,String>>(other.ssio.size());
+       for (Map.Entry<String, Map<String,String>> other_element : other.ssio.entrySet()) {
+ 
+         String other_element_key = other_element.getKey();
+@@ -302,18 +301,7 @@ import org.slf4j.LoggerFactory;
+ 
+         String __this__ssio_copy_key = other_element_key;
+ 
+-        Map<String,String> __this__ssio_copy_value = new HashMap<String,String>();
+-        for (Map.Entry<String, String> other_element_value_element : other_element_value.entrySet()) {
+-
+-          String other_element_value_element_key = other_element_value_element.getKey();
+-          String other_element_value_element_value = other_element_value_element.getValue();
+-
+-          String __this__ssio_copy_value_copy_key = other_element_value_element_key;
+-
+-          String __this__ssio_copy_value_copy_value = other_element_value_element_value;
+-
+-          __this__ssio_copy_value.put(__this__ssio_copy_value_copy_key, __this__ssio_copy_value_copy_value);
+-        }
++        Map<String,String> __this__ssio_copy_value = new HashMap<String,String>(other_element_value);
+ 
+         __this__ssio.put(__this__ssio_copy_key, __this__ssio_copy_value);
+       }
+@@ -946,120 +934,120 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(ActiveCompaction other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    ActiveCompaction typedOther = (ActiveCompaction)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetExtent()).compareTo(typedOther.isSetExtent());
++    lastComparison = Boolean.valueOf(isSetExtent()).compareTo(other.isSetExtent());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetExtent()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, typedOther.extent);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, other.extent);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetAge()).compareTo(typedOther.isSetAge());
++    lastComparison = Boolean.valueOf(isSetAge()).compareTo(other.isSetAge());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetAge()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.age, typedOther.age);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.age, other.age);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetInputFiles()).compareTo(typedOther.isSetInputFiles());
++    lastComparison = Boolean.valueOf(isSetInputFiles()).compareTo(other.isSetInputFiles());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetInputFiles()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.inputFiles, typedOther.inputFiles);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.inputFiles, other.inputFiles);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetOutputFile()).compareTo(typedOther.isSetOutputFile());
++    lastComparison = Boolean.valueOf(isSetOutputFile()).compareTo(other.isSetOutputFile());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetOutputFile()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.outputFile, typedOther.outputFile);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.outputFile, other.outputFile);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetType()).compareTo(typedOther.isSetType());
++    lastComparison = Boolean.valueOf(isSetType()).compareTo(other.isSetType());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetType()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.type, typedOther.type);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.type, other.type);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetReason()).compareTo(typedOther.isSetReason());
++    lastComparison = Boolean.valueOf(isSetReason()).compareTo(other.isSetReason());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetReason()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.reason, typedOther.reason);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.reason, other.reason);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetLocalityGroup()).compareTo(typedOther.isSetLocalityGroup());
++    lastComparison = Boolean.valueOf(isSetLocalityGroup()).compareTo(other.isSetLocalityGroup());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetLocalityGroup()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.localityGroup, typedOther.localityGroup);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.localityGroup, other.localityGroup);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetEntriesRead()).compareTo(typedOther.isSetEntriesRead());
++    lastComparison = Boolean.valueOf(isSetEntriesRead()).compareTo(other.isSetEntriesRead());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetEntriesRead()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.entriesRead, typedOther.entriesRead);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.entriesRead, other.entriesRead);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetEntriesWritten()).compareTo(typedOther.isSetEntriesWritten());
++    lastComparison = Boolean.valueOf(isSetEntriesWritten()).compareTo(other.isSetEntriesWritten());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetEntriesWritten()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.entriesWritten, typedOther.entriesWritten);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.entriesWritten, other.entriesWritten);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetSsiList()).compareTo(typedOther.isSetSsiList());
++    lastComparison = Boolean.valueOf(isSetSsiList()).compareTo(other.isSetSsiList());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetSsiList()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ssiList, typedOther.ssiList);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ssiList, other.ssiList);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetSsio()).compareTo(typedOther.isSetSsio());
++    lastComparison = Boolean.valueOf(isSetSsio()).compareTo(other.isSetSsio());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetSsio()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ssio, typedOther.ssio);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ssio, other.ssio);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -1231,7 +1219,7 @@ import org.slf4j.LoggerFactory;
+                 struct.inputFiles = new ArrayList<String>(_list52.size);
+                 for (int _i53 = 0; _i53 < _list52.size; ++_i53)
+                 {
+-                  String _elem54; // required
++                  String _elem54;
+                   _elem54 = iprot.readString();
+                   struct.inputFiles.add(_elem54);
+                 }
+@@ -1297,7 +1285,7 @@ import org.slf4j.LoggerFactory;
+                 struct.ssiList = new ArrayList<org.apache.accumulo.core.data.thrift.IterInfo>(_list55.size);
+                 for (int _i56 = 0; _i56 < _list55.size; ++_i56)
+                 {
+-                  org.apache.accumulo.core.data.thrift.IterInfo _elem57; // required
++                  org.apache.accumulo.core.data.thrift.IterInfo _elem57;
+                   _elem57 = new org.apache.accumulo.core.data.thrift.IterInfo();
+                   _elem57.read(iprot);
+                   struct.ssiList.add(_elem57);
+@@ -1316,16 +1304,16 @@ import org.slf4j.LoggerFactory;
+                 struct.ssio = new HashMap<String,Map<String,String>>(2*_map58.size);
+                 for (int _i59 = 0; _i59 < _map58.size; ++_i59)
+                 {
+-                  String _key60; // required
+-                  Map<String,String> _val61; // required
++                  String _key60;
++                  Map<String,String> _val61;
+                   _key60 = iprot.readString();
+                   {
+                     org.apache.thrift.protocol.TMap _map62 = iprot.readMapBegin();
+                     _val61 = new HashMap<String,String>(2*_map62.size);
+                     for (int _i63 = 0; _i63 < _map62.size; ++_i63)
+                     {
+-                      String _key64; // required
+-                      String _val65; // required
++                      String _key64;
++                      String _val65;
+                       _key64 = iprot.readString();
+                       _val65 = iprot.readString();
+                       _val61.put(_key64, _val65);
+@@ -1567,7 +1555,7 @@ import org.slf4j.LoggerFactory;
+           struct.inputFiles = new ArrayList<String>(_list74.size);
+           for (int _i75 = 0; _i75 < _list74.size; ++_i75)
+           {
+-            String _elem76; // required
++            String _elem76;
+             _elem76 = iprot.readString();
+             struct.inputFiles.add(_elem76);
+           }
+@@ -1604,7 +1592,7 @@ import org.slf4j.LoggerFactory;
+           struct.ssiList = new ArrayList<org.apache.accumulo.core.data.thrift.IterInfo>(_list77.size);
+           for (int _i78 = 0; _i78 < _list77.size; ++_i78)
+           {
+-            org.apache.accumulo.core.data.thrift.IterInfo _elem79; // required
++            org.apache.accumulo.core.data.thrift.IterInfo _elem79;
+             _elem79 = new org.apache.accumulo.core.data.thrift.IterInfo();
+             _elem79.read(iprot);
+             struct.ssiList.add(_elem79);
+@@ -1618,16 +1606,16 @@ import org.slf4j.LoggerFactory;
+           struct.ssio = new HashMap<String,Map<String,String>>(2*_map80.size);
+           for (int _i81 = 0; _i81 < _map80.size; ++_i81)
+           {
+-            String _key82; // required
+-            Map<String,String> _val83; // required
++            String _key82;
++            Map<String,String> _val83;
+             _key82 = iprot.readString();
+             {
+               org.apache.thrift.protocol.TMap _map84 = new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, iprot.readI32());
+               _val83 = new HashMap<String,String>(2*_map84.size);
+               for (int _i85 = 0; _i85 < _map84.size; ++_i85)
+               {
+-                String _key86; // required
+-                String _val87; // required
++                String _key86;
++                String _val87;
+                 _key86 = iprot.readString();
+                 _val87 = iprot.readString();
+                 _val83.put(_key86, _val87);
+diff --git a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ActiveScan.java b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ActiveScan.java
+index dc56b44..9b349ab 100644
+--- a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ActiveScan.java
++++ b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ActiveScan.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class ActiveScan implements org.apache.thrift.TBase<ActiveScan, ActiveScan._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class ActiveScan implements org.apache.thrift.TBase<ActiveScan, ActiveScan._Fields>, java.io.Serializable, Cloneable, Comparable<ActiveScan> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ActiveScan");
+ 
+   private static final org.apache.thrift.protocol.TField CLIENT_FIELD_DESC = new org.apache.thrift.protocol.TField("client", org.apache.thrift.protocol.TType.STRING, (short)2);
+@@ -290,21 +292,21 @@ import org.slf4j.LoggerFactory;
+       this.extent = new org.apache.accumulo.core.data.thrift.TKeyExtent(other.extent);
+     }
+     if (other.isSetColumns()) {
+-      List<org.apache.accumulo.core.data.thrift.TColumn> __this__columns = new ArrayList<org.apache.accumulo.core.data.thrift.TColumn>();
++      List<org.apache.accumulo.core.data.thrift.TColumn> __this__columns = new ArrayList<org.apache.accumulo.core.data.thrift.TColumn>(other.columns.size());
+       for (org.apache.accumulo.core.data.thrift.TColumn other_element : other.columns) {
+         __this__columns.add(new org.apache.accumulo.core.data.thrift.TColumn(other_element));
+       }
+       this.columns = __this__columns;
+     }
+     if (other.isSetSsiList()) {
+-      List<org.apache.accumulo.core.data.thrift.IterInfo> __this__ssiList = new ArrayList<org.apache.accumulo.core.data.thrift.IterInfo>();
++      List<org.apache.accumulo.core.data.thrift.IterInfo> __this__ssiList = new ArrayList<org.apache.accumulo.core.data.thrift.IterInfo>(other.ssiList.size());
+       for (org.apache.accumulo.core.data.thrift.IterInfo other_element : other.ssiList) {
+         __this__ssiList.add(new org.apache.accumulo.core.data.thrift.IterInfo(other_element));
+       }
+       this.ssiList = __this__ssiList;
+     }
+     if (other.isSetSsio()) {
+-      Map<String,Map<String,String>> __this__ssio = new HashMap<String,Map<String,String>>();
++      Map<String,Map<String,String>> __this__ssio = new HashMap<String,Map<String,String>>(other.ssio.size());
+       for (Map.Entry<String, Map<String,String>> other_element : other.ssio.entrySet()) {
+ 
+         String other_element_key = other_element.getKey();
+@@ -312,30 +314,14 @@ import org.slf4j.LoggerFactory;
+ 
+         String __this__ssio_copy_key = other_element_key;
+ 
+-        Map<String,String> __this__ssio_copy_value = new HashMap<String,String>();
+-        for (Map.Entry<String, String> other_element_value_element : other_element_value.entrySet()) {
+-
+-          String other_element_value_element_key = other_element_value_element.getKey();
+-          String other_element_value_element_value = other_element_value_element.getValue();
+-
+-          String __this__ssio_copy_value_copy_key = other_element_value_element_key;
+-
+-          String __this__ssio_copy_value_copy_value = other_element_value_element_value;
+-
+-          __this__ssio_copy_value.put(__this__ssio_copy_value_copy_key, __this__ssio_copy_value_copy_value);
+-        }
++        Map<String,String> __this__ssio_copy_value = new HashMap<String,String>(other_element_value);
+ 
+         __this__ssio.put(__this__ssio_copy_key, __this__ssio_copy_value);
+       }
+       this.ssio = __this__ssio;
+     }
+     if (other.isSetAuthorizations()) {
+-      List<ByteBuffer> __this__authorizations = new ArrayList<ByteBuffer>();
+-      for (ByteBuffer other_element : other.authorizations) {
+-        ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-        __this__authorizations.add(temp_binary_element);
+-      }
++      List<ByteBuffer> __this__authorizations = new ArrayList<ByteBuffer>(other.authorizations);
+       this.authorizations = __this__authorizations;
+     }
+   }
+@@ -1027,130 +1013,130 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(ActiveScan other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    ActiveScan typedOther = (ActiveScan)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetClient()).compareTo(typedOther.isSetClient());
++    lastComparison = Boolean.valueOf(isSetClient()).compareTo(other.isSetClient());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetClient()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.client, typedOther.client);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.client, other.client);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetUser()).compareTo(typedOther.isSetUser());
++    lastComparison = Boolean.valueOf(isSetUser()).compareTo(other.isSetUser());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetUser()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, typedOther.user);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, other.user);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetTableId()).compareTo(typedOther.isSetTableId());
++    lastComparison = Boolean.valueOf(isSetTableId()).compareTo(other.isSetTableId());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTableId()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableId, typedOther.tableId);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableId, other.tableId);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetAge()).compareTo(typedOther.isSetAge());
++    lastComparison = Boolean.valueOf(isSetAge()).compareTo(other.isSetAge());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetAge()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.age, typedOther.age);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.age, other.age);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetIdleTime()).compareTo(typedOther.isSetIdleTime());
++    lastComparison = Boolean.valueOf(isSetIdleTime()).compareTo(other.isSetIdleTime());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIdleTime()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.idleTime, typedOther.idleTime);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.idleTime, other.idleTime);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetType()).compareTo(typedOther.isSetType());
++    lastComparison = Boolean.valueOf(isSetType()).compareTo(other.isSetType());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetType()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.type, typedOther.type);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.type, other.type);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetState()).compareTo(typedOther.isSetState());
++    lastComparison = Boolean.valueOf(isSetState()).compareTo(other.isSetState());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetState()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.state, typedOther.state);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.state, other.state);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetExtent()).compareTo(typedOther.isSetExtent());
++    lastComparison = Boolean.valueOf(isSetExtent()).compareTo(other.isSetExtent());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetExtent()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, typedOther.extent);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, other.extent);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColumns()).compareTo(typedOther.isSetColumns());
++    lastComparison = Boolean.valueOf(isSetColumns()).compareTo(other.isSetColumns());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColumns()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columns, typedOther.columns);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columns, other.columns);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetSsiList()).compareTo(typedOther.isSetSsiList());
++    lastComparison = Boolean.valueOf(isSetSsiList()).compareTo(other.isSetSsiList());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetSsiList()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ssiList, typedOther.ssiList);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ssiList, other.ssiList);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetSsio()).compareTo(typedOther.isSetSsio());
++    lastComparison = Boolean.valueOf(isSetSsio()).compareTo(other.isSetSsio());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetSsio()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ssio, typedOther.ssio);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ssio, other.ssio);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(typedOther.isSetAuthorizations());
++    lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(other.isSetAuthorizations());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetAuthorizations()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, typedOther.authorizations);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, other.authorizations);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -1382,7 +1368,7 @@ import org.slf4j.LoggerFactory;
+                 struct.columns = new ArrayList<org.apache.accumulo.core.data.thrift.TColumn>(_list8.size);
+                 for (int _i9 = 0; _i9 < _list8.size; ++_i9)
+                 {
+-                  org.apache.accumulo.core.data.thrift.TColumn _elem10; // required
++                  org.apache.accumulo.core.data.thrift.TColumn _elem10;
+                   _elem10 = new org.apache.accumulo.core.data.thrift.TColumn();
+                   _elem10.read(iprot);
+                   struct.columns.add(_elem10);
+@@ -1401,7 +1387,7 @@ import org.slf4j.LoggerFactory;
+                 struct.ssiList = new ArrayList<org.apache.accumulo.core.data.thrift.IterInfo>(_list11.size);
+                 for (int _i12 = 0; _i12 < _list11.size; ++_i12)
+                 {
+-                  org.apache.accumulo.core.data.thrift.IterInfo _elem13; // required
++                  org.apache.accumulo.core.data.thrift.IterInfo _elem13;
+                   _elem13 = new org.apache.accumulo.core.data.thrift.IterInfo();
+                   _elem13.read(iprot);
+                   struct.ssiList.add(_elem13);
+@@ -1420,16 +1406,16 @@ import org.slf4j.LoggerFactory;
+                 struct.ssio = new HashMap<String,Map<String,String>>(2*_map14.size);
+                 for (int _i15 = 0; _i15 < _map14.size; ++_i15)
+                 {
+-                  String _key16; // required
+-                  Map<String,String> _val17; // required
++                  String _key16;
++                  Map<String,String> _val17;
+                   _key16 = iprot.readString();
+                   {
+                     org.apache.thrift.protocol.TMap _map18 = iprot.readMapBegin();
+                     _val17 = new HashMap<String,String>(2*_map18.size);
+                     for (int _i19 = 0; _i19 < _map18.size; ++_i19)
+                     {
+-                      String _key20; // required
+-                      String _val21; // required
++                      String _key20;
++                      String _val21;
+                       _key20 = iprot.readString();
+                       _val21 = iprot.readString();
+                       _val17.put(_key20, _val21);
+@@ -1452,7 +1438,7 @@ import org.slf4j.LoggerFactory;
+                 struct.authorizations = new ArrayList<ByteBuffer>(_list22.size);
+                 for (int _i23 = 0; _i23 < _list22.size; ++_i23)
+                 {
+-                  ByteBuffer _elem24; // required
++                  ByteBuffer _elem24;
+                   _elem24 = iprot.readBinary();
+                   struct.authorizations.add(_elem24);
+                 }
+@@ -1739,7 +1725,7 @@ import org.slf4j.LoggerFactory;
+           struct.columns = new ArrayList<org.apache.accumulo.core.data.thrift.TColumn>(_list35.size);
+           for (int _i36 = 0; _i36 < _list35.size; ++_i36)
+           {
+-            org.apache.accumulo.core.data.thrift.TColumn _elem37; // required
++            org.apache.accumulo.core.data.thrift.TColumn _elem37;
+             _elem37 = new org.apache.accumulo.core.data.thrift.TColumn();
+             _elem37.read(iprot);
+             struct.columns.add(_elem37);
+@@ -1753,7 +1739,7 @@ import org.slf4j.LoggerFactory;
+           struct.ssiList = new ArrayList<org.apache.accumulo.core.data.thrift.IterInfo>(_list38.size);
+           for (int _i39 = 0; _i39 < _list38.size; ++_i39)
+           {
+-            org.apache.accumulo.core.data.thrift.IterInfo _elem40; // required
++            org.apache.accumulo.core.data.thrift.IterInfo _elem40;
+             _elem40 = new org.apache.accumulo.core.data.thrift.IterInfo();
+             _elem40.read(iprot);
+             struct.ssiList.add(_elem40);
+@@ -1767,16 +1753,16 @@ import org.slf4j.LoggerFactory;
+           struct.ssio = new HashMap<String,Map<String,String>>(2*_map41.size);
+           for (int _i42 = 0; _i42 < _map41.size; ++_i42)
+           {
+-            String _key43; // required
+-            Map<String,String> _val44; // required
++            String _key43;
++            Map<String,String> _val44;
+             _key43 = iprot.readString();
+             {
+               org.apache.thrift.protocol.TMap _map45 = new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, iprot.readI32());
+               _val44 = new HashMap<String,String>(2*_map45.size);
+               for (int _i46 = 0; _i46 < _map45.size; ++_i46)
+               {
+-                String _key47; // required
+-                String _val48; // required
++                String _key47;
++                String _val48;
+                 _key47 = iprot.readString();
+                 _val48 = iprot.readString();
+                 _val44.put(_key47, _val48);
+@@ -1793,7 +1779,7 @@ import org.slf4j.LoggerFactory;
+           struct.authorizations = new ArrayList<ByteBuffer>(_list49.size);
+           for (int _i50 = 0; _i50 < _list49.size; ++_i50)
+           {
+-            ByteBuffer _elem51; // required
++            ByteBuffer _elem51;
+             _elem51 = iprot.readBinary();
+             struct.authorizations.add(_elem51);
+           }
+diff --git a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/CompactionReason.java b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/CompactionReason.java
+index d8d3d6b..36cce96 100644
+--- a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/CompactionReason.java
++++ b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/CompactionReason.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/CompactionType.java b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/CompactionType.java
+index 8ad54fc..b4fdf68 100644
+--- a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/CompactionType.java
++++ b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/CompactionType.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ConstraintViolationException.java b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ConstraintViolationException.java
+index 98f6642..9515903 100644
+--- a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ConstraintViolationException.java
++++ b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ConstraintViolationException.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class ConstraintViolationException extends TException implements org.apache.thrift.TBase<ConstraintViolationException, ConstraintViolationException._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class ConstraintViolationException extends TException implements org.apache.thrift.TBase<ConstraintViolationException, ConstraintViolationException._Fields>, java.io.Serializable, Cloneable, Comparable<ConstraintViolationException> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ConstraintViolationException");
+ 
+   private static final org.apache.thrift.protocol.TField VIOLATION_SUMMARIES_FIELD_DESC = new org.apache.thrift.protocol.TField("violationSummaries", org.apache.thrift.protocol.TType.LIST, (short)1);
+@@ -143,7 +145,7 @@ import org.slf4j.LoggerFactory;
+    */
+   public ConstraintViolationException(ConstraintViolationException other) {
+     if (other.isSetViolationSummaries()) {
+-      List<org.apache.accumulo.core.data.thrift.TConstraintViolationSummary> __this__violationSummaries = new ArrayList<org.apache.accumulo.core.data.thrift.TConstraintViolationSummary>();
++      List<org.apache.accumulo.core.data.thrift.TConstraintViolationSummary> __this__violationSummaries = new ArrayList<org.apache.accumulo.core.data.thrift.TConstraintViolationSummary>(other.violationSummaries.size());
+       for (org.apache.accumulo.core.data.thrift.TConstraintViolationSummary other_element : other.violationSummaries) {
+         __this__violationSummaries.add(new org.apache.accumulo.core.data.thrift.TConstraintViolationSummary(other_element));
+       }
+@@ -264,20 +266,20 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(ConstraintViolationException other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    ConstraintViolationException typedOther = (ConstraintViolationException)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetViolationSummaries()).compareTo(typedOther.isSetViolationSummaries());
++    lastComparison = Boolean.valueOf(isSetViolationSummaries()).compareTo(other.isSetViolationSummaries());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetViolationSummaries()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.violationSummaries, typedOther.violationSummaries);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.violationSummaries, other.violationSummaries);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -359,7 +361,7 @@ import org.slf4j.LoggerFactory;
+                 struct.violationSummaries = new ArrayList<org.apache.accumulo.core.data.thrift.TConstraintViolationSummary>(_list0.size);
+                 for (int _i1 = 0; _i1 < _list0.size; ++_i1)
+                 {
+-                  org.apache.accumulo.core.data.thrift.TConstraintViolationSummary _elem2; // required
++                  org.apache.accumulo.core.data.thrift.TConstraintViolationSummary _elem2;
+                   _elem2 = new org.apache.accumulo.core.data.thrift.TConstraintViolationSummary();
+                   _elem2.read(iprot);
+                   struct.violationSummaries.add(_elem2);
+@@ -441,7 +443,7 @@ import org.slf4j.LoggerFactory;
+           struct.violationSummaries = new ArrayList<org.apache.accumulo.core.data.thrift.TConstraintViolationSummary>(_list5.size);
+           for (int _i6 = 0; _i6 < _list5.size; ++_i6)
+           {
+-            org.apache.accumulo.core.data.thrift.TConstraintViolationSummary _elem7; // required
++            org.apache.accumulo.core.data.thrift.TConstraintViolationSummary _elem7;
+             _elem7 = new org.apache.accumulo.core.data.thrift.TConstraintViolationSummary();
+             _elem7.read(iprot);
+             struct.violationSummaries.add(_elem7);
+diff --git a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/IteratorConfig.java b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/IteratorConfig.java
+index 03722be..1a05071 100644
+--- a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/IteratorConfig.java
++++ b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/IteratorConfig.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class IteratorConfig implements org.apache.thrift.TBase<IteratorConfig, IteratorConfig._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class IteratorConfig implements org.apache.thrift.TBase<IteratorConfig, IteratorConfig._Fields>, java.io.Serializable, Cloneable, Comparable<IteratorConfig> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("IteratorConfig");
+ 
+   private static final org.apache.thrift.protocol.TField ITERATORS_FIELD_DESC = new org.apache.thrift.protocol.TField("iterators", org.apache.thrift.protocol.TType.LIST, (short)1);
+@@ -143,7 +145,7 @@ import org.slf4j.LoggerFactory;
+    */
+   public IteratorConfig(IteratorConfig other) {
+     if (other.isSetIterators()) {
+-      List<TIteratorSetting> __this__iterators = new ArrayList<TIteratorSetting>();
++      List<TIteratorSetting> __this__iterators = new ArrayList<TIteratorSetting>(other.iterators.size());
+       for (TIteratorSetting other_element : other.iterators) {
+         __this__iterators.add(new TIteratorSetting(other_element));
+       }
+@@ -264,20 +266,20 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(IteratorConfig other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    IteratorConfig typedOther = (IteratorConfig)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetIterators()).compareTo(typedOther.isSetIterators());
++    lastComparison = Boolean.valueOf(isSetIterators()).compareTo(other.isSetIterators());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIterators()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterators, typedOther.iterators);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterators, other.iterators);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -359,7 +361,7 @@ import org.slf4j.LoggerFactory;
+                 struct.iterators = new ArrayList<TIteratorSetting>(_list98.size);
+                 for (int _i99 = 0; _i99 < _list98.size; ++_i99)
+                 {
+-                  TIteratorSetting _elem100; // required
++                  TIteratorSetting _elem100;
+                   _elem100 = new TIteratorSetting();
+                   _elem100.read(iprot);
+                   struct.iterators.add(_elem100);
+@@ -441,7 +443,7 @@ import org.slf4j.LoggerFactory;
+           struct.iterators = new ArrayList<TIteratorSetting>(_list103.size);
+           for (int _i104 = 0; _i104 < _list103.size; ++_i104)
+           {
+-            TIteratorSetting _elem105; // required
++            TIteratorSetting _elem105;
+             _elem105 = new TIteratorSetting();
+             _elem105.read(iprot);
+             struct.iterators.add(_elem105);
+diff --git a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/NoSuchScanIDException.java b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/NoSuchScanIDException.java
+index b840129..79f664f 100644
+--- a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/NoSuchScanIDException.java
++++ b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/NoSuchScanIDException.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class NoSuchScanIDException extends TException implements org.apache.thrift.TBase<NoSuchScanIDException, NoSuchScanIDException._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class NoSuchScanIDException extends TException implements org.apache.thrift.TBase<NoSuchScanIDException, NoSuchScanIDException._Fields>, java.io.Serializable, Cloneable, Comparable<NoSuchScanIDException> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("NoSuchScanIDException");
+ 
+ 
+@@ -179,13 +181,13 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(NoSuchScanIDException other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    NoSuchScanIDException typedOther = (NoSuchScanIDException)other;
+ 
+     return 0;
+   }
+diff --git a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/NotServingTabletException.java b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/NotServingTabletException.java
+index fa03414..c43b5c0 100644
+--- a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/NotServingTabletException.java
++++ b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/NotServingTabletException.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class NotServingTabletException extends TException implements org.apache.thrift.TBase<NotServingTabletException, NotServingTabletException._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class NotServingTabletException extends TException implements org.apache.thrift.TBase<NotServingTabletException, NotServingTabletException._Fields>, java.io.Serializable, Cloneable, Comparable<NotServingTabletException> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("NotServingTabletException");
+ 
+   private static final org.apache.thrift.protocol.TField EXTENT_FIELD_DESC = new org.apache.thrift.protocol.TField("extent", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -244,20 +246,20 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(NotServingTabletException other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    NotServingTabletException typedOther = (NotServingTabletException)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetExtent()).compareTo(typedOther.isSetExtent());
++    lastComparison = Boolean.valueOf(isSetExtent()).compareTo(other.isSetExtent());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetExtent()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, typedOther.extent);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, other.extent);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ScanState.java b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ScanState.java
+index dd30c9a..c676599 100644
+--- a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ScanState.java
++++ b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ScanState.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ScanType.java b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ScanType.java
+index a5e06ac..cb333a5 100644
+--- a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ScanType.java
++++ b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/ScanType.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/TIteratorSetting.java b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/TIteratorSetting.java
+index a23d9bb..f457311 100644
+--- a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/TIteratorSetting.java
++++ b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/TIteratorSetting.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TIteratorSetting implements org.apache.thrift.TBase<TIteratorSetting, TIteratorSetting._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TIteratorSetting implements org.apache.thrift.TBase<TIteratorSetting, TIteratorSetting._Fields>, java.io.Serializable, Cloneable, Comparable<TIteratorSetting> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TIteratorSetting");
+ 
+   private static final org.apache.thrift.protocol.TField PRIORITY_FIELD_DESC = new org.apache.thrift.protocol.TField("priority", org.apache.thrift.protocol.TType.I32, (short)1);
+@@ -182,18 +184,7 @@ import org.slf4j.LoggerFactory;
+       this.iteratorClass = other.iteratorClass;
+     }
+     if (other.isSetProperties()) {
+-      Map<String,String> __this__properties = new HashMap<String,String>();
+-      for (Map.Entry<String, String> other_element : other.properties.entrySet()) {
+-
+-        String other_element_key = other_element.getKey();
+-        String other_element_value = other_element.getValue();
+-
+-        String __this__properties_copy_key = other_element_key;
+-
+-        String __this__properties_copy_value = other_element_value;
+-
+-        __this__properties.put(__this__properties_copy_key, __this__properties_copy_value);
+-      }
++      Map<String,String> __this__properties = new HashMap<String,String>(other.properties);
+       this.properties = __this__properties;
+     }
+   }
+@@ -448,50 +439,50 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TIteratorSetting other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TIteratorSetting typedOther = (TIteratorSetting)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetPriority()).compareTo(typedOther.isSetPriority());
++    lastComparison = Boolean.valueOf(isSetPriority()).compareTo(other.isSetPriority());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetPriority()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.priority, typedOther.priority);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.priority, other.priority);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetName()).compareTo(typedOther.isSetName());
++    lastComparison = Boolean.valueOf(isSetName()).compareTo(other.isSetName());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetName()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.name, typedOther.name);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.name, other.name);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetIteratorClass()).compareTo(typedOther.isSetIteratorClass());
++    lastComparison = Boolean.valueOf(isSetIteratorClass()).compareTo(other.isSetIteratorClass());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIteratorClass()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iteratorClass, typedOther.iteratorClass);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iteratorClass, other.iteratorClass);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetProperties()).compareTo(typedOther.isSetProperties());
++    lastComparison = Boolean.valueOf(isSetProperties()).compareTo(other.isSetProperties());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetProperties()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.properties, typedOther.properties);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.properties, other.properties);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -619,8 +610,8 @@ import org.slf4j.LoggerFactory;
+                 struct.properties = new HashMap<String,String>(2*_map88.size);
+                 for (int _i89 = 0; _i89 < _map88.size; ++_i89)
+                 {
+-                  String _key90; // required
+-                  String _val91; // required
++                  String _key90;
++                  String _val91;
+                   _key90 = iprot.readString();
+                   _val91 = iprot.readString();
+                   struct.properties.put(_key90, _val91);
+@@ -747,8 +738,8 @@ import org.slf4j.LoggerFactory;
+           struct.properties = new HashMap<String,String>(2*_map94.size);
+           for (int _i95 = 0; _i95 < _map94.size; ++_i95)
+           {
+-            String _key96; // required
+-            String _val97; // required
++            String _key96;
++            String _val97;
+             _key96 = iprot.readString();
+             _val97 = iprot.readString();
+             struct.properties.put(_key96, _val97);
+diff --git a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/TabletClientService.java b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/TabletClientService.java
+index d02b5da..2ba7674 100644
+--- a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/TabletClientService.java
++++ b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/TabletClientService.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -114,65 +116,65 @@ import org.slf4j.LoggerFactory;
+ 
+   public interface AsyncIface extends org.apache.accumulo.core.client.impl.thrift.ClientService .AsyncIface {
+ 
+-    public void startScan(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.accumulo.core.data.thrift.TRange range, List<org.apache.accumulo.core.data.thrift.TColumn> columns, int batchSize, List<org.apache.accumulo.core.data.thrift.IterInfo> ssiList, Map<String,Map<String,String>> ssio, List<ByteBuffer> authorizations, boolean waitForWrites, boolean isolated, long readaheadThreshold, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.startScan_call> resultHandler) throws org.apache.thrift.TException;
++    public void startScan(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.accumulo.core.data.thrift.TRange range, List<org.apache.accumulo.core.data.thrift.TColumn> columns, int batchSize, List<org.apache.accumulo.core.data.thrift.IterInfo> ssiList, Map<String,Map<String,String>> ssio, List<ByteBuffer> authorizations, boolean waitForWrites, boolean isolated, long readaheadThreshold, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void continueScan(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.continueScan_call> resultHandler) throws org.apache.thrift.TException;
++    public void continueScan(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void closeScan(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.closeScan_call> resultHandler) throws org.apache.thrift.TException;
++    public void closeScan(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void startMultiScan(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TRange>> batch, List<org.apache.accumulo.core.data.thrift.TColumn> columns, List<org.apache.accumulo.core.data.thrift.IterInfo> ssiList, Map<String,Map<String,String>> ssio, List<ByteBuffer> authorizations, boolean waitForWrites, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.startMultiScan_call> resultHandler) throws org.apache.thrift.TException;
++    public void startMultiScan(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TRange>> batch, List<org.apache.accumulo.core.data.thrift.TColumn> columns, List<org.apache.accumulo.core.data.thrift.IterInfo> ssiList, Map<String,Map<String,String>> ssio, List<ByteBuffer> authorizations, boolean waitForWrites, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void continueMultiScan(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.continueMultiScan_call> resultHandler) throws org.apache.thrift.TException;
++    public void continueMultiScan(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void closeMultiScan(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.closeMultiScan_call> resultHandler) throws org.apache.thrift.TException;
++    public void closeMultiScan(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void startUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.startUpdate_call> resultHandler) throws org.apache.thrift.TException;
++    public void startUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void applyUpdates(org.apache.accumulo.trace.thrift.TInfo tinfo, long updateID, org.apache.accumulo.core.data.thrift.TKeyExtent keyExtent, List<org.apache.accumulo.core.data.thrift.TMutation> mutations, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.applyUpdates_call> resultHandler) throws org.apache.thrift.TException;
++    public void applyUpdates(org.apache.accumulo.trace.thrift.TInfo tinfo, long updateID, org.apache.accumulo.core.data.thrift.TKeyExtent keyExtent, List<org.apache.accumulo.core.data.thrift.TMutation> mutations, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void closeUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, long updateID, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.closeUpdate_call> resultHandler) throws org.apache.thrift.TException;
++    public void closeUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, long updateID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void update(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent keyExtent, org.apache.accumulo.core.data.thrift.TMutation mutation, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.update_call> resultHandler) throws org.apache.thrift.TException;
++    public void update(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent keyExtent, org.apache.accumulo.core.data.thrift.TMutation mutation, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void startConditionalUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, List<ByteBuffer> authorizations, String tableID, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.startConditionalUpdate_call> resultHandler) throws org.apache.thrift.TException;
++    public void startConditionalUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, List<ByteBuffer> authorizations, String tableID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void conditionalUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TConditionalMutation>> mutations, List<String> symbols, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.conditionalUpdate_call> resultHandler) throws org.apache.thrift.TException;
++    public void conditionalUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TConditionalMutation>> mutations, List<String> symbols, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void invalidateConditionalUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.invalidateConditionalUpdate_call> resultHandler) throws org.apache.thrift.TException;
++    public void invalidateConditionalUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void closeConditionalUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.closeConditionalUpdate_call> resultHandler) throws org.apache.thrift.TException;
++    public void closeConditionalUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void bulkImport(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long tid, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,Map<String,org.apache.accumulo.core.data.thrift.MapFileInfo>> files, boolean setTime, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.bulkImport_call> resultHandler) throws org.apache.thrift.TException;
++    public void bulkImport(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long tid, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,Map<String,org.apache.accumulo.core.data.thrift.MapFileInfo>> files, boolean setTime, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void splitTablet(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent extent, ByteBuffer splitPoint, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.splitTablet_call> resultHandler) throws org.apache.thrift.TException;
++    public void splitTablet(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent extent, ByteBuffer splitPoint, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void loadTablet(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.loadTablet_call> resultHandler) throws org.apache.thrift.TException;
++    public void loadTablet(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void unloadTablet(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, boolean save, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.unloadTablet_call> resultHandler) throws org.apache.thrift.TException;
++    public void unloadTablet(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, boolean save, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void flush(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, String tableId, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.flush_call> resultHandler) throws org.apache.thrift.TException;
++    public void flush(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, String tableId, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void flushTablet(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.flushTablet_call> resultHandler) throws org.apache.thrift.TException;
++    public void flushTablet(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void chop(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.chop_call> resultHandler) throws org.apache.thrift.TException;
++    public void chop(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void compact(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, String tableId, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.compact_call> resultHandler) throws org.apache.thrift.TException;
++    public void compact(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, String tableId, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getTabletServerStatus(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getTabletServerStatus_call> resultHandler) throws org.apache.thrift.TException;
++    public void getTabletServerStatus(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getTabletStats(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableId, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getTabletStats_call> resultHandler) throws org.apache.thrift.TException;
++    public void getTabletStats(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getHistoricalStats(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getHistoricalStats_call> resultHandler) throws org.apache.thrift.TException;
++    public void getHistoricalStats(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void halt(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.halt_call> resultHandler) throws org.apache.thrift.TException;
++    public void halt(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void fastHalt(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.fastHalt_call> resultHandler) throws org.apache.thrift.TException;
++    public void fastHalt(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getActiveScans(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getActiveScans_call> resultHandler) throws org.apache.thrift.TException;
++    public void getActiveScans(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getActiveCompactions(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getActiveCompactions_call> resultHandler) throws org.apache.thrift.TException;
++    public void getActiveCompactions(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void removeLogs(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, List<String> filenames, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.removeLogs_call> resultHandler) throws org.apache.thrift.TException;
++    public void removeLogs(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, List<String> filenames, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+   }
+ 
+@@ -923,7 +925,7 @@ import org.slf4j.LoggerFactory;
+       super(protocolFactory, clientManager, transport);
+     }
+ 
+-    public void startScan(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.accumulo.core.data.thrift.TRange range, List<org.apache.accumulo.core.data.thrift.TColumn> columns, int batchSize, List<org.apache.accumulo.core.data.thrift.IterInfo> ssiList, Map<String,Map<String,String>> ssio, List<ByteBuffer> authorizations, boolean waitForWrites, boolean isolated, long readaheadThreshold, org.apache.thrift.async.AsyncMethodCallback<startScan_call> resultHandler) throws org.apache.thrift.TException {
++    public void startScan(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.accumulo.core.data.thrift.TRange range, List<org.apache.accumulo.core.data.thrift.TColumn> columns, int batchSize, List<org.apache.accumulo.core.data.thrift.IterInfo> ssiList, Map<String,Map<String,String>> ssio, List<ByteBuffer> authorizations, boolean waitForWrites, boolean isolated, long readaheadThreshold, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       startScan_call method_call = new startScan_call(tinfo, credentials, extent, range, columns, batchSize, ssiList, ssio, authorizations, waitForWrites, isolated, readaheadThreshold, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -943,7 +945,7 @@ import org.slf4j.LoggerFactory;
+       private boolean waitForWrites;
+       private boolean isolated;
+       private long readaheadThreshold;
+-      public startScan_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.accumulo.core.data.thrift.TRange range, List<org.apache.accumulo.core.data.thrift.TColumn> columns, int batchSize, List<org.apache.accumulo.core.data.thrift.IterInfo> ssiList, Map<String,Map<String,String>> ssio, List<ByteBuffer> authorizations, boolean waitForWrites, boolean isolated, long readaheadThreshold, org.apache.thrift.async.AsyncMethodCallback<startScan_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public startScan_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.accumulo.core.data.thrift.TRange range, List<org.apache.accumulo.core.data.thrift.TColumn> columns, int batchSize, List<org.apache.accumulo.core.data.thrift.IterInfo> ssiList, Map<String,Map<String,String>> ssio, List<ByteBuffer> authorizations, boolean waitForWrites, boolean isolated, long readaheadThreshold, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -988,7 +990,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void continueScan(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback<continueScan_call> resultHandler) throws org.apache.thrift.TException {
++    public void continueScan(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       continueScan_call method_call = new continueScan_call(tinfo, scanID, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -998,7 +1000,7 @@ import org.slf4j.LoggerFactory;
+     public static class continueScan_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private long scanID;
+-      public continueScan_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback<continueScan_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public continueScan_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.scanID = scanID;
+@@ -1023,7 +1025,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void closeScan(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback<closeScan_call> resultHandler) throws org.apache.thrift.TException {
++    public void closeScan(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       closeScan_call method_call = new closeScan_call(tinfo, scanID, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1033,7 +1035,7 @@ import org.slf4j.LoggerFactory;
+     public static class closeScan_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private long scanID;
+-      public closeScan_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback<closeScan_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public closeScan_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, true);
+         this.tinfo = tinfo;
+         this.scanID = scanID;
+@@ -1057,7 +1059,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void startMultiScan(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TRange>> batch, List<org.apache.accumulo.core.data.thrift.TColumn> columns, List<org.apache.accumulo.core.data.thrift.IterInfo> ssiList, Map<String,Map<String,String>> ssio, List<ByteBuffer> authorizations, boolean waitForWrites, org.apache.thrift.async.AsyncMethodCallback<startMultiScan_call> resultHandler) throws org.apache.thrift.TException {
++    public void startMultiScan(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TRange>> batch, List<org.apache.accumulo.core.data.thrift.TColumn> columns, List<org.apache.accumulo.core.data.thrift.IterInfo> ssiList, Map<String,Map<String,String>> ssio, List<ByteBuffer> authorizations, boolean waitForWrites, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       startMultiScan_call method_call = new startMultiScan_call(tinfo, credentials, batch, columns, ssiList, ssio, authorizations, waitForWrites, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1073,7 +1075,7 @@ import org.slf4j.LoggerFactory;
+       private Map<String,Map<String,String>> ssio;
+       private List<ByteBuffer> authorizations;
+       private boolean waitForWrites;
+-      public startMultiScan_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TRange>> batch, List<org.apache.accumulo.core.data.thrift.TColumn> columns, List<org.apache.accumulo.core.data.thrift.IterInfo> ssiList, Map<String,Map<String,String>> ssio, List<ByteBuffer> authorizations, boolean waitForWrites, org.apache.thrift.async.AsyncMethodCallback<startMultiScan_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public startMultiScan_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TRange>> batch, List<org.apache.accumulo.core.data.thrift.TColumn> columns, List<org.apache.accumulo.core.data.thrift.IterInfo> ssiList, Map<String,Map<String,String>> ssio, List<ByteBuffer> authorizations, boolean waitForWrites, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1110,7 +1112,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void continueMultiScan(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback<continueMultiScan_call> resultHandler) throws org.apache.thrift.TException {
++    public void continueMultiScan(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       continueMultiScan_call method_call = new continueMultiScan_call(tinfo, scanID, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1120,7 +1122,7 @@ import org.slf4j.LoggerFactory;
+     public static class continueMultiScan_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private long scanID;
+-      public continueMultiScan_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback<continueMultiScan_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public continueMultiScan_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.scanID = scanID;
+@@ -1145,7 +1147,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void closeMultiScan(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback<closeMultiScan_call> resultHandler) throws org.apache.thrift.TException {
++    public void closeMultiScan(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       closeMultiScan_call method_call = new closeMultiScan_call(tinfo, scanID, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1155,7 +1157,7 @@ import org.slf4j.LoggerFactory;
+     public static class closeMultiScan_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private long scanID;
+-      public closeMultiScan_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback<closeMultiScan_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public closeMultiScan_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long scanID, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.scanID = scanID;
+@@ -1180,7 +1182,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void startUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<startUpdate_call> resultHandler) throws org.apache.thrift.TException {
++    public void startUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       startUpdate_call method_call = new startUpdate_call(tinfo, credentials, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1190,7 +1192,7 @@ import org.slf4j.LoggerFactory;
+     public static class startUpdate_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+-      public startUpdate_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<startUpdate_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public startUpdate_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1215,7 +1217,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void applyUpdates(org.apache.accumulo.trace.thrift.TInfo tinfo, long updateID, org.apache.accumulo.core.data.thrift.TKeyExtent keyExtent, List<org.apache.accumulo.core.data.thrift.TMutation> mutations, org.apache.thrift.async.AsyncMethodCallback<applyUpdates_call> resultHandler) throws org.apache.thrift.TException {
++    public void applyUpdates(org.apache.accumulo.trace.thrift.TInfo tinfo, long updateID, org.apache.accumulo.core.data.thrift.TKeyExtent keyExtent, List<org.apache.accumulo.core.data.thrift.TMutation> mutations, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       applyUpdates_call method_call = new applyUpdates_call(tinfo, updateID, keyExtent, mutations, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1227,7 +1229,7 @@ import org.slf4j.LoggerFactory;
+       private long updateID;
+       private org.apache.accumulo.core.data.thrift.TKeyExtent keyExtent;
+       private List<org.apache.accumulo.core.data.thrift.TMutation> mutations;
+-      public applyUpdates_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long updateID, org.apache.accumulo.core.data.thrift.TKeyExtent keyExtent, List<org.apache.accumulo.core.data.thrift.TMutation> mutations, org.apache.thrift.async.AsyncMethodCallback<applyUpdates_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public applyUpdates_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long updateID, org.apache.accumulo.core.data.thrift.TKeyExtent keyExtent, List<org.apache.accumulo.core.data.thrift.TMutation> mutations, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, true);
+         this.tinfo = tinfo;
+         this.updateID = updateID;
+@@ -1255,7 +1257,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void closeUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, long updateID, org.apache.thrift.async.AsyncMethodCallback<closeUpdate_call> resultHandler) throws org.apache.thrift.TException {
++    public void closeUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, long updateID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       closeUpdate_call method_call = new closeUpdate_call(tinfo, updateID, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1265,7 +1267,7 @@ import org.slf4j.LoggerFactory;
+     public static class closeUpdate_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private long updateID;
+-      public closeUpdate_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long updateID, org.apache.thrift.async.AsyncMethodCallback<closeUpdate_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public closeUpdate_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long updateID, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.updateID = updateID;
+@@ -1290,7 +1292,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void update(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent keyExtent, org.apache.accumulo.core.data.thrift.TMutation mutation, org.apache.thrift.async.AsyncMethodCallback<update_call> resultHandler) throws org.apache.thrift.TException {
++    public void update(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent keyExtent, org.apache.accumulo.core.data.thrift.TMutation mutation, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       update_call method_call = new update_call(tinfo, credentials, keyExtent, mutation, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1302,7 +1304,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private org.apache.accumulo.core.data.thrift.TKeyExtent keyExtent;
+       private org.apache.accumulo.core.data.thrift.TMutation mutation;
+-      public update_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent keyExtent, org.apache.accumulo.core.data.thrift.TMutation mutation, org.apache.thrift.async.AsyncMethodCallback<update_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public update_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent keyExtent, org.apache.accumulo.core.data.thrift.TMutation mutation, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1331,7 +1333,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void startConditionalUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, List<ByteBuffer> authorizations, String tableID, org.apache.thrift.async.AsyncMethodCallback<startConditionalUpdate_call> resultHandler) throws org.apache.thrift.TException {
++    public void startConditionalUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, List<ByteBuffer> authorizations, String tableID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       startConditionalUpdate_call method_call = new startConditionalUpdate_call(tinfo, credentials, authorizations, tableID, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1343,7 +1345,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private List<ByteBuffer> authorizations;
+       private String tableID;
+-      public startConditionalUpdate_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, List<ByteBuffer> authorizations, String tableID, org.apache.thrift.async.AsyncMethodCallback<startConditionalUpdate_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public startConditionalUpdate_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, List<ByteBuffer> authorizations, String tableID, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1372,7 +1374,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void conditionalUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TConditionalMutation>> mutations, List<String> symbols, org.apache.thrift.async.AsyncMethodCallback<conditionalUpdate_call> resultHandler) throws org.apache.thrift.TException {
++    public void conditionalUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TConditionalMutation>> mutations, List<String> symbols, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       conditionalUpdate_call method_call = new conditionalUpdate_call(tinfo, sessID, mutations, symbols, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1384,7 +1386,7 @@ import org.slf4j.LoggerFactory;
+       private long sessID;
+       private Map<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TConditionalMutation>> mutations;
+       private List<String> symbols;
+-      public conditionalUpdate_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TConditionalMutation>> mutations, List<String> symbols, org.apache.thrift.async.AsyncMethodCallback<conditionalUpdate_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public conditionalUpdate_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TConditionalMutation>> mutations, List<String> symbols, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.sessID = sessID;
+@@ -1413,7 +1415,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void invalidateConditionalUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, org.apache.thrift.async.AsyncMethodCallback<invalidateConditionalUpdate_call> resultHandler) throws org.apache.thrift.TException {
++    public void invalidateConditionalUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       invalidateConditionalUpdate_call method_call = new invalidateConditionalUpdate_call(tinfo, sessID, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1423,7 +1425,7 @@ import org.slf4j.LoggerFactory;
+     public static class invalidateConditionalUpdate_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private long sessID;
+-      public invalidateConditionalUpdate_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, org.apache.thrift.async.AsyncMethodCallback<invalidateConditionalUpdate_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public invalidateConditionalUpdate_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.sessID = sessID;
+@@ -1448,7 +1450,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void closeConditionalUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, org.apache.thrift.async.AsyncMethodCallback<closeConditionalUpdate_call> resultHandler) throws org.apache.thrift.TException {
++    public void closeConditionalUpdate(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       closeConditionalUpdate_call method_call = new closeConditionalUpdate_call(tinfo, sessID, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1458,7 +1460,7 @@ import org.slf4j.LoggerFactory;
+     public static class closeConditionalUpdate_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private long sessID;
+-      public closeConditionalUpdate_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, org.apache.thrift.async.AsyncMethodCallback<closeConditionalUpdate_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public closeConditionalUpdate_call(org.apache.accumulo.trace.thrift.TInfo tinfo, long sessID, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, true);
+         this.tinfo = tinfo;
+         this.sessID = sessID;
+@@ -1482,7 +1484,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void bulkImport(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long tid, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,Map<String,org.apache.accumulo.core.data.thrift.MapFileInfo>> files, boolean setTime, org.apache.thrift.async.AsyncMethodCallback<bulkImport_call> resultHandler) throws org.apache.thrift.TException {
++    public void bulkImport(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long tid, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,Map<String,org.apache.accumulo.core.data.thrift.MapFileInfo>> files, boolean setTime, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       bulkImport_call method_call = new bulkImport_call(tinfo, credentials, tid, files, setTime, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1495,7 +1497,7 @@ import org.slf4j.LoggerFactory;
+       private long tid;
+       private Map<org.apache.accumulo.core.data.thrift.TKeyExtent,Map<String,org.apache.accumulo.core.data.thrift.MapFileInfo>> files;
+       private boolean setTime;
+-      public bulkImport_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long tid, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,Map<String,org.apache.accumulo.core.data.thrift.MapFileInfo>> files, boolean setTime, org.apache.thrift.async.AsyncMethodCallback<bulkImport_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public bulkImport_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, long tid, Map<org.apache.accumulo.core.data.thrift.TKeyExtent,Map<String,org.apache.accumulo.core.data.thrift.MapFileInfo>> files, boolean setTime, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1526,7 +1528,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void splitTablet(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent extent, ByteBuffer splitPoint, org.apache.thrift.async.AsyncMethodCallback<splitTablet_call> resultHandler) throws org.apache.thrift.TException {
++    public void splitTablet(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent extent, ByteBuffer splitPoint, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       splitTablet_call method_call = new splitTablet_call(tinfo, credentials, extent, splitPoint, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1538,7 +1540,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private org.apache.accumulo.core.data.thrift.TKeyExtent extent;
+       private ByteBuffer splitPoint;
+-      public splitTablet_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent extent, ByteBuffer splitPoint, org.apache.thrift.async.AsyncMethodCallback<splitTablet_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public splitTablet_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.accumulo.core.data.thrift.TKeyExtent extent, ByteBuffer splitPoint, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1567,7 +1569,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void loadTablet(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback<loadTablet_call> resultHandler) throws org.apache.thrift.TException {
++    public void loadTablet(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       loadTablet_call method_call = new loadTablet_call(tinfo, credentials, lock, extent, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1579,7 +1581,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String lock;
+       private org.apache.accumulo.core.data.thrift.TKeyExtent extent;
+-      public loadTablet_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback<loadTablet_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public loadTablet_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, true);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1607,7 +1609,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void unloadTablet(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, boolean save, org.apache.thrift.async.AsyncMethodCallback<unloadTablet_call> resultHandler) throws org.apache.thrift.TException {
++    public void unloadTablet(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, boolean save, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       unloadTablet_call method_call = new unloadTablet_call(tinfo, credentials, lock, extent, save, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1620,7 +1622,7 @@ import org.slf4j.LoggerFactory;
+       private String lock;
+       private org.apache.accumulo.core.data.thrift.TKeyExtent extent;
+       private boolean save;
+-      public unloadTablet_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, boolean save, org.apache.thrift.async.AsyncMethodCallback<unloadTablet_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public unloadTablet_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, boolean save, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, true);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1650,7 +1652,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void flush(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, String tableId, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback<flush_call> resultHandler) throws org.apache.thrift.TException {
++    public void flush(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, String tableId, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       flush_call method_call = new flush_call(tinfo, credentials, lock, tableId, startRow, endRow, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1664,7 +1666,7 @@ import org.slf4j.LoggerFactory;
+       private String tableId;
+       private ByteBuffer startRow;
+       private ByteBuffer endRow;
+-      public flush_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, String tableId, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback<flush_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public flush_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, String tableId, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, true);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1696,7 +1698,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void flushTablet(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback<flushTablet_call> resultHandler) throws org.apache.thrift.TException {
++    public void flushTablet(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       flushTablet_call method_call = new flushTablet_call(tinfo, credentials, lock, extent, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1708,7 +1710,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String lock;
+       private org.apache.accumulo.core.data.thrift.TKeyExtent extent;
+-      public flushTablet_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback<flushTablet_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public flushTablet_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, true);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1736,7 +1738,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void chop(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback<chop_call> resultHandler) throws org.apache.thrift.TException {
++    public void chop(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       chop_call method_call = new chop_call(tinfo, credentials, lock, extent, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1748,7 +1750,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String lock;
+       private org.apache.accumulo.core.data.thrift.TKeyExtent extent;
+-      public chop_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback<chop_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public chop_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.accumulo.core.data.thrift.TKeyExtent extent, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, true);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1776,7 +1778,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void compact(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, String tableId, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback<compact_call> resultHandler) throws org.apache.thrift.TException {
++    public void compact(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, String tableId, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       compact_call method_call = new compact_call(tinfo, credentials, lock, tableId, startRow, endRow, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1790,7 +1792,7 @@ import org.slf4j.LoggerFactory;
+       private String tableId;
+       private ByteBuffer startRow;
+       private ByteBuffer endRow;
+-      public compact_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, String tableId, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback<compact_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public compact_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, String tableId, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, true);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1822,7 +1824,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getTabletServerStatus(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<getTabletServerStatus_call> resultHandler) throws org.apache.thrift.TException {
++    public void getTabletServerStatus(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getTabletServerStatus_call method_call = new getTabletServerStatus_call(tinfo, credentials, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1832,7 +1834,7 @@ import org.slf4j.LoggerFactory;
+     public static class getTabletServerStatus_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+-      public getTabletServerStatus_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<getTabletServerStatus_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getTabletServerStatus_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1857,7 +1859,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getTabletStats(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableId, org.apache.thrift.async.AsyncMethodCallback<getTabletStats_call> resultHandler) throws org.apache.thrift.TException {
++    public void getTabletStats(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getTabletStats_call method_call = new getTabletStats_call(tinfo, credentials, tableId, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1868,7 +1870,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String tableId;
+-      public getTabletStats_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableId, org.apache.thrift.async.AsyncMethodCallback<getTabletStats_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getTabletStats_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String tableId, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1895,7 +1897,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getHistoricalStats(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<getHistoricalStats_call> resultHandler) throws org.apache.thrift.TException {
++    public void getHistoricalStats(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getHistoricalStats_call method_call = new getHistoricalStats_call(tinfo, credentials, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1905,7 +1907,7 @@ import org.slf4j.LoggerFactory;
+     public static class getHistoricalStats_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+-      public getHistoricalStats_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<getHistoricalStats_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getHistoricalStats_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1930,7 +1932,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void halt(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.thrift.async.AsyncMethodCallback<halt_call> resultHandler) throws org.apache.thrift.TException {
++    public void halt(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       halt_call method_call = new halt_call(tinfo, credentials, lock, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1941,7 +1943,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String lock;
+-      public halt_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.thrift.async.AsyncMethodCallback<halt_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public halt_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -1968,7 +1970,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void fastHalt(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.thrift.async.AsyncMethodCallback<fastHalt_call> resultHandler) throws org.apache.thrift.TException {
++    public void fastHalt(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       fastHalt_call method_call = new fastHalt_call(tinfo, credentials, lock, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -1979,7 +1981,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private String lock;
+-      public fastHalt_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.thrift.async.AsyncMethodCallback<fastHalt_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public fastHalt_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, String lock, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, true);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -2005,7 +2007,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getActiveScans(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<getActiveScans_call> resultHandler) throws org.apache.thrift.TException {
++    public void getActiveScans(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getActiveScans_call method_call = new getActiveScans_call(tinfo, credentials, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -2015,7 +2017,7 @@ import org.slf4j.LoggerFactory;
+     public static class getActiveScans_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+-      public getActiveScans_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<getActiveScans_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getActiveScans_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -2040,7 +2042,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getActiveCompactions(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<getActiveCompactions_call> resultHandler) throws org.apache.thrift.TException {
++    public void getActiveCompactions(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getActiveCompactions_call method_call = new getActiveCompactions_call(tinfo, credentials, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -2050,7 +2052,7 @@ import org.slf4j.LoggerFactory;
+     public static class getActiveCompactions_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+-      public getActiveCompactions_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback<getActiveCompactions_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getActiveCompactions_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -2075,7 +2077,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void removeLogs(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, List<String> filenames, org.apache.thrift.async.AsyncMethodCallback<removeLogs_call> resultHandler) throws org.apache.thrift.TException {
++    public void removeLogs(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, List<String> filenames, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       removeLogs_call method_call = new removeLogs_call(tinfo, credentials, filenames, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -2086,7 +2088,7 @@ import org.slf4j.LoggerFactory;
+       private org.apache.accumulo.trace.thrift.TInfo tinfo;
+       private org.apache.accumulo.core.security.thrift.TCredentials credentials;
+       private List<String> filenames;
+-      public removeLogs_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, List<String> filenames, org.apache.thrift.async.AsyncMethodCallback<removeLogs_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public removeLogs_call(org.apache.accumulo.trace.thrift.TInfo tinfo, org.apache.accumulo.core.security.thrift.TCredentials credentials, List<String> filenames, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, true);
+         this.tinfo = tinfo;
+         this.credentials = credentials;
+@@ -2836,7 +2838,1469 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class startScan_args implements org.apache.thrift.TBase<startScan_args, startScan_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class AsyncProcessor<I extends AsyncIface> extends org.apache.accumulo.core.client.impl.thrift.ClientService.AsyncProcessor<I> {
++    private static final Logger LOGGER = LoggerFactory.getLogger(AsyncProcessor.class.getName());
++    public AsyncProcessor(I iface) {
++      super(iface, getProcessMap(new HashMap<String, org.apache.thrift.AsyncProcessFunction<I, ? extends org.apache.thrift.TBase, ?>>()));
++    }
++
++    protected AsyncProcessor(I iface, Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      super(iface, getProcessMap(processMap));
++    }
++
++    private static <I extends AsyncIface> Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase,?>> getProcessMap(Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      processMap.put("startScan", new startScan());
++      processMap.put("continueScan", new continueScan());
++      processMap.put("closeScan", new closeScan());
++      processMap.put("startMultiScan", new startMultiScan());
++      processMap.put("continueMultiScan", new continueMultiScan());
++      processMap.put("closeMultiScan", new closeMultiScan());
++      processMap.put("startUpdate", new startUpdate());
++      processMap.put("applyUpdates", new applyUpdates());
++      processMap.put("closeUpdate", new closeUpdate());
++      processMap.put("update", new update());
++      processMap.put("startConditionalUpdate", new startConditionalUpdate());
++      processMap.put("conditionalUpdate", new conditionalUpdate());
++      processMap.put("invalidateConditionalUpdate", new invalidateConditionalUpdate());
++      processMap.put("closeConditionalUpdate", new closeConditionalUpdate());
++      processMap.put("bulkImport", new bulkImport());
++      processMap.put("splitTablet", new splitTablet());
++      processMap.put("loadTablet", new loadTablet());
++      processMap.put("unloadTablet", new unloadTablet());
++      processMap.put("flush", new flush());
++      processMap.put("flushTablet", new flushTablet());
++      processMap.put("chop", new chop());
++      processMap.put("compact", new compact());
++      processMap.put("getTabletServerStatus", new getTabletServerStatus());
++      processMap.put("getTabletStats", new getTabletStats());
++      processMap.put("getHistoricalStats", new getHistoricalStats());
++      processMap.put("halt", new halt());
++      processMap.put("fastHalt", new fastHalt());
++      processMap.put("getActiveScans", new getActiveScans());
++      processMap.put("getActiveCompactions", new getActiveCompactions());
++      processMap.put("removeLogs", new removeLogs());
++      return processMap;
++    }
++
++    public static class startScan<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, startScan_args, org.apache.accumulo.core.data.thrift.InitialScan> {
++      public startScan() {
++        super("startScan");
++      }
++
++      public startScan_args getEmptyArgsInstance() {
++        return new startScan_args();
++      }
++
++      public AsyncMethodCallback<org.apache.accumulo.core.data.thrift.InitialScan> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<org.apache.accumulo.core.data.thrift.InitialScan>() { 
++          public void onComplete(org.apache.accumulo.core.data.thrift.InitialScan o) {
++            startScan_result result = new startScan_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            startScan_result result = new startScan_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof NotServingTabletException) {
++                        result.nste = (NotServingTabletException) e;
++                        result.setNsteIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TooManyFilesException) {
++                        result.tmfe = (TooManyFilesException) e;
++                        result.setTmfeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, startScan_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.accumulo.core.data.thrift.InitialScan> resultHandler) throws TException {
++        iface.startScan(args.tinfo, args.credentials, args.extent, args.range, args.columns, args.batchSize, args.ssiList, args.ssio, args.authorizations, args.waitForWrites, args.isolated, args.readaheadThreshold,resultHandler);
++      }
++    }
++
++    public static class continueScan<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, continueScan_args, org.apache.accumulo.core.data.thrift.ScanResult> {
++      public continueScan() {
++        super("continueScan");
++      }
++
++      public continueScan_args getEmptyArgsInstance() {
++        return new continueScan_args();
++      }
++
++      public AsyncMethodCallback<org.apache.accumulo.core.data.thrift.ScanResult> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<org.apache.accumulo.core.data.thrift.ScanResult>() { 
++          public void onComplete(org.apache.accumulo.core.data.thrift.ScanResult o) {
++            continueScan_result result = new continueScan_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            continueScan_result result = new continueScan_result();
++            if (e instanceof NoSuchScanIDException) {
++                        result.nssi = (NoSuchScanIDException) e;
++                        result.setNssiIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof NotServingTabletException) {
++                        result.nste = (NotServingTabletException) e;
++                        result.setNsteIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TooManyFilesException) {
++                        result.tmfe = (TooManyFilesException) e;
++                        result.setTmfeIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, continueScan_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.accumulo.core.data.thrift.ScanResult> resultHandler) throws TException {
++        iface.continueScan(args.tinfo, args.scanID,resultHandler);
++      }
++    }
++
++    public static class closeScan<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, closeScan_args, Void> {
++      public closeScan() {
++        super("closeScan");
++      }
++
++      public closeScan_args getEmptyArgsInstance() {
++        return new closeScan_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++          }
++          public void onError(Exception e) {
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return true;
++      }
++
++      public void start(I iface, closeScan_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.closeScan(args.tinfo, args.scanID,resultHandler);
++      }
++    }
++
++    public static class startMultiScan<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, startMultiScan_args, org.apache.accumulo.core.data.thrift.InitialMultiScan> {
++      public startMultiScan() {
++        super("startMultiScan");
++      }
++
++      public startMultiScan_args getEmptyArgsInstance() {
++        return new startMultiScan_args();
++      }
++
++      public AsyncMethodCallback<org.apache.accumulo.core.data.thrift.InitialMultiScan> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<org.apache.accumulo.core.data.thrift.InitialMultiScan>() { 
++          public void onComplete(org.apache.accumulo.core.data.thrift.InitialMultiScan o) {
++            startMultiScan_result result = new startMultiScan_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            startMultiScan_result result = new startMultiScan_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, startMultiScan_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.accumulo.core.data.thrift.InitialMultiScan> resultHandler) throws TException {
++        iface.startMultiScan(args.tinfo, args.credentials, args.batch, args.columns, args.ssiList, args.ssio, args.authorizations, args.waitForWrites,resultHandler);
++      }
++    }
++
++    public static class continueMultiScan<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, continueMultiScan_args, org.apache.accumulo.core.data.thrift.MultiScanResult> {
++      public continueMultiScan() {
++        super("continueMultiScan");
++      }
++
++      public continueMultiScan_args getEmptyArgsInstance() {
++        return new continueMultiScan_args();
++      }
++
++      public AsyncMethodCallback<org.apache.accumulo.core.data.thrift.MultiScanResult> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<org.apache.accumulo.core.data.thrift.MultiScanResult>() { 
++          public void onComplete(org.apache.accumulo.core.data.thrift.MultiScanResult o) {
++            continueMultiScan_result result = new continueMultiScan_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            continueMultiScan_result result = new continueMultiScan_result();
++            if (e instanceof NoSuchScanIDException) {
++                        result.nssi = (NoSuchScanIDException) e;
++                        result.setNssiIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, continueMultiScan_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.accumulo.core.data.thrift.MultiScanResult> resultHandler) throws TException {
++        iface.continueMultiScan(args.tinfo, args.scanID,resultHandler);
++      }
++    }
++
++    public static class closeMultiScan<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, closeMultiScan_args, Void> {
++      public closeMultiScan() {
++        super("closeMultiScan");
++      }
++
++      public closeMultiScan_args getEmptyArgsInstance() {
++        return new closeMultiScan_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            closeMultiScan_result result = new closeMultiScan_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            closeMultiScan_result result = new closeMultiScan_result();
++            if (e instanceof NoSuchScanIDException) {
++                        result.nssi = (NoSuchScanIDException) e;
++                        result.setNssiIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, closeMultiScan_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.closeMultiScan(args.tinfo, args.scanID,resultHandler);
++      }
++    }
++
++    public static class startUpdate<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, startUpdate_args, Long> {
++      public startUpdate() {
++        super("startUpdate");
++      }
++
++      public startUpdate_args getEmptyArgsInstance() {
++        return new startUpdate_args();
++      }
++
++      public AsyncMethodCallback<Long> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Long>() { 
++          public void onComplete(Long o) {
++            startUpdate_result result = new startUpdate_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            startUpdate_result result = new startUpdate_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, startUpdate_args args, org.apache.thrift.async.AsyncMethodCallback<Long> resultHandler) throws TException {
++        iface.startUpdate(args.tinfo, args.credentials,resultHandler);
++      }
++    }
++
++    public static class applyUpdates<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, applyUpdates_args, Void> {
++      public applyUpdates() {
++        super("applyUpdates");
++      }
++
++      public applyUpdates_args getEmptyArgsInstance() {
++        return new applyUpdates_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++          }
++          public void onError(Exception e) {
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return true;
++      }
++
++      public void start(I iface, applyUpdates_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.applyUpdates(args.tinfo, args.updateID, args.keyExtent, args.mutations,resultHandler);
++      }
++    }
++
++    public static class closeUpdate<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, closeUpdate_args, org.apache.accumulo.core.data.thrift.UpdateErrors> {
++      public closeUpdate() {
++        super("closeUpdate");
++      }
++
++      public closeUpdate_args getEmptyArgsInstance() {
++        return new closeUpdate_args();
++      }
++
++      public AsyncMethodCallback<org.apache.accumulo.core.data.thrift.UpdateErrors> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<org.apache.accumulo.core.data.thrift.UpdateErrors>() { 
++          public void onComplete(org.apache.accumulo.core.data.thrift.UpdateErrors o) {
++            closeUpdate_result result = new closeUpdate_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            closeUpdate_result result = new closeUpdate_result();
++            if (e instanceof NoSuchScanIDException) {
++                        result.nssi = (NoSuchScanIDException) e;
++                        result.setNssiIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, closeUpdate_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.accumulo.core.data.thrift.UpdateErrors> resultHandler) throws TException {
++        iface.closeUpdate(args.tinfo, args.updateID,resultHandler);
++      }
++    }
++
++    public static class update<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, update_args, Void> {
++      public update() {
++        super("update");
++      }
++
++      public update_args getEmptyArgsInstance() {
++        return new update_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            update_result result = new update_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            update_result result = new update_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof NotServingTabletException) {
++                        result.nste = (NotServingTabletException) e;
++                        result.setNsteIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof ConstraintViolationException) {
++                        result.cve = (ConstraintViolationException) e;
++                        result.setCveIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, update_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.update(args.tinfo, args.credentials, args.keyExtent, args.mutation,resultHandler);
++      }
++    }
++
++    public static class startConditionalUpdate<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, startConditionalUpdate_args, org.apache.accumulo.core.data.thrift.TConditionalSession> {
++      public startConditionalUpdate() {
++        super("startConditionalUpdate");
++      }
++
++      public startConditionalUpdate_args getEmptyArgsInstance() {
++        return new startConditionalUpdate_args();
++      }
++
++      public AsyncMethodCallback<org.apache.accumulo.core.data.thrift.TConditionalSession> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<org.apache.accumulo.core.data.thrift.TConditionalSession>() { 
++          public void onComplete(org.apache.accumulo.core.data.thrift.TConditionalSession o) {
++            startConditionalUpdate_result result = new startConditionalUpdate_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            startConditionalUpdate_result result = new startConditionalUpdate_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, startConditionalUpdate_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.accumulo.core.data.thrift.TConditionalSession> resultHandler) throws TException {
++        iface.startConditionalUpdate(args.tinfo, args.credentials, args.authorizations, args.tableID,resultHandler);
++      }
++    }
++
++    public static class conditionalUpdate<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, conditionalUpdate_args, List<org.apache.accumulo.core.data.thrift.TCMResult>> {
++      public conditionalUpdate() {
++        super("conditionalUpdate");
++      }
++
++      public conditionalUpdate_args getEmptyArgsInstance() {
++        return new conditionalUpdate_args();
++      }
++
++      public AsyncMethodCallback<List<org.apache.accumulo.core.data.thrift.TCMResult>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<List<org.apache.accumulo.core.data.thrift.TCMResult>>() { 
++          public void onComplete(List<org.apache.accumulo.core.data.thrift.TCMResult> o) {
++            conditionalUpdate_result result = new conditionalUpdate_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            conditionalUpdate_result result = new conditionalUpdate_result();
++            if (e instanceof NoSuchScanIDException) {
++                        result.nssi = (NoSuchScanIDException) e;
++                        result.setNssiIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, conditionalUpdate_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.accumulo.core.data.thrift.TCMResult>> resultHandler) throws TException {
++        iface.conditionalUpdate(args.tinfo, args.sessID, args.mutations, args.symbols,resultHandler);
++      }
++    }
++
++    public static class invalidateConditionalUpdate<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, invalidateConditionalUpdate_args, Void> {
++      public invalidateConditionalUpdate() {
++        super("invalidateConditionalUpdate");
++      }
++
++      public invalidateConditionalUpdate_args getEmptyArgsInstance() {
++        return new invalidateConditionalUpdate_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            invalidateConditionalUpdate_result result = new invalidateConditionalUpdate_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            invalidateConditionalUpdate_result result = new invalidateConditionalUpdate_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, invalidateConditionalUpdate_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.invalidateConditionalUpdate(args.tinfo, args.sessID,resultHandler);
++      }
++    }
++
++    public static class closeConditionalUpdate<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, closeConditionalUpdate_args, Void> {
++      public closeConditionalUpdate() {
++        super("closeConditionalUpdate");
++      }
++
++      public closeConditionalUpdate_args getEmptyArgsInstance() {
++        return new closeConditionalUpdate_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++          }
++          public void onError(Exception e) {
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return true;
++      }
++
++      public void start(I iface, closeConditionalUpdate_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.closeConditionalUpdate(args.tinfo, args.sessID,resultHandler);
++      }
++    }
++
++    public static class bulkImport<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, bulkImport_args, List<org.apache.accumulo.core.data.thrift.TKeyExtent>> {
++      public bulkImport() {
++        super("bulkImport");
++      }
++
++      public bulkImport_args getEmptyArgsInstance() {
++        return new bulkImport_args();
++      }
++
++      public AsyncMethodCallback<List<org.apache.accumulo.core.data.thrift.TKeyExtent>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<List<org.apache.accumulo.core.data.thrift.TKeyExtent>>() { 
++          public void onComplete(List<org.apache.accumulo.core.data.thrift.TKeyExtent> o) {
++            bulkImport_result result = new bulkImport_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            bulkImport_result result = new bulkImport_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, bulkImport_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.accumulo.core.data.thrift.TKeyExtent>> resultHandler) throws TException {
++        iface.bulkImport(args.tinfo, args.credentials, args.tid, args.files, args.setTime,resultHandler);
++      }
++    }
++
++    public static class splitTablet<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, splitTablet_args, Void> {
++      public splitTablet() {
++        super("splitTablet");
++      }
++
++      public splitTablet_args getEmptyArgsInstance() {
++        return new splitTablet_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            splitTablet_result result = new splitTablet_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            splitTablet_result result = new splitTablet_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof NotServingTabletException) {
++                        result.nste = (NotServingTabletException) e;
++                        result.setNsteIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, splitTablet_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.splitTablet(args.tinfo, args.credentials, args.extent, args.splitPoint,resultHandler);
++      }
++    }
++
++    public static class loadTablet<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, loadTablet_args, Void> {
++      public loadTablet() {
++        super("loadTablet");
++      }
++
++      public loadTablet_args getEmptyArgsInstance() {
++        return new loadTablet_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++          }
++          public void onError(Exception e) {
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return true;
++      }
++
++      public void start(I iface, loadTablet_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.loadTablet(args.tinfo, args.credentials, args.lock, args.extent,resultHandler);
++      }
++    }
++
++    public static class unloadTablet<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, unloadTablet_args, Void> {
++      public unloadTablet() {
++        super("unloadTablet");
++      }
++
++      public unloadTablet_args getEmptyArgsInstance() {
++        return new unloadTablet_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++          }
++          public void onError(Exception e) {
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return true;
++      }
++
++      public void start(I iface, unloadTablet_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.unloadTablet(args.tinfo, args.credentials, args.lock, args.extent, args.save,resultHandler);
++      }
++    }
++
++    public static class flush<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, flush_args, Void> {
++      public flush() {
++        super("flush");
++      }
++
++      public flush_args getEmptyArgsInstance() {
++        return new flush_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++          }
++          public void onError(Exception e) {
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return true;
++      }
++
++      public void start(I iface, flush_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.flush(args.tinfo, args.credentials, args.lock, args.tableId, args.startRow, args.endRow,resultHandler);
++      }
++    }
++
++    public static class flushTablet<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, flushTablet_args, Void> {
++      public flushTablet() {
++        super("flushTablet");
++      }
++
++      public flushTablet_args getEmptyArgsInstance() {
++        return new flushTablet_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++          }
++          public void onError(Exception e) {
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return true;
++      }
++
++      public void start(I iface, flushTablet_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.flushTablet(args.tinfo, args.credentials, args.lock, args.extent,resultHandler);
++      }
++    }
++
++    public static class chop<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, chop_args, Void> {
++      public chop() {
++        super("chop");
++      }
++
++      public chop_args getEmptyArgsInstance() {
++        return new chop_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++          }
++          public void onError(Exception e) {
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return true;
++      }
++
++      public void start(I iface, chop_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.chop(args.tinfo, args.credentials, args.lock, args.extent,resultHandler);
++      }
++    }
++
++    public static class compact<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, compact_args, Void> {
++      public compact() {
++        super("compact");
++      }
++
++      public compact_args getEmptyArgsInstance() {
++        return new compact_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++          }
++          public void onError(Exception e) {
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return true;
++      }
++
++      public void start(I iface, compact_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.compact(args.tinfo, args.credentials, args.lock, args.tableId, args.startRow, args.endRow,resultHandler);
++      }
++    }
++
++    public static class getTabletServerStatus<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getTabletServerStatus_args, org.apache.accumulo.core.master.thrift.TabletServerStatus> {
++      public getTabletServerStatus() {
++        super("getTabletServerStatus");
++      }
++
++      public getTabletServerStatus_args getEmptyArgsInstance() {
++        return new getTabletServerStatus_args();
++      }
++
++      public AsyncMethodCallback<org.apache.accumulo.core.master.thrift.TabletServerStatus> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<org.apache.accumulo.core.master.thrift.TabletServerStatus>() { 
++          public void onComplete(org.apache.accumulo.core.master.thrift.TabletServerStatus o) {
++            getTabletServerStatus_result result = new getTabletServerStatus_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getTabletServerStatus_result result = new getTabletServerStatus_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getTabletServerStatus_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.accumulo.core.master.thrift.TabletServerStatus> resultHandler) throws TException {
++        iface.getTabletServerStatus(args.tinfo, args.credentials,resultHandler);
++      }
++    }
++
++    public static class getTabletStats<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getTabletStats_args, List<TabletStats>> {
++      public getTabletStats() {
++        super("getTabletStats");
++      }
++
++      public getTabletStats_args getEmptyArgsInstance() {
++        return new getTabletStats_args();
++      }
++
++      public AsyncMethodCallback<List<TabletStats>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<List<TabletStats>>() { 
++          public void onComplete(List<TabletStats> o) {
++            getTabletStats_result result = new getTabletStats_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getTabletStats_result result = new getTabletStats_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getTabletStats_args args, org.apache.thrift.async.AsyncMethodCallback<List<TabletStats>> resultHandler) throws TException {
++        iface.getTabletStats(args.tinfo, args.credentials, args.tableId,resultHandler);
++      }
++    }
++
++    public static class getHistoricalStats<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getHistoricalStats_args, TabletStats> {
++      public getHistoricalStats() {
++        super("getHistoricalStats");
++      }
++
++      public getHistoricalStats_args getEmptyArgsInstance() {
++        return new getHistoricalStats_args();
++      }
++
++      public AsyncMethodCallback<TabletStats> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<TabletStats>() { 
++          public void onComplete(TabletStats o) {
++            getHistoricalStats_result result = new getHistoricalStats_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getHistoricalStats_result result = new getHistoricalStats_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getHistoricalStats_args args, org.apache.thrift.async.AsyncMethodCallback<TabletStats> resultHandler) throws TException {
++        iface.getHistoricalStats(args.tinfo, args.credentials,resultHandler);
++      }
++    }
++
++    public static class halt<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, halt_args, Void> {
++      public halt() {
++        super("halt");
++      }
++
++      public halt_args getEmptyArgsInstance() {
++        return new halt_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            halt_result result = new halt_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            halt_result result = new halt_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, halt_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.halt(args.tinfo, args.credentials, args.lock,resultHandler);
++      }
++    }
++
++    public static class fastHalt<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, fastHalt_args, Void> {
++      public fastHalt() {
++        super("fastHalt");
++      }
++
++      public fastHalt_args getEmptyArgsInstance() {
++        return new fastHalt_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++          }
++          public void onError(Exception e) {
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return true;
++      }
++
++      public void start(I iface, fastHalt_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.fastHalt(args.tinfo, args.credentials, args.lock,resultHandler);
++      }
++    }
++
++    public static class getActiveScans<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getActiveScans_args, List<ActiveScan>> {
++      public getActiveScans() {
++        super("getActiveScans");
++      }
++
++      public getActiveScans_args getEmptyArgsInstance() {
++        return new getActiveScans_args();
++      }
++
++      public AsyncMethodCallback<List<ActiveScan>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<List<ActiveScan>>() { 
++          public void onComplete(List<ActiveScan> o) {
++            getActiveScans_result result = new getActiveScans_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getActiveScans_result result = new getActiveScans_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getActiveScans_args args, org.apache.thrift.async.AsyncMethodCallback<List<ActiveScan>> resultHandler) throws TException {
++        iface.getActiveScans(args.tinfo, args.credentials,resultHandler);
++      }
++    }
++
++    public static class getActiveCompactions<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getActiveCompactions_args, List<ActiveCompaction>> {
++      public getActiveCompactions() {
++        super("getActiveCompactions");
++      }
++
++      public getActiveCompactions_args getEmptyArgsInstance() {
++        return new getActiveCompactions_args();
++      }
++
++      public AsyncMethodCallback<List<ActiveCompaction>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<List<ActiveCompaction>>() { 
++          public void onComplete(List<ActiveCompaction> o) {
++            getActiveCompactions_result result = new getActiveCompactions_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getActiveCompactions_result result = new getActiveCompactions_result();
++            if (e instanceof org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) {
++                        result.sec = (org.apache.accumulo.core.client.impl.thrift.ThriftSecurityException) e;
++                        result.setSecIsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getActiveCompactions_args args, org.apache.thrift.async.AsyncMethodCallback<List<ActiveCompaction>> resultHandler) throws TException {
++        iface.getActiveCompactions(args.tinfo, args.credentials,resultHandler);
++      }
++    }
++
++    public static class removeLogs<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, removeLogs_args, Void> {
++      public removeLogs() {
++        super("removeLogs");
++      }
++
++      public removeLogs_args getEmptyArgsInstance() {
++        return new removeLogs_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++          }
++          public void onError(Exception e) {
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return true;
++      }
++
++      public void start(I iface, removeLogs_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.removeLogs(args.tinfo, args.credentials, args.filenames,resultHandler);
++      }
++    }
++
++  }
++
++  public static class startScan_args implements org.apache.thrift.TBase<startScan_args, startScan_args._Fields>, java.io.Serializable, Cloneable, Comparable<startScan_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("startScan_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)11);
+@@ -3060,7 +4524,7 @@ import org.slf4j.LoggerFactory;
+         this.range = new org.apache.accumulo.core.data.thrift.TRange(other.range);
+       }
+       if (other.isSetColumns()) {
+-        List<org.apache.accumulo.core.data.thrift.TColumn> __this__columns = new ArrayList<org.apache.accumulo.core.data.thrift.TColumn>();
++        List<org.apache.accumulo.core.data.thrift.TColumn> __this__columns = new ArrayList<org.apache.accumulo.core.data.thrift.TColumn>(other.columns.size());
+         for (org.apache.accumulo.core.data.thrift.TColumn other_element : other.columns) {
+           __this__columns.add(new org.apache.accumulo.core.data.thrift.TColumn(other_element));
+         }
+@@ -3068,14 +4532,14 @@ import org.slf4j.LoggerFactory;
+       }
+       this.batchSize = other.batchSize;
+       if (other.isSetSsiList()) {
+-        List<org.apache.accumulo.core.data.thrift.IterInfo> __this__ssiList = new ArrayList<org.apache.accumulo.core.data.thrift.IterInfo>();
++        List<org.apache.accumulo.core.data.thrift.IterInfo> __this__ssiList = new ArrayList<org.apache.accumulo.core.data.thrift.IterInfo>(other.ssiList.size());
+         for (org.apache.accumulo.core.data.thrift.IterInfo other_element : other.ssiList) {
+           __this__ssiList.add(new org.apache.accumulo.core.data.thrift.IterInfo(other_element));
+         }
+         this.ssiList = __this__ssiList;
+       }
+       if (other.isSetSsio()) {
+-        Map<String,Map<String,String>> __this__ssio = new HashMap<String,Map<String,String>>();
++        Map<String,Map<String,String>> __this__ssio = new HashMap<String,Map<String,String>>(other.ssio.size());
+         for (Map.Entry<String, Map<String,String>> other_element : other.ssio.entrySet()) {
+ 
+           String other_element_key = other_element.getKey();
+@@ -3083,30 +4547,14 @@ import org.slf4j.LoggerFactory;
+ 
+           String __this__ssio_copy_key = other_element_key;
+ 
+-          Map<String,String> __this__ssio_copy_value = new HashMap<String,String>();
+-          for (Map.Entry<String, String> other_element_value_element : other_element_value.entrySet()) {
+-
+-            String other_element_value_element_key = other_element_value_element.getKey();
+-            String other_element_value_element_value = other_element_value_element.getValue();
+-
+-            String __this__ssio_copy_value_copy_key = other_element_value_element_key;
+-
+-            String __this__ssio_copy_value_copy_value = other_element_value_element_value;
+-
+-            __this__ssio_copy_value.put(__this__ssio_copy_value_copy_key, __this__ssio_copy_value_copy_value);
+-          }
++          Map<String,String> __this__ssio_copy_value = new HashMap<String,String>(other_element_value);
+ 
+           __this__ssio.put(__this__ssio_copy_key, __this__ssio_copy_value);
+         }
+         this.ssio = __this__ssio;
+       }
+       if (other.isSetAuthorizations()) {
+-        List<ByteBuffer> __this__authorizations = new ArrayList<ByteBuffer>();
+-        for (ByteBuffer other_element : other.authorizations) {
+-          ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-          __this__authorizations.add(temp_binary_element);
+-        }
++        List<ByteBuffer> __this__authorizations = new ArrayList<ByteBuffer>(other.authorizations);
+         this.authorizations = __this__authorizations;
+       }
+       this.waitForWrites = other.waitForWrites;
+@@ -3785,130 +5233,130 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(startScan_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      startScan_args typedOther = (startScan_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetExtent()).compareTo(typedOther.isSetExtent());
++      lastComparison = Boolean.valueOf(isSetExtent()).compareTo(other.isSetExtent());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetExtent()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, typedOther.extent);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, other.extent);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetRange()).compareTo(typedOther.isSetRange());
++      lastComparison = Boolean.valueOf(isSetRange()).compareTo(other.isSetRange());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetRange()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.range, typedOther.range);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.range, other.range);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetColumns()).compareTo(typedOther.isSetColumns());
++      lastComparison = Boolean.valueOf(isSetColumns()).compareTo(other.isSetColumns());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetColumns()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columns, typedOther.columns);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columns, other.columns);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetBatchSize()).compareTo(typedOther.isSetBatchSize());
++      lastComparison = Boolean.valueOf(isSetBatchSize()).compareTo(other.isSetBatchSize());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetBatchSize()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.batchSize, typedOther.batchSize);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.batchSize, other.batchSize);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSsiList()).compareTo(typedOther.isSetSsiList());
++      lastComparison = Boolean.valueOf(isSetSsiList()).compareTo(other.isSetSsiList());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSsiList()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ssiList, typedOther.ssiList);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ssiList, other.ssiList);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSsio()).compareTo(typedOther.isSetSsio());
++      lastComparison = Boolean.valueOf(isSetSsio()).compareTo(other.isSetSsio());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSsio()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ssio, typedOther.ssio);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ssio, other.ssio);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(typedOther.isSetAuthorizations());
++      lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(other.isSetAuthorizations());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetAuthorizations()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, typedOther.authorizations);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, other.authorizations);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetWaitForWrites()).compareTo(typedOther.isSetWaitForWrites());
++      lastComparison = Boolean.valueOf(isSetWaitForWrites()).compareTo(other.isSetWaitForWrites());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetWaitForWrites()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.waitForWrites, typedOther.waitForWrites);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.waitForWrites, other.waitForWrites);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetIsolated()).compareTo(typedOther.isSetIsolated());
++      lastComparison = Boolean.valueOf(isSetIsolated()).compareTo(other.isSetIsolated());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetIsolated()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.isolated, typedOther.isolated);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.isolated, other.isolated);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetReadaheadThreshold()).compareTo(typedOther.isSetReadaheadThreshold());
++      lastComparison = Boolean.valueOf(isSetReadaheadThreshold()).compareTo(other.isSetReadaheadThreshold());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetReadaheadThreshold()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.readaheadThreshold, typedOther.readaheadThreshold);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.readaheadThreshold, other.readaheadThreshold);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -4112,7 +5560,7 @@ import org.slf4j.LoggerFactory;
+                   struct.columns = new ArrayList<org.apache.accumulo.core.data.thrift.TColumn>(_list106.size);
+                   for (int _i107 = 0; _i107 < _list106.size; ++_i107)
+                   {
+-                    org.apache.accumulo.core.data.thrift.TColumn _elem108; // required
++                    org.apache.accumulo.core.data.thrift.TColumn _elem108;
+                     _elem108 = new org.apache.accumulo.core.data.thrift.TColumn();
+                     _elem108.read(iprot);
+                     struct.columns.add(_elem108);
+@@ -4139,7 +5587,7 @@ import org.slf4j.LoggerFactory;
+                   struct.ssiList = new ArrayList<org.apache.accumulo.core.data.thrift.IterInfo>(_list109.size);
+                   for (int _i110 = 0; _i110 < _list109.size; ++_i110)
+                   {
+-                    org.apache.accumulo.core.data.thrift.IterInfo _elem111; // required
++                    org.apache.accumulo.core.data.thrift.IterInfo _elem111;
+                     _elem111 = new org.apache.accumulo.core.data.thrift.IterInfo();
+                     _elem111.read(iprot);
+                     struct.ssiList.add(_elem111);
+@@ -4158,16 +5606,16 @@ import org.slf4j.LoggerFactory;
+                   struct.ssio = new HashMap<String,Map<String,String>>(2*_map112.size);
+                   for (int _i113 = 0; _i113 < _map112.size; ++_i113)
+                   {
+-                    String _key114; // required
+-                    Map<String,String> _val115; // required
++                    String _key114;
++                    Map<String,String> _val115;
+                     _key114 = iprot.readString();
+                     {
+                       org.apache.thrift.protocol.TMap _map116 = iprot.readMapBegin();
+                       _val115 = new HashMap<String,String>(2*_map116.size);
+                       for (int _i117 = 0; _i117 < _map116.size; ++_i117)
+                       {
+-                        String _key118; // required
+-                        String _val119; // required
++                        String _key118;
++                        String _val119;
+                         _key118 = iprot.readString();
+                         _val119 = iprot.readString();
+                         _val115.put(_key118, _val119);
+@@ -4190,7 +5638,7 @@ import org.slf4j.LoggerFactory;
+                   struct.authorizations = new ArrayList<ByteBuffer>(_list120.size);
+                   for (int _i121 = 0; _i121 < _list120.size; ++_i121)
+                   {
+-                    ByteBuffer _elem122; // required
++                    ByteBuffer _elem122;
+                     _elem122 = iprot.readBinary();
+                     struct.authorizations.add(_elem122);
+                   }
+@@ -4484,7 +5932,7 @@ import org.slf4j.LoggerFactory;
+             struct.columns = new ArrayList<org.apache.accumulo.core.data.thrift.TColumn>(_list133.size);
+             for (int _i134 = 0; _i134 < _list133.size; ++_i134)
+             {
+-              org.apache.accumulo.core.data.thrift.TColumn _elem135; // required
++              org.apache.accumulo.core.data.thrift.TColumn _elem135;
+               _elem135 = new org.apache.accumulo.core.data.thrift.TColumn();
+               _elem135.read(iprot);
+               struct.columns.add(_elem135);
+@@ -4502,7 +5950,7 @@ import org.slf4j.LoggerFactory;
+             struct.ssiList = new ArrayList<org.apache.accumulo.core.data.thrift.IterInfo>(_list136.size);
+             for (int _i137 = 0; _i137 < _list136.size; ++_i137)
+             {
+-              org.apache.accumulo.core.data.thrift.IterInfo _elem138; // required
++              org.apache.accumulo.core.data.thrift.IterInfo _elem138;
+               _elem138 = new org.apache.accumulo.core.data.thrift.IterInfo();
+               _elem138.read(iprot);
+               struct.ssiList.add(_elem138);
+@@ -4516,16 +5964,16 @@ import org.slf4j.LoggerFactory;
+             struct.ssio = new HashMap<String,Map<String,String>>(2*_map139.size);
+             for (int _i140 = 0; _i140 < _map139.size; ++_i140)
+             {
+-              String _key141; // required
+-              Map<String,String> _val142; // required
++              String _key141;
++              Map<String,String> _val142;
+               _key141 = iprot.readString();
+               {
+                 org.apache.thrift.protocol.TMap _map143 = new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, iprot.readI32());
+                 _val142 = new HashMap<String,String>(2*_map143.size);
+                 for (int _i144 = 0; _i144 < _map143.size; ++_i144)
+                 {
+-                  String _key145; // required
+-                  String _val146; // required
++                  String _key145;
++                  String _val146;
+                   _key145 = iprot.readString();
+                   _val146 = iprot.readString();
+                   _val142.put(_key145, _val146);
+@@ -4542,7 +5990,7 @@ import org.slf4j.LoggerFactory;
+             struct.authorizations = new ArrayList<ByteBuffer>(_list147.size);
+             for (int _i148 = 0; _i148 < _list147.size; ++_i148)
+             {
+-              ByteBuffer _elem149; // required
++              ByteBuffer _elem149;
+               _elem149 = iprot.readBinary();
+               struct.authorizations.add(_elem149);
+             }
+@@ -4566,7 +6014,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class startScan_result implements org.apache.thrift.TBase<startScan_result, startScan_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class startScan_result implements org.apache.thrift.TBase<startScan_result, startScan_result._Fields>, java.io.Serializable, Cloneable, Comparable<startScan_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("startScan_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRUCT, (short)0);
+@@ -4941,50 +6389,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(startScan_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      startScan_result typedOther = (startScan_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNste()).compareTo(typedOther.isSetNste());
++      lastComparison = Boolean.valueOf(isSetNste()).compareTo(other.isSetNste());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNste()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nste, typedOther.nste);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nste, other.nste);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTmfe()).compareTo(typedOther.isSetTmfe());
++      lastComparison = Boolean.valueOf(isSetTmfe()).compareTo(other.isSetTmfe());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTmfe()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tmfe, typedOther.tmfe);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tmfe, other.tmfe);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -5231,7 +6679,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class continueScan_args implements org.apache.thrift.TBase<continueScan_args, continueScan_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class continueScan_args implements org.apache.thrift.TBase<continueScan_args, continueScan_args._Fields>, java.io.Serializable, Cloneable, Comparable<continueScan_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("continueScan_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+@@ -5490,30 +6938,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(continueScan_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      continueScan_args typedOther = (continueScan_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetScanID()).compareTo(typedOther.isSetScanID());
++      lastComparison = Boolean.valueOf(isSetScanID()).compareTo(other.isSetScanID());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetScanID()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanID, typedOther.scanID);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanID, other.scanID);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -5688,7 +7136,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class continueScan_result implements org.apache.thrift.TBase<continueScan_result, continueScan_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class continueScan_result implements org.apache.thrift.TBase<continueScan_result, continueScan_result._Fields>, java.io.Serializable, Cloneable, Comparable<continueScan_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("continueScan_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRUCT, (short)0);
+@@ -6063,50 +7511,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(continueScan_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      continueScan_result typedOther = (continueScan_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNssi()).compareTo(typedOther.isSetNssi());
++      lastComparison = Boolean.valueOf(isSetNssi()).compareTo(other.isSetNssi());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNssi()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nssi, typedOther.nssi);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nssi, other.nssi);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNste()).compareTo(typedOther.isSetNste());
++      lastComparison = Boolean.valueOf(isSetNste()).compareTo(other.isSetNste());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNste()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nste, typedOther.nste);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nste, other.nste);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTmfe()).compareTo(typedOther.isSetTmfe());
++      lastComparison = Boolean.valueOf(isSetTmfe()).compareTo(other.isSetTmfe());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTmfe()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tmfe, typedOther.tmfe);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tmfe, other.tmfe);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -6353,7 +7801,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class closeScan_args implements org.apache.thrift.TBase<closeScan_args, closeScan_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class closeScan_args implements org.apache.thrift.TBase<closeScan_args, closeScan_args._Fields>, java.io.Serializable, Cloneable, Comparable<closeScan_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("closeScan_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+@@ -6612,30 +8060,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(closeScan_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      closeScan_args typedOther = (closeScan_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetScanID()).compareTo(typedOther.isSetScanID());
++      lastComparison = Boolean.valueOf(isSetScanID()).compareTo(other.isSetScanID());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetScanID()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanID, typedOther.scanID);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanID, other.scanID);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -6810,7 +8258,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class startMultiScan_args implements org.apache.thrift.TBase<startMultiScan_args, startMultiScan_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class startMultiScan_args implements org.apache.thrift.TBase<startMultiScan_args, startMultiScan_args._Fields>, java.io.Serializable, Cloneable, Comparable<startMultiScan_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("startMultiScan_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)8);
+@@ -6989,21 +8437,21 @@ import org.slf4j.LoggerFactory;
+         this.batch = other.batch;
+       }
+       if (other.isSetColumns()) {
+-        List<org.apache.accumulo.core.data.thrift.TColumn> __this__columns = new ArrayList<org.apache.accumulo.core.data.thrift.TColumn>();
++        List<org.apache.accumulo.core.data.thrift.TColumn> __this__columns = new ArrayList<org.apache.accumulo.core.data.thrift.TColumn>(other.columns.size());
+         for (org.apache.accumulo.core.data.thrift.TColumn other_element : other.columns) {
+           __this__columns.add(new org.apache.accumulo.core.data.thrift.TColumn(other_element));
+         }
+         this.columns = __this__columns;
+       }
+       if (other.isSetSsiList()) {
+-        List<org.apache.accumulo.core.data.thrift.IterInfo> __this__ssiList = new ArrayList<org.apache.accumulo.core.data.thrift.IterInfo>();
++        List<org.apache.accumulo.core.data.thrift.IterInfo> __this__ssiList = new ArrayList<org.apache.accumulo.core.data.thrift.IterInfo>(other.ssiList.size());
+         for (org.apache.accumulo.core.data.thrift.IterInfo other_element : other.ssiList) {
+           __this__ssiList.add(new org.apache.accumulo.core.data.thrift.IterInfo(other_element));
+         }
+         this.ssiList = __this__ssiList;
+       }
+       if (other.isSetSsio()) {
+-        Map<String,Map<String,String>> __this__ssio = new HashMap<String,Map<String,String>>();
++        Map<String,Map<String,String>> __this__ssio = new HashMap<String,Map<String,String>>(other.ssio.size());
+         for (Map.Entry<String, Map<String,String>> other_element : other.ssio.entrySet()) {
+ 
+           String other_element_key = other_element.getKey();
+@@ -7011,30 +8459,14 @@ import org.slf4j.LoggerFactory;
+ 
+           String __this__ssio_copy_key = other_element_key;
+ 
+-          Map<String,String> __this__ssio_copy_value = new HashMap<String,String>();
+-          for (Map.Entry<String, String> other_element_value_element : other_element_value.entrySet()) {
+-
+-            String other_element_value_element_key = other_element_value_element.getKey();
+-            String other_element_value_element_value = other_element_value_element.getValue();
+-
+-            String __this__ssio_copy_value_copy_key = other_element_value_element_key;
+-
+-            String __this__ssio_copy_value_copy_value = other_element_value_element_value;
+-
+-            __this__ssio_copy_value.put(__this__ssio_copy_value_copy_key, __this__ssio_copy_value_copy_value);
+-          }
++          Map<String,String> __this__ssio_copy_value = new HashMap<String,String>(other_element_value);
+ 
+           __this__ssio.put(__this__ssio_copy_key, __this__ssio_copy_value);
+         }
+         this.ssio = __this__ssio;
+       }
+       if (other.isSetAuthorizations()) {
+-        List<ByteBuffer> __this__authorizations = new ArrayList<ByteBuffer>();
+-        for (ByteBuffer other_element : other.authorizations) {
+-          ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-          __this__authorizations.add(temp_binary_element);
+-        }
++        List<ByteBuffer> __this__authorizations = new ArrayList<ByteBuffer>(other.authorizations);
+         this.authorizations = __this__authorizations;
+       }
+       this.waitForWrites = other.waitForWrites;
+@@ -7534,90 +8966,90 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(startMultiScan_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      startMultiScan_args typedOther = (startMultiScan_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetBatch()).compareTo(typedOther.isSetBatch());
++      lastComparison = Boolean.valueOf(isSetBatch()).compareTo(other.isSetBatch());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetBatch()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.batch, typedOther.batch);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.batch, other.batch);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetColumns()).compareTo(typedOther.isSetColumns());
++      lastComparison = Boolean.valueOf(isSetColumns()).compareTo(other.isSetColumns());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetColumns()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columns, typedOther.columns);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columns, other.columns);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSsiList()).compareTo(typedOther.isSetSsiList());
++      lastComparison = Boolean.valueOf(isSetSsiList()).compareTo(other.isSetSsiList());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSsiList()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ssiList, typedOther.ssiList);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ssiList, other.ssiList);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSsio()).compareTo(typedOther.isSetSsio());
++      lastComparison = Boolean.valueOf(isSetSsio()).compareTo(other.isSetSsio());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSsio()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ssio, typedOther.ssio);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ssio, other.ssio);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(typedOther.isSetAuthorizations());
++      lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(other.isSetAuthorizations());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetAuthorizations()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, typedOther.authorizations);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, other.authorizations);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetWaitForWrites()).compareTo(typedOther.isSetWaitForWrites());
++      lastComparison = Boolean.valueOf(isSetWaitForWrites()).compareTo(other.isSetWaitForWrites());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetWaitForWrites()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.waitForWrites, typedOther.waitForWrites);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.waitForWrites, other.waitForWrites);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -7777,8 +9209,8 @@ import org.slf4j.LoggerFactory;
+                   struct.batch = new HashMap<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TRange>>(2*_map150.size);
+                   for (int _i151 = 0; _i151 < _map150.size; ++_i151)
+                   {
+-                    org.apache.accumulo.core.data.thrift.TKeyExtent _key152; // required
+-                    List<org.apache.accumulo.core.data.thrift.TRange> _val153; // required
++                    org.apache.accumulo.core.data.thrift.TKeyExtent _key152;
++                    List<org.apache.accumulo.core.data.thrift.TRange> _val153;
+                     _key152 = new org.apache.accumulo.core.data.thrift.TKeyExtent();
+                     _key152.read(iprot);
+                     {
+@@ -7786,7 +9218,7 @@ import org.slf4j.LoggerFactory;
+                       _val153 = new ArrayList<org.apache.accumulo.core.data.thrift.TRange>(_list154.size);
+                       for (int _i155 = 0; _i155 < _list154.size; ++_i155)
+                       {
+-                        org.apache.accumulo.core.data.thrift.TRange _elem156; // required
++                        org.apache.accumulo.core.data.thrift.TRange _elem156;
+                         _elem156 = new org.apache.accumulo.core.data.thrift.TRange();
+                         _elem156.read(iprot);
+                         _val153.add(_elem156);
+@@ -7809,7 +9241,7 @@ import org.slf4j.LoggerFactory;
+                   struct.columns = new ArrayList<org.apache.accumulo.core.data.thrift.TColumn>(_list157.size);
+                   for (int _i158 = 0; _i158 < _list157.size; ++_i158)
+                   {
+-                    org.apache.accumulo.core.data.thrift.TColumn _elem159; // required
++                    org.apache.accumulo.core.data.thrift.TColumn _elem159;
+                     _elem159 = new org.apache.accumulo.core.data.thrift.TColumn();
+                     _elem159.read(iprot);
+                     struct.columns.add(_elem159);
+@@ -7828,7 +9260,7 @@ import org.slf4j.LoggerFactory;
+                   struct.ssiList = new ArrayList<org.apache.accumulo.core.data.thrift.IterInfo>(_list160.size);
+                   for (int _i161 = 0; _i161 < _list160.size; ++_i161)
+                   {
+-                    org.apache.accumulo.core.data.thrift.IterInfo _elem162; // required
++                    org.apache.accumulo.core.data.thrift.IterInfo _elem162;
+                     _elem162 = new org.apache.accumulo.core.data.thrift.IterInfo();
+                     _elem162.read(iprot);
+                     struct.ssiList.add(_elem162);
+@@ -7847,16 +9279,16 @@ import org.slf4j.LoggerFactory;
+                   struct.ssio = new HashMap<String,Map<String,String>>(2*_map163.size);
+                   for (int _i164 = 0; _i164 < _map163.size; ++_i164)
+                   {
+-                    String _key165; // required
+-                    Map<String,String> _val166; // required
++                    String _key165;
++                    Map<String,String> _val166;
+                     _key165 = iprot.readString();
+                     {
+                       org.apache.thrift.protocol.TMap _map167 = iprot.readMapBegin();
+                       _val166 = new HashMap<String,String>(2*_map167.size);
+                       for (int _i168 = 0; _i168 < _map167.size; ++_i168)
+                       {
+-                        String _key169; // required
+-                        String _val170; // required
++                        String _key169;
++                        String _val170;
+                         _key169 = iprot.readString();
+                         _val170 = iprot.readString();
+                         _val166.put(_key169, _val170);
+@@ -7879,7 +9311,7 @@ import org.slf4j.LoggerFactory;
+                   struct.authorizations = new ArrayList<ByteBuffer>(_list171.size);
+                   for (int _i172 = 0; _i172 < _list171.size; ++_i172)
+                   {
+-                    ByteBuffer _elem173; // required
++                    ByteBuffer _elem173;
+                     _elem173 = iprot.readBinary();
+                     struct.authorizations.add(_elem173);
+                   }
+@@ -8137,8 +9569,8 @@ import org.slf4j.LoggerFactory;
+             struct.batch = new HashMap<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TRange>>(2*_map188.size);
+             for (int _i189 = 0; _i189 < _map188.size; ++_i189)
+             {
+-              org.apache.accumulo.core.data.thrift.TKeyExtent _key190; // required
+-              List<org.apache.accumulo.core.data.thrift.TRange> _val191; // required
++              org.apache.accumulo.core.data.thrift.TKeyExtent _key190;
++              List<org.apache.accumulo.core.data.thrift.TRange> _val191;
+               _key190 = new org.apache.accumulo.core.data.thrift.TKeyExtent();
+               _key190.read(iprot);
+               {
+@@ -8146,7 +9578,7 @@ import org.slf4j.LoggerFactory;
+                 _val191 = new ArrayList<org.apache.accumulo.core.data.thrift.TRange>(_list192.size);
+                 for (int _i193 = 0; _i193 < _list192.size; ++_i193)
+                 {
+-                  org.apache.accumulo.core.data.thrift.TRange _elem194; // required
++                  org.apache.accumulo.core.data.thrift.TRange _elem194;
+                   _elem194 = new org.apache.accumulo.core.data.thrift.TRange();
+                   _elem194.read(iprot);
+                   _val191.add(_elem194);
+@@ -8163,7 +9595,7 @@ import org.slf4j.LoggerFactory;
+             struct.columns = new ArrayList<org.apache.accumulo.core.data.thrift.TColumn>(_list195.size);
+             for (int _i196 = 0; _i196 < _list195.size; ++_i196)
+             {
+-              org.apache.accumulo.core.data.thrift.TColumn _elem197; // required
++              org.apache.accumulo.core.data.thrift.TColumn _elem197;
+               _elem197 = new org.apache.accumulo.core.data.thrift.TColumn();
+               _elem197.read(iprot);
+               struct.columns.add(_elem197);
+@@ -8177,7 +9609,7 @@ import org.slf4j.LoggerFactory;
+             struct.ssiList = new ArrayList<org.apache.accumulo.core.data.thrift.IterInfo>(_list198.size);
+             for (int _i199 = 0; _i199 < _list198.size; ++_i199)
+             {
+-              org.apache.accumulo.core.data.thrift.IterInfo _elem200; // required
++              org.apache.accumulo.core.data.thrift.IterInfo _elem200;
+               _elem200 = new org.apache.accumulo.core.data.thrift.IterInfo();
+               _elem200.read(iprot);
+               struct.ssiList.add(_elem200);
+@@ -8191,16 +9623,16 @@ import org.slf4j.LoggerFactory;
+             struct.ssio = new HashMap<String,Map<String,String>>(2*_map201.size);
+             for (int _i202 = 0; _i202 < _map201.size; ++_i202)
+             {
+-              String _key203; // required
+-              Map<String,String> _val204; // required
++              String _key203;
++              Map<String,String> _val204;
+               _key203 = iprot.readString();
+               {
+                 org.apache.thrift.protocol.TMap _map205 = new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, iprot.readI32());
+                 _val204 = new HashMap<String,String>(2*_map205.size);
+                 for (int _i206 = 0; _i206 < _map205.size; ++_i206)
+                 {
+-                  String _key207; // required
+-                  String _val208; // required
++                  String _key207;
++                  String _val208;
+                   _key207 = iprot.readString();
+                   _val208 = iprot.readString();
+                   _val204.put(_key207, _val208);
+@@ -8217,7 +9649,7 @@ import org.slf4j.LoggerFactory;
+             struct.authorizations = new ArrayList<ByteBuffer>(_list209.size);
+             for (int _i210 = 0; _i210 < _list209.size; ++_i210)
+             {
+-              ByteBuffer _elem211; // required
++              ByteBuffer _elem211;
+               _elem211 = iprot.readBinary();
+               struct.authorizations.add(_elem211);
+             }
+@@ -8233,7 +9665,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class startMultiScan_result implements org.apache.thrift.TBase<startMultiScan_result, startMultiScan_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class startMultiScan_result implements org.apache.thrift.TBase<startMultiScan_result, startMultiScan_result._Fields>, java.io.Serializable, Cloneable, Comparable<startMultiScan_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("startMultiScan_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRUCT, (short)0);
+@@ -8490,30 +9922,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(startMultiScan_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      startMultiScan_result typedOther = (startMultiScan_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -8694,7 +10126,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class continueMultiScan_args implements org.apache.thrift.TBase<continueMultiScan_args, continueMultiScan_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class continueMultiScan_args implements org.apache.thrift.TBase<continueMultiScan_args, continueMultiScan_args._Fields>, java.io.Serializable, Cloneable, Comparable<continueMultiScan_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("continueMultiScan_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+@@ -8953,30 +10385,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(continueMultiScan_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      continueMultiScan_args typedOther = (continueMultiScan_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetScanID()).compareTo(typedOther.isSetScanID());
++      lastComparison = Boolean.valueOf(isSetScanID()).compareTo(other.isSetScanID());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetScanID()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanID, typedOther.scanID);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanID, other.scanID);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -9151,7 +10583,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class continueMultiScan_result implements org.apache.thrift.TBase<continueMultiScan_result, continueMultiScan_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class continueMultiScan_result implements org.apache.thrift.TBase<continueMultiScan_result, continueMultiScan_result._Fields>, java.io.Serializable, Cloneable, Comparable<continueMultiScan_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("continueMultiScan_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRUCT, (short)0);
+@@ -9408,30 +10840,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(continueMultiScan_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      continueMultiScan_result typedOther = (continueMultiScan_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNssi()).compareTo(typedOther.isSetNssi());
++      lastComparison = Boolean.valueOf(isSetNssi()).compareTo(other.isSetNssi());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNssi()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nssi, typedOther.nssi);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nssi, other.nssi);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -9612,7 +11044,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class closeMultiScan_args implements org.apache.thrift.TBase<closeMultiScan_args, closeMultiScan_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class closeMultiScan_args implements org.apache.thrift.TBase<closeMultiScan_args, closeMultiScan_args._Fields>, java.io.Serializable, Cloneable, Comparable<closeMultiScan_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("closeMultiScan_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+@@ -9871,30 +11303,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(closeMultiScan_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      closeMultiScan_args typedOther = (closeMultiScan_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetScanID()).compareTo(typedOther.isSetScanID());
++      lastComparison = Boolean.valueOf(isSetScanID()).compareTo(other.isSetScanID());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetScanID()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanID, typedOther.scanID);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanID, other.scanID);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -10069,7 +11501,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class closeMultiScan_result implements org.apache.thrift.TBase<closeMultiScan_result, closeMultiScan_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class closeMultiScan_result implements org.apache.thrift.TBase<closeMultiScan_result, closeMultiScan_result._Fields>, java.io.Serializable, Cloneable, Comparable<closeMultiScan_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("closeMultiScan_result");
+ 
+     private static final org.apache.thrift.protocol.TField NSSI_FIELD_DESC = new org.apache.thrift.protocol.TField("nssi", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -10267,20 +11699,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(closeMultiScan_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      closeMultiScan_result typedOther = (closeMultiScan_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetNssi()).compareTo(typedOther.isSetNssi());
++      lastComparison = Boolean.valueOf(isSetNssi()).compareTo(other.isSetNssi());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNssi()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nssi, typedOther.nssi);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nssi, other.nssi);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -10425,7 +11857,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class startUpdate_args implements org.apache.thrift.TBase<startUpdate_args, startUpdate_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class startUpdate_args implements org.apache.thrift.TBase<startUpdate_args, startUpdate_args._Fields>, java.io.Serializable, Cloneable, Comparable<startUpdate_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("startUpdate_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+@@ -10682,30 +12114,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(startUpdate_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      startUpdate_args typedOther = (startUpdate_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -10889,7 +12321,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class startUpdate_result implements org.apache.thrift.TBase<startUpdate_result, startUpdate_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class startUpdate_result implements org.apache.thrift.TBase<startUpdate_result, startUpdate_result._Fields>, java.io.Serializable, Cloneable, Comparable<startUpdate_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("startUpdate_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.I64, (short)0);
+@@ -11148,30 +12580,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(startUpdate_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      startUpdate_result typedOther = (startUpdate_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -11345,7 +12777,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class applyUpdates_args implements org.apache.thrift.TBase<applyUpdates_args, applyUpdates_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class applyUpdates_args implements org.apache.thrift.TBase<applyUpdates_args, applyUpdates_args._Fields>, java.io.Serializable, Cloneable, Comparable<applyUpdates_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("applyUpdates_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -11480,7 +12912,7 @@ import org.slf4j.LoggerFactory;
+         this.keyExtent = new org.apache.accumulo.core.data.thrift.TKeyExtent(other.keyExtent);
+       }
+       if (other.isSetMutations()) {
+-        List<org.apache.accumulo.core.data.thrift.TMutation> __this__mutations = new ArrayList<org.apache.accumulo.core.data.thrift.TMutation>();
++        List<org.apache.accumulo.core.data.thrift.TMutation> __this__mutations = new ArrayList<org.apache.accumulo.core.data.thrift.TMutation>(other.mutations.size());
+         for (org.apache.accumulo.core.data.thrift.TMutation other_element : other.mutations) {
+           __this__mutations.add(new org.apache.accumulo.core.data.thrift.TMutation(other_element));
+         }
+@@ -11742,50 +13174,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(applyUpdates_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      applyUpdates_args typedOther = (applyUpdates_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetUpdateID()).compareTo(typedOther.isSetUpdateID());
++      lastComparison = Boolean.valueOf(isSetUpdateID()).compareTo(other.isSetUpdateID());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetUpdateID()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.updateID, typedOther.updateID);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.updateID, other.updateID);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetKeyExtent()).compareTo(typedOther.isSetKeyExtent());
++      lastComparison = Boolean.valueOf(isSetKeyExtent()).compareTo(other.isSetKeyExtent());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetKeyExtent()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.keyExtent, typedOther.keyExtent);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.keyExtent, other.keyExtent);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetMutations()).compareTo(typedOther.isSetMutations());
++      lastComparison = Boolean.valueOf(isSetMutations()).compareTo(other.isSetMutations());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetMutations()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.mutations, typedOther.mutations);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.mutations, other.mutations);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -11921,7 +13353,7 @@ import org.slf4j.LoggerFactory;
+                   struct.mutations = new ArrayList<org.apache.accumulo.core.data.thrift.TMutation>(_list212.size);
+                   for (int _i213 = 0; _i213 < _list212.size; ++_i213)
+                   {
+-                    org.apache.accumulo.core.data.thrift.TMutation _elem214; // required
++                    org.apache.accumulo.core.data.thrift.TMutation _elem214;
+                     _elem214 = new org.apache.accumulo.core.data.thrift.TMutation();
+                     _elem214.read(iprot);
+                     struct.mutations.add(_elem214);
+@@ -12048,7 +13480,7 @@ import org.slf4j.LoggerFactory;
+             struct.mutations = new ArrayList<org.apache.accumulo.core.data.thrift.TMutation>(_list217.size);
+             for (int _i218 = 0; _i218 < _list217.size; ++_i218)
+             {
+-              org.apache.accumulo.core.data.thrift.TMutation _elem219; // required
++              org.apache.accumulo.core.data.thrift.TMutation _elem219;
+               _elem219 = new org.apache.accumulo.core.data.thrift.TMutation();
+               _elem219.read(iprot);
+               struct.mutations.add(_elem219);
+@@ -12061,7 +13493,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class closeUpdate_args implements org.apache.thrift.TBase<closeUpdate_args, closeUpdate_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class closeUpdate_args implements org.apache.thrift.TBase<closeUpdate_args, closeUpdate_args._Fields>, java.io.Serializable, Cloneable, Comparable<closeUpdate_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("closeUpdate_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+@@ -12320,30 +13752,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(closeUpdate_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      closeUpdate_args typedOther = (closeUpdate_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetUpdateID()).compareTo(typedOther.isSetUpdateID());
++      lastComparison = Boolean.valueOf(isSetUpdateID()).compareTo(other.isSetUpdateID());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetUpdateID()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.updateID, typedOther.updateID);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.updateID, other.updateID);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -12518,7 +13950,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class closeUpdate_result implements org.apache.thrift.TBase<closeUpdate_result, closeUpdate_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class closeUpdate_result implements org.apache.thrift.TBase<closeUpdate_result, closeUpdate_result._Fields>, java.io.Serializable, Cloneable, Comparable<closeUpdate_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("closeUpdate_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRUCT, (short)0);
+@@ -12775,30 +14207,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(closeUpdate_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      closeUpdate_result typedOther = (closeUpdate_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNssi()).compareTo(typedOther.isSetNssi());
++      lastComparison = Boolean.valueOf(isSetNssi()).compareTo(other.isSetNssi());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNssi()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nssi, typedOther.nssi);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nssi, other.nssi);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -12979,7 +14411,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class update_args implements org.apache.thrift.TBase<update_args, update_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class update_args implements org.apache.thrift.TBase<update_args, update_args._Fields>, java.io.Serializable, Cloneable, Comparable<update_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("update_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)4);
+@@ -13354,50 +14786,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(update_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      update_args typedOther = (update_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetKeyExtent()).compareTo(typedOther.isSetKeyExtent());
++      lastComparison = Boolean.valueOf(isSetKeyExtent()).compareTo(other.isSetKeyExtent());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetKeyExtent()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.keyExtent, typedOther.keyExtent);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.keyExtent, other.keyExtent);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetMutation()).compareTo(typedOther.isSetMutation());
++      lastComparison = Boolean.valueOf(isSetMutation()).compareTo(other.isSetMutation());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetMutation()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.mutation, typedOther.mutation);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.mutation, other.mutation);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -13653,7 +15085,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class update_result implements org.apache.thrift.TBase<update_result, update_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class update_result implements org.apache.thrift.TBase<update_result, update_result._Fields>, java.io.Serializable, Cloneable, Comparable<update_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("update_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -13969,40 +15401,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(update_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      update_result typedOther = (update_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNste()).compareTo(typedOther.isSetNste());
++      lastComparison = Boolean.valueOf(isSetNste()).compareTo(other.isSetNste());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNste()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nste, typedOther.nste);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nste, other.nste);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCve()).compareTo(typedOther.isSetCve());
++      lastComparison = Boolean.valueOf(isSetCve()).compareTo(other.isSetCve());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCve()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cve, typedOther.cve);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cve, other.cve);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -14213,7 +15645,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class startConditionalUpdate_args implements org.apache.thrift.TBase<startConditionalUpdate_args, startConditionalUpdate_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class startConditionalUpdate_args implements org.apache.thrift.TBase<startConditionalUpdate_args, startConditionalUpdate_args._Fields>, java.io.Serializable, Cloneable, Comparable<startConditionalUpdate_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("startConditionalUpdate_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -14343,12 +15775,7 @@ import org.slf4j.LoggerFactory;
+         this.credentials = new org.apache.accumulo.core.security.thrift.TCredentials(other.credentials);
+       }
+       if (other.isSetAuthorizations()) {
+-        List<ByteBuffer> __this__authorizations = new ArrayList<ByteBuffer>();
+-        for (ByteBuffer other_element : other.authorizations) {
+-          ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-          __this__authorizations.add(temp_binary_element);
+-        }
++        List<ByteBuffer> __this__authorizations = new ArrayList<ByteBuffer>(other.authorizations);
+         this.authorizations = __this__authorizations;
+       }
+       if (other.isSetTableID()) {
+@@ -14610,50 +16037,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(startConditionalUpdate_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      startConditionalUpdate_args typedOther = (startConditionalUpdate_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(typedOther.isSetAuthorizations());
++      lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(other.isSetAuthorizations());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetAuthorizations()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, typedOther.authorizations);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, other.authorizations);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableID()).compareTo(typedOther.isSetTableID());
++      lastComparison = Boolean.valueOf(isSetTableID()).compareTo(other.isSetTableID());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableID()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableID, typedOther.tableID);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableID, other.tableID);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -14783,7 +16210,7 @@ import org.slf4j.LoggerFactory;
+                   struct.authorizations = new ArrayList<ByteBuffer>(_list220.size);
+                   for (int _i221 = 0; _i221 < _list220.size; ++_i221)
+                   {
+-                    ByteBuffer _elem222; // required
++                    ByteBuffer _elem222;
+                     _elem222 = iprot.readBinary();
+                     struct.authorizations.add(_elem222);
+                   }
+@@ -14915,7 +16342,7 @@ import org.slf4j.LoggerFactory;
+             struct.authorizations = new ArrayList<ByteBuffer>(_list225.size);
+             for (int _i226 = 0; _i226 < _list225.size; ++_i226)
+             {
+-              ByteBuffer _elem227; // required
++              ByteBuffer _elem227;
+               _elem227 = iprot.readBinary();
+               struct.authorizations.add(_elem227);
+             }
+@@ -14931,7 +16358,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class startConditionalUpdate_result implements org.apache.thrift.TBase<startConditionalUpdate_result, startConditionalUpdate_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class startConditionalUpdate_result implements org.apache.thrift.TBase<startConditionalUpdate_result, startConditionalUpdate_result._Fields>, java.io.Serializable, Cloneable, Comparable<startConditionalUpdate_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("startConditionalUpdate_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRUCT, (short)0);
+@@ -15188,30 +16615,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(startConditionalUpdate_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      startConditionalUpdate_result typedOther = (startConditionalUpdate_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -15392,7 +16819,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class conditionalUpdate_args implements org.apache.thrift.TBase<conditionalUpdate_args, conditionalUpdate_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class conditionalUpdate_args implements org.apache.thrift.TBase<conditionalUpdate_args, conditionalUpdate_args._Fields>, java.io.Serializable, Cloneable, Comparable<conditionalUpdate_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("conditionalUpdate_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -15527,10 +16954,7 @@ import org.slf4j.LoggerFactory;
+         this.mutations = other.mutations;
+       }
+       if (other.isSetSymbols()) {
+-        List<String> __this__symbols = new ArrayList<String>();
+-        for (String other_element : other.symbols) {
+-          __this__symbols.add(other_element);
+-        }
++        List<String> __this__symbols = new ArrayList<String>(other.symbols);
+         this.symbols = __this__symbols;
+       }
+     }
+@@ -15800,50 +17224,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(conditionalUpdate_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      conditionalUpdate_args typedOther = (conditionalUpdate_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSessID()).compareTo(typedOther.isSetSessID());
++      lastComparison = Boolean.valueOf(isSetSessID()).compareTo(other.isSetSessID());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSessID()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sessID, typedOther.sessID);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sessID, other.sessID);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetMutations()).compareTo(typedOther.isSetMutations());
++      lastComparison = Boolean.valueOf(isSetMutations()).compareTo(other.isSetMutations());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetMutations()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.mutations, typedOther.mutations);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.mutations, other.mutations);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSymbols()).compareTo(typedOther.isSetSymbols());
++      lastComparison = Boolean.valueOf(isSetSymbols()).compareTo(other.isSetSymbols());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSymbols()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.symbols, typedOther.symbols);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.symbols, other.symbols);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -15967,8 +17391,8 @@ import org.slf4j.LoggerFactory;
+                   struct.mutations = new HashMap<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TConditionalMutation>>(2*_map228.size);
+                   for (int _i229 = 0; _i229 < _map228.size; ++_i229)
+                   {
+-                    org.apache.accumulo.core.data.thrift.TKeyExtent _key230; // required
+-                    List<org.apache.accumulo.core.data.thrift.TConditionalMutation> _val231; // required
++                    org.apache.accumulo.core.data.thrift.TKeyExtent _key230;
++                    List<org.apache.accumulo.core.data.thrift.TConditionalMutation> _val231;
+                     _key230 = new org.apache.accumulo.core.data.thrift.TKeyExtent();
+                     _key230.read(iprot);
+                     {
+@@ -15976,7 +17400,7 @@ import org.slf4j.LoggerFactory;
+                       _val231 = new ArrayList<org.apache.accumulo.core.data.thrift.TConditionalMutation>(_list232.size);
+                       for (int _i233 = 0; _i233 < _list232.size; ++_i233)
+                       {
+-                        org.apache.accumulo.core.data.thrift.TConditionalMutation _elem234; // required
++                        org.apache.accumulo.core.data.thrift.TConditionalMutation _elem234;
+                         _elem234 = new org.apache.accumulo.core.data.thrift.TConditionalMutation();
+                         _elem234.read(iprot);
+                         _val231.add(_elem234);
+@@ -15999,7 +17423,7 @@ import org.slf4j.LoggerFactory;
+                   struct.symbols = new ArrayList<String>(_list235.size);
+                   for (int _i236 = 0; _i236 < _list235.size; ++_i236)
+                   {
+-                    String _elem237; // required
++                    String _elem237;
+                     _elem237 = iprot.readString();
+                     struct.symbols.add(_elem237);
+                   }
+@@ -16148,8 +17572,8 @@ import org.slf4j.LoggerFactory;
+             struct.mutations = new HashMap<org.apache.accumulo.core.data.thrift.TKeyExtent,List<org.apache.accumulo.core.data.thrift.TConditionalMutation>>(2*_map244.size);
+             for (int _i245 = 0; _i245 < _map244.size; ++_i245)
+             {
+-              org.apache.accumulo.core.data.thrift.TKeyExtent _key246; // required
+-              List<org.apache.accumulo.core.data.thrift.TConditionalMutation> _val247; // required
++              org.apache.accumulo.core.data.thrift.TKeyExtent _key246;
++              List<org.apache.accumulo.core.data.thrift.TConditionalMutation> _val247;
+               _key246 = new org.apache.accumulo.core.data.thrift.TKeyExtent();
+               _key246.read(iprot);
+               {
+@@ -16157,7 +17581,7 @@ import org.slf4j.LoggerFactory;
+                 _val247 = new ArrayList<org.apache.accumulo.core.data.thrift.TConditionalMutation>(_list248.size);
+                 for (int _i249 = 0; _i249 < _list248.size; ++_i249)
+                 {
+-                  org.apache.accumulo.core.data.thrift.TConditionalMutation _elem250; // required
++                  org.apache.accumulo.core.data.thrift.TConditionalMutation _elem250;
+                   _elem250 = new org.apache.accumulo.core.data.thrift.TConditionalMutation();
+                   _elem250.read(iprot);
+                   _val247.add(_elem250);
+@@ -16174,7 +17598,7 @@ import org.slf4j.LoggerFactory;
+             struct.symbols = new ArrayList<String>(_list251.size);
+             for (int _i252 = 0; _i252 < _list251.size; ++_i252)
+             {
+-              String _elem253; // required
++              String _elem253;
+               _elem253 = iprot.readString();
+               struct.symbols.add(_elem253);
+             }
+@@ -16186,7 +17610,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class conditionalUpdate_result implements org.apache.thrift.TBase<conditionalUpdate_result, conditionalUpdate_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class conditionalUpdate_result implements org.apache.thrift.TBase<conditionalUpdate_result, conditionalUpdate_result._Fields>, java.io.Serializable, Cloneable, Comparable<conditionalUpdate_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("conditionalUpdate_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0);
+@@ -16292,7 +17716,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public conditionalUpdate_result(conditionalUpdate_result other) {
+       if (other.isSetSuccess()) {
+-        List<org.apache.accumulo.core.data.thrift.TCMResult> __this__success = new ArrayList<org.apache.accumulo.core.data.thrift.TCMResult>();
++        List<org.apache.accumulo.core.data.thrift.TCMResult> __this__success = new ArrayList<org.apache.accumulo.core.data.thrift.TCMResult>(other.success.size());
+         for (org.apache.accumulo.core.data.thrift.TCMResult other_element : other.success) {
+           __this__success.add(new org.apache.accumulo.core.data.thrift.TCMResult(other_element));
+         }
+@@ -16463,30 +17887,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(conditionalUpdate_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      conditionalUpdate_result typedOther = (conditionalUpdate_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNssi()).compareTo(typedOther.isSetNssi());
++      lastComparison = Boolean.valueOf(isSetNssi()).compareTo(other.isSetNssi());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNssi()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nssi, typedOther.nssi);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nssi, other.nssi);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -16576,7 +18000,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new ArrayList<org.apache.accumulo.core.data.thrift.TCMResult>(_list254.size);
+                   for (int _i255 = 0; _i255 < _list254.size; ++_i255)
+                   {
+-                    org.apache.accumulo.core.data.thrift.TCMResult _elem256; // required
++                    org.apache.accumulo.core.data.thrift.TCMResult _elem256;
+                     _elem256 = new org.apache.accumulo.core.data.thrift.TCMResult();
+                     _elem256.read(iprot);
+                     struct.success.add(_elem256);
+@@ -16678,7 +18102,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new ArrayList<org.apache.accumulo.core.data.thrift.TCMResult>(_list259.size);
+             for (int _i260 = 0; _i260 < _list259.size; ++_i260)
+             {
+-              org.apache.accumulo.core.data.thrift.TCMResult _elem261; // required
++              org.apache.accumulo.core.data.thrift.TCMResult _elem261;
+               _elem261 = new org.apache.accumulo.core.data.thrift.TCMResult();
+               _elem261.read(iprot);
+               struct.success.add(_elem261);
+@@ -16696,7 +18120,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class invalidateConditionalUpdate_args implements org.apache.thrift.TBase<invalidateConditionalUpdate_args, invalidateConditionalUpdate_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class invalidateConditionalUpdate_args implements org.apache.thrift.TBase<invalidateConditionalUpdate_args, invalidateConditionalUpdate_args._Fields>, java.io.Serializable, Cloneable, Comparable<invalidateConditionalUpdate_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("invalidateConditionalUpdate_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -16955,30 +18379,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(invalidateConditionalUpdate_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      invalidateConditionalUpdate_args typedOther = (invalidateConditionalUpdate_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSessID()).compareTo(typedOther.isSetSessID());
++      lastComparison = Boolean.valueOf(isSetSessID()).compareTo(other.isSetSessID());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSessID()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sessID, typedOther.sessID);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sessID, other.sessID);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -17153,7 +18577,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class invalidateConditionalUpdate_result implements org.apache.thrift.TBase<invalidateConditionalUpdate_result, invalidateConditionalUpdate_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class invalidateConditionalUpdate_result implements org.apache.thrift.TBase<invalidateConditionalUpdate_result, invalidateConditionalUpdate_result._Fields>, java.io.Serializable, Cloneable, Comparable<invalidateConditionalUpdate_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("invalidateConditionalUpdate_result");
+ 
+ 
+@@ -17286,13 +18710,13 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(invalidateConditionalUpdate_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      invalidateConditionalUpdate_result typedOther = (invalidateConditionalUpdate_result)other;
+ 
+       return 0;
+     }
+@@ -17399,7 +18823,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class closeConditionalUpdate_args implements org.apache.thrift.TBase<closeConditionalUpdate_args, closeConditionalUpdate_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class closeConditionalUpdate_args implements org.apache.thrift.TBase<closeConditionalUpdate_args, closeConditionalUpdate_args._Fields>, java.io.Serializable, Cloneable, Comparable<closeConditionalUpdate_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("closeConditionalUpdate_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -17658,30 +19082,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(closeConditionalUpdate_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      closeConditionalUpdate_args typedOther = (closeConditionalUpdate_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSessID()).compareTo(typedOther.isSetSessID());
++      lastComparison = Boolean.valueOf(isSetSessID()).compareTo(other.isSetSessID());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSessID()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sessID, typedOther.sessID);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sessID, other.sessID);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -17856,7 +19280,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class bulkImport_args implements org.apache.thrift.TBase<bulkImport_args, bulkImport_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class bulkImport_args implements org.apache.thrift.TBase<bulkImport_args, bulkImport_args._Fields>, java.io.Serializable, Cloneable, Comparable<bulkImport_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("bulkImport_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+@@ -18303,60 +19727,60 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(bulkImport_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      bulkImport_args typedOther = (bulkImport_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTid()).compareTo(typedOther.isSetTid());
++      lastComparison = Boolean.valueOf(isSetTid()).compareTo(other.isSetTid());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTid()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tid, typedOther.tid);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tid, other.tid);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetFiles()).compareTo(typedOther.isSetFiles());
++      lastComparison = Boolean.valueOf(isSetFiles()).compareTo(other.isSetFiles());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetFiles()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.files, typedOther.files);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.files, other.files);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSetTime()).compareTo(typedOther.isSetSetTime());
++      lastComparison = Boolean.valueOf(isSetSetTime()).compareTo(other.isSetSetTime());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSetTime()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.setTime, typedOther.setTime);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.setTime, other.setTime);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -18496,8 +19920,8 @@ import org.slf4j.LoggerFactory;
+                   struct.files = new HashMap<org.apache.accumulo.core.data.thrift.TKeyExtent,Map<String,org.apache.accumulo.core.data.thrift.MapFileInfo>>(2*_map262.size);
+                   for (int _i263 = 0; _i263 < _map262.size; ++_i263)
+                   {
+-                    org.apache.accumulo.core.data.thrift.TKeyExtent _key264; // required
+-                    Map<String,org.apache.accumulo.core.data.thrift.MapFileInfo> _val265; // required
++                    org.apache.accumulo.core.data.thrift.TKeyExtent _key264;
++                    Map<String,org.apache.accumulo.core.data.thrift.MapFileInfo> _val265;
+                     _key264 = new org.apache.accumulo.core.data.thrift.TKeyExtent();
+                     _key264.read(iprot);
+                     {
+@@ -18505,8 +19929,8 @@ import org.slf4j.LoggerFactory;
+                       _val265 = new HashMap<String,org.apache.accumulo.core.data.thrift.MapFileInfo>(2*_map266.size);
+                       for (int _i267 = 0; _i267 < _map266.size; ++_i267)
+                       {
+-                        String _key268; // required
+-                        org.apache.accumulo.core.data.thrift.MapFileInfo _val269; // required
++                        String _key268;
++                        org.apache.accumulo.core.data.thrift.MapFileInfo _val269;
+                         _key268 = iprot.readString();
+                         _val269 = new org.apache.accumulo.core.data.thrift.MapFileInfo();
+                         _val269.read(iprot);
+@@ -18672,8 +20096,8 @@ import org.slf4j.LoggerFactory;
+             struct.files = new HashMap<org.apache.accumulo.core.data.thrift.TKeyExtent,Map<String,org.apache.accumulo.core.data.thrift.MapFileInfo>>(2*_map274.size);
+             for (int _i275 = 0; _i275 < _map274.size; ++_i275)
+             {
+-              org.apache.accumulo.core.data.thrift.TKeyExtent _key276; // required
+-              Map<String,org.apache.accumulo.core.data.thrift.MapFileInfo> _val277; // required
++              org.apache.accumulo.core.data.thrift.TKeyExtent _key276;
++              Map<String,org.apache.accumulo.core.data.thrift.MapFileInfo> _val277;
+               _key276 = new org.apache.accumulo.core.data.thrift.TKeyExtent();
+               _key276.read(iprot);
+               {
+@@ -18681,8 +20105,8 @@ import org.slf4j.LoggerFactory;
+                 _val277 = new HashMap<String,org.apache.accumulo.core.data.thrift.MapFileInfo>(2*_map278.size);
+                 for (int _i279 = 0; _i279 < _map278.size; ++_i279)
+                 {
+-                  String _key280; // required
+-                  org.apache.accumulo.core.data.thrift.MapFileInfo _val281; // required
++                  String _key280;
++                  org.apache.accumulo.core.data.thrift.MapFileInfo _val281;
+                   _key280 = iprot.readString();
+                   _val281 = new org.apache.accumulo.core.data.thrift.MapFileInfo();
+                   _val281.read(iprot);
+@@ -18703,7 +20127,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class bulkImport_result implements org.apache.thrift.TBase<bulkImport_result, bulkImport_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class bulkImport_result implements org.apache.thrift.TBase<bulkImport_result, bulkImport_result._Fields>, java.io.Serializable, Cloneable, Comparable<bulkImport_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("bulkImport_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0);
+@@ -18809,7 +20233,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public bulkImport_result(bulkImport_result other) {
+       if (other.isSetSuccess()) {
+-        List<org.apache.accumulo.core.data.thrift.TKeyExtent> __this__success = new ArrayList<org.apache.accumulo.core.data.thrift.TKeyExtent>();
++        List<org.apache.accumulo.core.data.thrift.TKeyExtent> __this__success = new ArrayList<org.apache.accumulo.core.data.thrift.TKeyExtent>(other.success.size());
+         for (org.apache.accumulo.core.data.thrift.TKeyExtent other_element : other.success) {
+           __this__success.add(new org.apache.accumulo.core.data.thrift.TKeyExtent(other_element));
+         }
+@@ -18980,30 +20404,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(bulkImport_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      bulkImport_result typedOther = (bulkImport_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -19093,7 +20517,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new ArrayList<org.apache.accumulo.core.data.thrift.TKeyExtent>(_list282.size);
+                   for (int _i283 = 0; _i283 < _list282.size; ++_i283)
+                   {
+-                    org.apache.accumulo.core.data.thrift.TKeyExtent _elem284; // required
++                    org.apache.accumulo.core.data.thrift.TKeyExtent _elem284;
+                     _elem284 = new org.apache.accumulo.core.data.thrift.TKeyExtent();
+                     _elem284.read(iprot);
+                     struct.success.add(_elem284);
+@@ -19195,7 +20619,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new ArrayList<org.apache.accumulo.core.data.thrift.TKeyExtent>(_list287.size);
+             for (int _i288 = 0; _i288 < _list287.size; ++_i288)
+             {
+-              org.apache.accumulo.core.data.thrift.TKeyExtent _elem289; // required
++              org.apache.accumulo.core.data.thrift.TKeyExtent _elem289;
+               _elem289 = new org.apache.accumulo.core.data.thrift.TKeyExtent();
+               _elem289.read(iprot);
+               struct.success.add(_elem289);
+@@ -19213,7 +20637,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class splitTablet_args implements org.apache.thrift.TBase<splitTablet_args, splitTablet_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class splitTablet_args implements org.apache.thrift.TBase<splitTablet_args, splitTablet_args._Fields>, java.io.Serializable, Cloneable, Comparable<splitTablet_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("splitTablet_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)4);
+@@ -19599,50 +21023,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(splitTablet_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      splitTablet_args typedOther = (splitTablet_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetExtent()).compareTo(typedOther.isSetExtent());
++      lastComparison = Boolean.valueOf(isSetExtent()).compareTo(other.isSetExtent());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetExtent()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, typedOther.extent);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, other.extent);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSplitPoint()).compareTo(typedOther.isSetSplitPoint());
++      lastComparison = Boolean.valueOf(isSetSplitPoint()).compareTo(other.isSetSplitPoint());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSplitPoint()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.splitPoint, typedOther.splitPoint);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.splitPoint, other.splitPoint);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -19893,7 +21317,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class splitTablet_result implements org.apache.thrift.TBase<splitTablet_result, splitTablet_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class splitTablet_result implements org.apache.thrift.TBase<splitTablet_result, splitTablet_result._Fields>, java.io.Serializable, Cloneable, Comparable<splitTablet_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("splitTablet_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -20150,30 +21574,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(splitTablet_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      splitTablet_result typedOther = (splitTablet_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNste()).compareTo(typedOther.isSetNste());
++      lastComparison = Boolean.valueOf(isSetNste()).compareTo(other.isSetNste());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNste()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nste, typedOther.nste);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nste, other.nste);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -20351,7 +21775,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class loadTablet_args implements org.apache.thrift.TBase<loadTablet_args, loadTablet_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class loadTablet_args implements org.apache.thrift.TBase<loadTablet_args, loadTablet_args._Fields>, java.io.Serializable, Cloneable, Comparable<loadTablet_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("loadTablet_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)5);
+@@ -20726,50 +22150,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(loadTablet_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      loadTablet_args typedOther = (loadTablet_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetLock()).compareTo(typedOther.isSetLock());
++      lastComparison = Boolean.valueOf(isSetLock()).compareTo(other.isSetLock());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLock()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lock, typedOther.lock);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lock, other.lock);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetExtent()).compareTo(typedOther.isSetExtent());
++      lastComparison = Boolean.valueOf(isSetExtent()).compareTo(other.isSetExtent());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetExtent()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, typedOther.extent);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, other.extent);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -21020,7 +22444,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class unloadTablet_args implements org.apache.thrift.TBase<unloadTablet_args, unloadTablet_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class unloadTablet_args implements org.apache.thrift.TBase<unloadTablet_args, unloadTablet_args._Fields>, java.io.Serializable, Cloneable, Comparable<unloadTablet_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("unloadTablet_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)5);
+@@ -21456,60 +22880,60 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(unloadTablet_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      unloadTablet_args typedOther = (unloadTablet_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetLock()).compareTo(typedOther.isSetLock());
++      lastComparison = Boolean.valueOf(isSetLock()).compareTo(other.isSetLock());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLock()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lock, typedOther.lock);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lock, other.lock);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetExtent()).compareTo(typedOther.isSetExtent());
++      lastComparison = Boolean.valueOf(isSetExtent()).compareTo(other.isSetExtent());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetExtent()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, typedOther.extent);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, other.extent);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSave()).compareTo(typedOther.isSetSave());
++      lastComparison = Boolean.valueOf(isSetSave()).compareTo(other.isSetSave());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSave()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.save, typedOther.save);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.save, other.save);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -21787,7 +23211,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class flush_args implements org.apache.thrift.TBase<flush_args, flush_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class flush_args implements org.apache.thrift.TBase<flush_args, flush_args._Fields>, java.io.Serializable, Cloneable, Comparable<flush_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("flush_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)4);
+@@ -22302,70 +23726,70 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(flush_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      flush_args typedOther = (flush_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetLock()).compareTo(typedOther.isSetLock());
++      lastComparison = Boolean.valueOf(isSetLock()).compareTo(other.isSetLock());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLock()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lock, typedOther.lock);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lock, other.lock);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableId()).compareTo(typedOther.isSetTableId());
++      lastComparison = Boolean.valueOf(isSetTableId()).compareTo(other.isSetTableId());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableId()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableId, typedOther.tableId);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableId, other.tableId);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetStartRow()).compareTo(typedOther.isSetStartRow());
++      lastComparison = Boolean.valueOf(isSetStartRow()).compareTo(other.isSetStartRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetStartRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startRow, typedOther.startRow);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startRow, other.startRow);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(typedOther.isSetEndRow());
++      lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(other.isSetEndRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetEndRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, typedOther.endRow);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, other.endRow);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -22673,7 +24097,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class flushTablet_args implements org.apache.thrift.TBase<flushTablet_args, flushTablet_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class flushTablet_args implements org.apache.thrift.TBase<flushTablet_args, flushTablet_args._Fields>, java.io.Serializable, Cloneable, Comparable<flushTablet_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("flushTablet_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -23048,50 +24472,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(flushTablet_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      flushTablet_args typedOther = (flushTablet_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetLock()).compareTo(typedOther.isSetLock());
++      lastComparison = Boolean.valueOf(isSetLock()).compareTo(other.isSetLock());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLock()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lock, typedOther.lock);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lock, other.lock);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetExtent()).compareTo(typedOther.isSetExtent());
++      lastComparison = Boolean.valueOf(isSetExtent()).compareTo(other.isSetExtent());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetExtent()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, typedOther.extent);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, other.extent);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -23342,7 +24766,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class chop_args implements org.apache.thrift.TBase<chop_args, chop_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class chop_args implements org.apache.thrift.TBase<chop_args, chop_args._Fields>, java.io.Serializable, Cloneable, Comparable<chop_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("chop_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -23717,50 +25141,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(chop_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      chop_args typedOther = (chop_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetLock()).compareTo(typedOther.isSetLock());
++      lastComparison = Boolean.valueOf(isSetLock()).compareTo(other.isSetLock());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLock()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lock, typedOther.lock);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lock, other.lock);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetExtent()).compareTo(typedOther.isSetExtent());
++      lastComparison = Boolean.valueOf(isSetExtent()).compareTo(other.isSetExtent());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetExtent()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, typedOther.extent);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, other.extent);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -24011,7 +25435,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class compact_args implements org.apache.thrift.TBase<compact_args, compact_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class compact_args implements org.apache.thrift.TBase<compact_args, compact_args._Fields>, java.io.Serializable, Cloneable, Comparable<compact_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("compact_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -24526,70 +25950,70 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(compact_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      compact_args typedOther = (compact_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetLock()).compareTo(typedOther.isSetLock());
++      lastComparison = Boolean.valueOf(isSetLock()).compareTo(other.isSetLock());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLock()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lock, typedOther.lock);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lock, other.lock);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableId()).compareTo(typedOther.isSetTableId());
++      lastComparison = Boolean.valueOf(isSetTableId()).compareTo(other.isSetTableId());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableId()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableId, typedOther.tableId);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableId, other.tableId);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetStartRow()).compareTo(typedOther.isSetStartRow());
++      lastComparison = Boolean.valueOf(isSetStartRow()).compareTo(other.isSetStartRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetStartRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startRow, typedOther.startRow);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startRow, other.startRow);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(typedOther.isSetEndRow());
++      lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(other.isSetEndRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetEndRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, typedOther.endRow);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, other.endRow);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -24897,7 +26321,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getTabletServerStatus_args implements org.apache.thrift.TBase<getTabletServerStatus_args, getTabletServerStatus_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getTabletServerStatus_args implements org.apache.thrift.TBase<getTabletServerStatus_args, getTabletServerStatus_args._Fields>, java.io.Serializable, Cloneable, Comparable<getTabletServerStatus_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getTabletServerStatus_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+@@ -25154,30 +26578,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getTabletServerStatus_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getTabletServerStatus_args typedOther = (getTabletServerStatus_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -25361,7 +26785,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getTabletServerStatus_result implements org.apache.thrift.TBase<getTabletServerStatus_result, getTabletServerStatus_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getTabletServerStatus_result implements org.apache.thrift.TBase<getTabletServerStatus_result, getTabletServerStatus_result._Fields>, java.io.Serializable, Cloneable, Comparable<getTabletServerStatus_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getTabletServerStatus_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRUCT, (short)0);
+@@ -25618,30 +27042,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getTabletServerStatus_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getTabletServerStatus_result typedOther = (getTabletServerStatus_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -25822,7 +27246,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getTabletStats_args implements org.apache.thrift.TBase<getTabletStats_args, getTabletStats_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getTabletStats_args implements org.apache.thrift.TBase<getTabletStats_args, getTabletStats_args._Fields>, java.io.Serializable, Cloneable, Comparable<getTabletStats_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getTabletStats_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+@@ -26138,40 +27562,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getTabletStats_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getTabletStats_args typedOther = (getTabletStats_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableId()).compareTo(typedOther.isSetTableId());
++      lastComparison = Boolean.valueOf(isSetTableId()).compareTo(other.isSetTableId());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableId()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableId, typedOther.tableId);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableId, other.tableId);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -26386,7 +27810,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getTabletStats_result implements org.apache.thrift.TBase<getTabletStats_result, getTabletStats_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getTabletStats_result implements org.apache.thrift.TBase<getTabletStats_result, getTabletStats_result._Fields>, java.io.Serializable, Cloneable, Comparable<getTabletStats_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getTabletStats_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0);
+@@ -26492,7 +27916,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getTabletStats_result(getTabletStats_result other) {
+       if (other.isSetSuccess()) {
+-        List<TabletStats> __this__success = new ArrayList<TabletStats>();
++        List<TabletStats> __this__success = new ArrayList<TabletStats>(other.success.size());
+         for (TabletStats other_element : other.success) {
+           __this__success.add(new TabletStats(other_element));
+         }
+@@ -26663,30 +28087,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getTabletStats_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getTabletStats_result typedOther = (getTabletStats_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -26776,7 +28200,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new ArrayList<TabletStats>(_list290.size);
+                   for (int _i291 = 0; _i291 < _list290.size; ++_i291)
+                   {
+-                    TabletStats _elem292; // required
++                    TabletStats _elem292;
+                     _elem292 = new TabletStats();
+                     _elem292.read(iprot);
+                     struct.success.add(_elem292);
+@@ -26878,7 +28302,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new ArrayList<TabletStats>(_list295.size);
+             for (int _i296 = 0; _i296 < _list295.size; ++_i296)
+             {
+-              TabletStats _elem297; // required
++              TabletStats _elem297;
+               _elem297 = new TabletStats();
+               _elem297.read(iprot);
+               struct.success.add(_elem297);
+@@ -26896,7 +28320,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getHistoricalStats_args implements org.apache.thrift.TBase<getHistoricalStats_args, getHistoricalStats_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getHistoricalStats_args implements org.apache.thrift.TBase<getHistoricalStats_args, getHistoricalStats_args._Fields>, java.io.Serializable, Cloneable, Comparable<getHistoricalStats_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getHistoricalStats_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+@@ -27153,30 +28577,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getHistoricalStats_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getHistoricalStats_args typedOther = (getHistoricalStats_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -27360,7 +28784,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getHistoricalStats_result implements org.apache.thrift.TBase<getHistoricalStats_result, getHistoricalStats_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getHistoricalStats_result implements org.apache.thrift.TBase<getHistoricalStats_result, getHistoricalStats_result._Fields>, java.io.Serializable, Cloneable, Comparable<getHistoricalStats_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getHistoricalStats_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRUCT, (short)0);
+@@ -27617,30 +29041,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getHistoricalStats_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getHistoricalStats_result typedOther = (getHistoricalStats_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -27821,7 +29245,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class halt_args implements org.apache.thrift.TBase<halt_args, halt_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class halt_args implements org.apache.thrift.TBase<halt_args, halt_args._Fields>, java.io.Serializable, Cloneable, Comparable<halt_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("halt_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+@@ -28137,40 +29561,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(halt_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      halt_args typedOther = (halt_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetLock()).compareTo(typedOther.isSetLock());
++      lastComparison = Boolean.valueOf(isSetLock()).compareTo(other.isSetLock());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLock()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lock, typedOther.lock);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lock, other.lock);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -28385,7 +29809,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class halt_result implements org.apache.thrift.TBase<halt_result, halt_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class halt_result implements org.apache.thrift.TBase<halt_result, halt_result._Fields>, java.io.Serializable, Cloneable, Comparable<halt_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("halt_result");
+ 
+     private static final org.apache.thrift.protocol.TField SEC_FIELD_DESC = new org.apache.thrift.protocol.TField("sec", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -28583,20 +30007,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(halt_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      halt_result typedOther = (halt_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -28741,7 +30165,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class fastHalt_args implements org.apache.thrift.TBase<fastHalt_args, fastHalt_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class fastHalt_args implements org.apache.thrift.TBase<fastHalt_args, fastHalt_args._Fields>, java.io.Serializable, Cloneable, Comparable<fastHalt_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("fastHalt_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+@@ -29057,40 +30481,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(fastHalt_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      fastHalt_args typedOther = (fastHalt_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetLock()).compareTo(typedOther.isSetLock());
++      lastComparison = Boolean.valueOf(isSetLock()).compareTo(other.isSetLock());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLock()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lock, typedOther.lock);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lock, other.lock);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -29305,7 +30729,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getActiveScans_args implements org.apache.thrift.TBase<getActiveScans_args, getActiveScans_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getActiveScans_args implements org.apache.thrift.TBase<getActiveScans_args, getActiveScans_args._Fields>, java.io.Serializable, Cloneable, Comparable<getActiveScans_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getActiveScans_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+@@ -29562,30 +30986,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getActiveScans_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getActiveScans_args typedOther = (getActiveScans_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -29769,7 +31193,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getActiveScans_result implements org.apache.thrift.TBase<getActiveScans_result, getActiveScans_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getActiveScans_result implements org.apache.thrift.TBase<getActiveScans_result, getActiveScans_result._Fields>, java.io.Serializable, Cloneable, Comparable<getActiveScans_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getActiveScans_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0);
+@@ -29875,7 +31299,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getActiveScans_result(getActiveScans_result other) {
+       if (other.isSetSuccess()) {
+-        List<ActiveScan> __this__success = new ArrayList<ActiveScan>();
++        List<ActiveScan> __this__success = new ArrayList<ActiveScan>(other.success.size());
+         for (ActiveScan other_element : other.success) {
+           __this__success.add(new ActiveScan(other_element));
+         }
+@@ -30046,30 +31470,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getActiveScans_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getActiveScans_result typedOther = (getActiveScans_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -30159,7 +31583,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new ArrayList<ActiveScan>(_list298.size);
+                   for (int _i299 = 0; _i299 < _list298.size; ++_i299)
+                   {
+-                    ActiveScan _elem300; // required
++                    ActiveScan _elem300;
+                     _elem300 = new ActiveScan();
+                     _elem300.read(iprot);
+                     struct.success.add(_elem300);
+@@ -30261,7 +31685,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new ArrayList<ActiveScan>(_list303.size);
+             for (int _i304 = 0; _i304 < _list303.size; ++_i304)
+             {
+-              ActiveScan _elem305; // required
++              ActiveScan _elem305;
+               _elem305 = new ActiveScan();
+               _elem305.read(iprot);
+               struct.success.add(_elem305);
+@@ -30279,7 +31703,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getActiveCompactions_args implements org.apache.thrift.TBase<getActiveCompactions_args, getActiveCompactions_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getActiveCompactions_args implements org.apache.thrift.TBase<getActiveCompactions_args, getActiveCompactions_args._Fields>, java.io.Serializable, Cloneable, Comparable<getActiveCompactions_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getActiveCompactions_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+@@ -30536,30 +31960,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getActiveCompactions_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getActiveCompactions_args typedOther = (getActiveCompactions_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -30743,7 +32167,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getActiveCompactions_result implements org.apache.thrift.TBase<getActiveCompactions_result, getActiveCompactions_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getActiveCompactions_result implements org.apache.thrift.TBase<getActiveCompactions_result, getActiveCompactions_result._Fields>, java.io.Serializable, Cloneable, Comparable<getActiveCompactions_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getActiveCompactions_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0);
+@@ -30849,7 +32273,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getActiveCompactions_result(getActiveCompactions_result other) {
+       if (other.isSetSuccess()) {
+-        List<ActiveCompaction> __this__success = new ArrayList<ActiveCompaction>();
++        List<ActiveCompaction> __this__success = new ArrayList<ActiveCompaction>(other.success.size());
+         for (ActiveCompaction other_element : other.success) {
+           __this__success.add(new ActiveCompaction(other_element));
+         }
+@@ -31020,30 +32444,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getActiveCompactions_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getActiveCompactions_result typedOther = (getActiveCompactions_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSec()).compareTo(typedOther.isSetSec());
++      lastComparison = Boolean.valueOf(isSetSec()).compareTo(other.isSetSec());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSec()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, typedOther.sec);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sec, other.sec);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -31133,7 +32557,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new ArrayList<ActiveCompaction>(_list306.size);
+                   for (int _i307 = 0; _i307 < _list306.size; ++_i307)
+                   {
+-                    ActiveCompaction _elem308; // required
++                    ActiveCompaction _elem308;
+                     _elem308 = new ActiveCompaction();
+                     _elem308.read(iprot);
+                     struct.success.add(_elem308);
+@@ -31235,7 +32659,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new ArrayList<ActiveCompaction>(_list311.size);
+             for (int _i312 = 0; _i312 < _list311.size; ++_i312)
+             {
+-              ActiveCompaction _elem313; // required
++              ActiveCompaction _elem313;
+               _elem313 = new ActiveCompaction();
+               _elem313.read(iprot);
+               struct.success.add(_elem313);
+@@ -31253,7 +32677,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class removeLogs_args implements org.apache.thrift.TBase<removeLogs_args, removeLogs_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class removeLogs_args implements org.apache.thrift.TBase<removeLogs_args, removeLogs_args._Fields>, java.io.Serializable, Cloneable, Comparable<removeLogs_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("removeLogs_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -31374,10 +32798,7 @@ import org.slf4j.LoggerFactory;
+         this.credentials = new org.apache.accumulo.core.security.thrift.TCredentials(other.credentials);
+       }
+       if (other.isSetFilenames()) {
+-        List<String> __this__filenames = new ArrayList<String>();
+-        for (String other_element : other.filenames) {
+-          __this__filenames.add(other_element);
+-        }
++        List<String> __this__filenames = new ArrayList<String>(other.filenames);
+         this.filenames = __this__filenames;
+       }
+     }
+@@ -31589,40 +33010,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(removeLogs_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      removeLogs_args typedOther = (removeLogs_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(typedOther.isSetCredentials());
++      lastComparison = Boolean.valueOf(isSetCredentials()).compareTo(other.isSetCredentials());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCredentials()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, typedOther.credentials);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentials, other.credentials);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetFilenames()).compareTo(typedOther.isSetFilenames());
++      lastComparison = Boolean.valueOf(isSetFilenames()).compareTo(other.isSetFilenames());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetFilenames()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.filenames, typedOther.filenames);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.filenames, other.filenames);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -31744,7 +33165,7 @@ import org.slf4j.LoggerFactory;
+                   struct.filenames = new ArrayList<String>(_list314.size);
+                   for (int _i315 = 0; _i315 < _list314.size; ++_i315)
+                   {
+-                    String _elem316; // required
++                    String _elem316;
+                     _elem316 = iprot.readString();
+                     struct.filenames.add(_elem316);
+                   }
+@@ -31857,7 +33278,7 @@ import org.slf4j.LoggerFactory;
+             struct.filenames = new ArrayList<String>(_list319.size);
+             for (int _i320 = 0; _i320 < _list319.size; ++_i320)
+             {
+-              String _elem321; // required
++              String _elem321;
+               _elem321 = iprot.readString();
+               struct.filenames.add(_elem321);
+             }
+diff --git a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/TabletStats.java b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/TabletStats.java
+index c608917..8989fe5 100644
+--- a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/TabletStats.java
++++ b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/TabletStats.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TabletStats implements org.apache.thrift.TBase<TabletStats, TabletStats._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TabletStats implements org.apache.thrift.TBase<TabletStats, TabletStats._Fields>, java.io.Serializable, Cloneable, Comparable<TabletStats> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TabletStats");
+ 
+   private static final org.apache.thrift.protocol.TField EXTENT_FIELD_DESC = new org.apache.thrift.protocol.TField("extent", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -659,90 +661,90 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TabletStats other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TabletStats typedOther = (TabletStats)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetExtent()).compareTo(typedOther.isSetExtent());
++    lastComparison = Boolean.valueOf(isSetExtent()).compareTo(other.isSetExtent());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetExtent()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, typedOther.extent);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, other.extent);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetMajors()).compareTo(typedOther.isSetMajors());
++    lastComparison = Boolean.valueOf(isSetMajors()).compareTo(other.isSetMajors());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMajors()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.majors, typedOther.majors);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.majors, other.majors);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetMinors()).compareTo(typedOther.isSetMinors());
++    lastComparison = Boolean.valueOf(isSetMinors()).compareTo(other.isSetMinors());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMinors()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.minors, typedOther.minors);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.minors, other.minors);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetSplits()).compareTo(typedOther.isSetSplits());
++    lastComparison = Boolean.valueOf(isSetSplits()).compareTo(other.isSetSplits());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetSplits()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.splits, typedOther.splits);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.splits, other.splits);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetNumEntries()).compareTo(typedOther.isSetNumEntries());
++    lastComparison = Boolean.valueOf(isSetNumEntries()).compareTo(other.isSetNumEntries());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetNumEntries()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.numEntries, typedOther.numEntries);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.numEntries, other.numEntries);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetIngestRate()).compareTo(typedOther.isSetIngestRate());
++    lastComparison = Boolean.valueOf(isSetIngestRate()).compareTo(other.isSetIngestRate());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIngestRate()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ingestRate, typedOther.ingestRate);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ingestRate, other.ingestRate);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetQueryRate()).compareTo(typedOther.isSetQueryRate());
++    lastComparison = Boolean.valueOf(isSetQueryRate()).compareTo(other.isSetQueryRate());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetQueryRate()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queryRate, typedOther.queryRate);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queryRate, other.queryRate);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetSplitCreationTime()).compareTo(typedOther.isSetSplitCreationTime());
++    lastComparison = Boolean.valueOf(isSetSplitCreationTime()).compareTo(other.isSetSplitCreationTime());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetSplitCreationTime()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.splitCreationTime, typedOther.splitCreationTime);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.splitCreationTime, other.splitCreationTime);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/TooManyFilesException.java b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/TooManyFilesException.java
+index 27afbbc..cc4c3e8 100644
+--- a/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/TooManyFilesException.java
++++ b/core/src/main/java/org/apache/accumulo/core/tabletserver/thrift/TooManyFilesException.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TooManyFilesException extends TException implements org.apache.thrift.TBase<TooManyFilesException, TooManyFilesException._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TooManyFilesException extends TException implements org.apache.thrift.TBase<TooManyFilesException, TooManyFilesException._Fields>, java.io.Serializable, Cloneable, Comparable<TooManyFilesException> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TooManyFilesException");
+ 
+   private static final org.apache.thrift.protocol.TField EXTENT_FIELD_DESC = new org.apache.thrift.protocol.TField("extent", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -244,20 +246,20 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TooManyFilesException other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TooManyFilesException typedOther = (TooManyFilesException)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetExtent()).compareTo(typedOther.isSetExtent());
++    lastComparison = Boolean.valueOf(isSetExtent()).compareTo(other.isSetExtent());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetExtent()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, typedOther.extent);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, other.extent);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/cpp/AccumuloProxy.cpp b/proxy/src/main/cpp/AccumuloProxy.cpp
+index d700ed4..083c3ca 100644
+--- a/proxy/src/main/cpp/AccumuloProxy.cpp
++++ b/proxy/src/main/cpp/AccumuloProxy.cpp
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/proxy/src/main/cpp/AccumuloProxy.h b/proxy/src/main/cpp/AccumuloProxy.h
+index 6a5db22..e9b7769 100644
+--- a/proxy/src/main/cpp/AccumuloProxy.h
++++ b/proxy/src/main/cpp/AccumuloProxy.h
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/proxy/src/main/cpp/proxy_constants.cpp b/proxy/src/main/cpp/proxy_constants.cpp
+index 960af82..39a574e 100644
+--- a/proxy/src/main/cpp/proxy_constants.cpp
++++ b/proxy/src/main/cpp/proxy_constants.cpp
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/proxy/src/main/cpp/proxy_constants.h b/proxy/src/main/cpp/proxy_constants.h
+index 7c9a50b..8f789c6 100644
+--- a/proxy/src/main/cpp/proxy_constants.h
++++ b/proxy/src/main/cpp/proxy_constants.h
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/proxy/src/main/cpp/proxy_types.cpp b/proxy/src/main/cpp/proxy_types.cpp
+index 54694bb..d472402 100644
+--- a/proxy/src/main/cpp/proxy_types.cpp
++++ b/proxy/src/main/cpp/proxy_types.cpp
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/proxy/src/main/cpp/proxy_types.h b/proxy/src/main/cpp/proxy_types.h
+index aec9f2b..c320d39 100644
+--- a/proxy/src/main/cpp/proxy_types.h
++++ b/proxy/src/main/cpp/proxy_types.h
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -28,6 +28,7 @@
+ #include <thrift/protocol/TProtocol.h>
+ #include <thrift/transport/TTransport.h>
+ 
++#include <thrift/cxxfunctional.h>
+ 
+ 
+ namespace accumulo {
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/AccumuloException.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/AccumuloException.java
+index 8f70fb3..0be034c 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/AccumuloException.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/AccumuloException.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class AccumuloException extends TException implements org.apache.thrift.TBase<AccumuloException, AccumuloException._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class AccumuloException extends TException implements org.apache.thrift.TBase<AccumuloException, AccumuloException._Fields>, java.io.Serializable, Cloneable, Comparable<AccumuloException> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("AccumuloException");
+ 
+   private static final org.apache.thrift.protocol.TField MSG_FIELD_DESC = new org.apache.thrift.protocol.TField("msg", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -244,20 +246,20 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(AccumuloException other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    AccumuloException typedOther = (AccumuloException)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetMsg()).compareTo(typedOther.isSetMsg());
++    lastComparison = Boolean.valueOf(isSetMsg()).compareTo(other.isSetMsg());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMsg()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.msg, typedOther.msg);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.msg, other.msg);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/AccumuloProxy.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/AccumuloProxy.java
+index 39b287b..3b23175 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/AccumuloProxy.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/AccumuloProxy.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -208,159 +210,159 @@ import org.slf4j.LoggerFactory;
+ 
+   public interface AsyncIface {
+ 
+-    public void login(String principal, Map<String,String> loginProperties, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.login_call> resultHandler) throws org.apache.thrift.TException;
++    public void login(String principal, Map<String,String> loginProperties, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void addConstraint(ByteBuffer login, String tableName, String constraintClassName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.addConstraint_call> resultHandler) throws org.apache.thrift.TException;
++    public void addConstraint(ByteBuffer login, String tableName, String constraintClassName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void addSplits(ByteBuffer login, String tableName, Set<ByteBuffer> splits, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.addSplits_call> resultHandler) throws org.apache.thrift.TException;
++    public void addSplits(ByteBuffer login, String tableName, Set<ByteBuffer> splits, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void attachIterator(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.attachIterator_call> resultHandler) throws org.apache.thrift.TException;
++    public void attachIterator(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void checkIteratorConflicts(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.checkIteratorConflicts_call> resultHandler) throws org.apache.thrift.TException;
++    public void checkIteratorConflicts(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void clearLocatorCache(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.clearLocatorCache_call> resultHandler) throws org.apache.thrift.TException;
++    public void clearLocatorCache(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void cloneTable(ByteBuffer login, String tableName, String newTableName, boolean flush, Map<String,String> propertiesToSet, Set<String> propertiesToExclude, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.cloneTable_call> resultHandler) throws org.apache.thrift.TException;
++    public void cloneTable(ByteBuffer login, String tableName, String newTableName, boolean flush, Map<String,String> propertiesToSet, Set<String> propertiesToExclude, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void compactTable(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, List<IteratorSetting> iterators, boolean flush, boolean wait, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.compactTable_call> resultHandler) throws org.apache.thrift.TException;
++    public void compactTable(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, List<IteratorSetting> iterators, boolean flush, boolean wait, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void cancelCompaction(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.cancelCompaction_call> resultHandler) throws org.apache.thrift.TException;
++    public void cancelCompaction(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void createTable(ByteBuffer login, String tableName, boolean versioningIter, TimeType type, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.createTable_call> resultHandler) throws org.apache.thrift.TException;
++    public void createTable(ByteBuffer login, String tableName, boolean versioningIter, TimeType type, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void deleteTable(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteTable_call> resultHandler) throws org.apache.thrift.TException;
++    public void deleteTable(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void deleteRows(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.deleteRows_call> resultHandler) throws org.apache.thrift.TException;
++    public void deleteRows(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void exportTable(ByteBuffer login, String tableName, String exportDir, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.exportTable_call> resultHandler) throws org.apache.thrift.TException;
++    public void exportTable(ByteBuffer login, String tableName, String exportDir, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void flushTable(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, boolean wait, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.flushTable_call> resultHandler) throws org.apache.thrift.TException;
++    public void flushTable(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, boolean wait, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getDiskUsage(ByteBuffer login, Set<String> tables, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getDiskUsage_call> resultHandler) throws org.apache.thrift.TException;
++    public void getDiskUsage(ByteBuffer login, Set<String> tables, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getLocalityGroups(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getLocalityGroups_call> resultHandler) throws org.apache.thrift.TException;
++    public void getLocalityGroups(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getIteratorSetting(ByteBuffer login, String tableName, String iteratorName, IteratorScope scope, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getIteratorSetting_call> resultHandler) throws org.apache.thrift.TException;
++    public void getIteratorSetting(ByteBuffer login, String tableName, String iteratorName, IteratorScope scope, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getMaxRow(ByteBuffer login, String tableName, Set<ByteBuffer> auths, ByteBuffer startRow, boolean startInclusive, ByteBuffer endRow, boolean endInclusive, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getMaxRow_call> resultHandler) throws org.apache.thrift.TException;
++    public void getMaxRow(ByteBuffer login, String tableName, Set<ByteBuffer> auths, ByteBuffer startRow, boolean startInclusive, ByteBuffer endRow, boolean endInclusive, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getTableProperties(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getTableProperties_call> resultHandler) throws org.apache.thrift.TException;
++    public void getTableProperties(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void importDirectory(ByteBuffer login, String tableName, String importDir, String failureDir, boolean setTime, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.importDirectory_call> resultHandler) throws org.apache.thrift.TException;
++    public void importDirectory(ByteBuffer login, String tableName, String importDir, String failureDir, boolean setTime, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void importTable(ByteBuffer login, String tableName, String importDir, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.importTable_call> resultHandler) throws org.apache.thrift.TException;
++    public void importTable(ByteBuffer login, String tableName, String importDir, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void listSplits(ByteBuffer login, String tableName, int maxSplits, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.listSplits_call> resultHandler) throws org.apache.thrift.TException;
++    public void listSplits(ByteBuffer login, String tableName, int maxSplits, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void listTables(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.listTables_call> resultHandler) throws org.apache.thrift.TException;
++    public void listTables(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void listIterators(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.listIterators_call> resultHandler) throws org.apache.thrift.TException;
++    public void listIterators(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void listConstraints(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.listConstraints_call> resultHandler) throws org.apache.thrift.TException;
++    public void listConstraints(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void mergeTablets(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.mergeTablets_call> resultHandler) throws org.apache.thrift.TException;
++    public void mergeTablets(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void offlineTable(ByteBuffer login, String tableName, boolean wait, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.offlineTable_call> resultHandler) throws org.apache.thrift.TException;
++    public void offlineTable(ByteBuffer login, String tableName, boolean wait, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void onlineTable(ByteBuffer login, String tableName, boolean wait, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.onlineTable_call> resultHandler) throws org.apache.thrift.TException;
++    public void onlineTable(ByteBuffer login, String tableName, boolean wait, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void removeConstraint(ByteBuffer login, String tableName, int constraint, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.removeConstraint_call> resultHandler) throws org.apache.thrift.TException;
++    public void removeConstraint(ByteBuffer login, String tableName, int constraint, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void removeIterator(ByteBuffer login, String tableName, String iterName, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.removeIterator_call> resultHandler) throws org.apache.thrift.TException;
++    public void removeIterator(ByteBuffer login, String tableName, String iterName, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void removeTableProperty(ByteBuffer login, String tableName, String property, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.removeTableProperty_call> resultHandler) throws org.apache.thrift.TException;
++    public void removeTableProperty(ByteBuffer login, String tableName, String property, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void renameTable(ByteBuffer login, String oldTableName, String newTableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.renameTable_call> resultHandler) throws org.apache.thrift.TException;
++    public void renameTable(ByteBuffer login, String oldTableName, String newTableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void setLocalityGroups(ByteBuffer login, String tableName, Map<String,Set<String>> groups, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.setLocalityGroups_call> resultHandler) throws org.apache.thrift.TException;
++    public void setLocalityGroups(ByteBuffer login, String tableName, Map<String,Set<String>> groups, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void setTableProperty(ByteBuffer login, String tableName, String property, String value, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.setTableProperty_call> resultHandler) throws org.apache.thrift.TException;
++    public void setTableProperty(ByteBuffer login, String tableName, String property, String value, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void splitRangeByTablets(ByteBuffer login, String tableName, Range range, int maxSplits, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.splitRangeByTablets_call> resultHandler) throws org.apache.thrift.TException;
++    public void splitRangeByTablets(ByteBuffer login, String tableName, Range range, int maxSplits, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void tableExists(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.tableExists_call> resultHandler) throws org.apache.thrift.TException;
++    public void tableExists(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void tableIdMap(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.tableIdMap_call> resultHandler) throws org.apache.thrift.TException;
++    public void tableIdMap(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void testTableClassLoad(ByteBuffer login, String tableName, String className, String asTypeName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.testTableClassLoad_call> resultHandler) throws org.apache.thrift.TException;
++    public void testTableClassLoad(ByteBuffer login, String tableName, String className, String asTypeName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void pingTabletServer(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.pingTabletServer_call> resultHandler) throws org.apache.thrift.TException;
++    public void pingTabletServer(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getActiveScans(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getActiveScans_call> resultHandler) throws org.apache.thrift.TException;
++    public void getActiveScans(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getActiveCompactions(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getActiveCompactions_call> resultHandler) throws org.apache.thrift.TException;
++    public void getActiveCompactions(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getSiteConfiguration(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getSiteConfiguration_call> resultHandler) throws org.apache.thrift.TException;
++    public void getSiteConfiguration(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getSystemConfiguration(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getSystemConfiguration_call> resultHandler) throws org.apache.thrift.TException;
++    public void getSystemConfiguration(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getTabletServers(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getTabletServers_call> resultHandler) throws org.apache.thrift.TException;
++    public void getTabletServers(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void removeProperty(ByteBuffer login, String property, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.removeProperty_call> resultHandler) throws org.apache.thrift.TException;
++    public void removeProperty(ByteBuffer login, String property, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void setProperty(ByteBuffer login, String property, String value, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.setProperty_call> resultHandler) throws org.apache.thrift.TException;
++    public void setProperty(ByteBuffer login, String property, String value, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void testClassLoad(ByteBuffer login, String className, String asTypeName, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.testClassLoad_call> resultHandler) throws org.apache.thrift.TException;
++    public void testClassLoad(ByteBuffer login, String className, String asTypeName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void authenticateUser(ByteBuffer login, String user, Map<String,String> properties, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.authenticateUser_call> resultHandler) throws org.apache.thrift.TException;
++    public void authenticateUser(ByteBuffer login, String user, Map<String,String> properties, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void changeUserAuthorizations(ByteBuffer login, String user, Set<ByteBuffer> authorizations, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.changeUserAuthorizations_call> resultHandler) throws org.apache.thrift.TException;
++    public void changeUserAuthorizations(ByteBuffer login, String user, Set<ByteBuffer> authorizations, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void changeLocalUserPassword(ByteBuffer login, String user, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.changeLocalUserPassword_call> resultHandler) throws org.apache.thrift.TException;
++    public void changeLocalUserPassword(ByteBuffer login, String user, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void createLocalUser(ByteBuffer login, String user, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.createLocalUser_call> resultHandler) throws org.apache.thrift.TException;
++    public void createLocalUser(ByteBuffer login, String user, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void dropLocalUser(ByteBuffer login, String user, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.dropLocalUser_call> resultHandler) throws org.apache.thrift.TException;
++    public void dropLocalUser(ByteBuffer login, String user, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getUserAuthorizations(ByteBuffer login, String user, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getUserAuthorizations_call> resultHandler) throws org.apache.thrift.TException;
++    public void getUserAuthorizations(ByteBuffer login, String user, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void grantSystemPermission(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.grantSystemPermission_call> resultHandler) throws org.apache.thrift.TException;
++    public void grantSystemPermission(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void grantTablePermission(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.grantTablePermission_call> resultHandler) throws org.apache.thrift.TException;
++    public void grantTablePermission(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void hasSystemPermission(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.hasSystemPermission_call> resultHandler) throws org.apache.thrift.TException;
++    public void hasSystemPermission(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void hasTablePermission(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.hasTablePermission_call> resultHandler) throws org.apache.thrift.TException;
++    public void hasTablePermission(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void listLocalUsers(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.listLocalUsers_call> resultHandler) throws org.apache.thrift.TException;
++    public void listLocalUsers(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void revokeSystemPermission(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.revokeSystemPermission_call> resultHandler) throws org.apache.thrift.TException;
++    public void revokeSystemPermission(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void revokeTablePermission(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.revokeTablePermission_call> resultHandler) throws org.apache.thrift.TException;
++    public void revokeTablePermission(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void createBatchScanner(ByteBuffer login, String tableName, BatchScanOptions options, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.createBatchScanner_call> resultHandler) throws org.apache.thrift.TException;
++    public void createBatchScanner(ByteBuffer login, String tableName, BatchScanOptions options, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void createScanner(ByteBuffer login, String tableName, ScanOptions options, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.createScanner_call> resultHandler) throws org.apache.thrift.TException;
++    public void createScanner(ByteBuffer login, String tableName, ScanOptions options, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void hasNext(String scanner, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.hasNext_call> resultHandler) throws org.apache.thrift.TException;
++    public void hasNext(String scanner, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void nextEntry(String scanner, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.nextEntry_call> resultHandler) throws org.apache.thrift.TException;
++    public void nextEntry(String scanner, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void nextK(String scanner, int k, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.nextK_call> resultHandler) throws org.apache.thrift.TException;
++    public void nextK(String scanner, int k, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void closeScanner(String scanner, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.closeScanner_call> resultHandler) throws org.apache.thrift.TException;
++    public void closeScanner(String scanner, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void updateAndFlush(ByteBuffer login, String tableName, Map<ByteBuffer,List<ColumnUpdate>> cells, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.updateAndFlush_call> resultHandler) throws org.apache.thrift.TException;
++    public void updateAndFlush(ByteBuffer login, String tableName, Map<ByteBuffer,List<ColumnUpdate>> cells, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void createWriter(ByteBuffer login, String tableName, WriterOptions opts, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.createWriter_call> resultHandler) throws org.apache.thrift.TException;
++    public void createWriter(ByteBuffer login, String tableName, WriterOptions opts, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void update(String writer, Map<ByteBuffer,List<ColumnUpdate>> cells, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.update_call> resultHandler) throws org.apache.thrift.TException;
++    public void update(String writer, Map<ByteBuffer,List<ColumnUpdate>> cells, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void flush(String writer, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.flush_call> resultHandler) throws org.apache.thrift.TException;
++    public void flush(String writer, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void closeWriter(String writer, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.closeWriter_call> resultHandler) throws org.apache.thrift.TException;
++    public void closeWriter(String writer, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void updateRowConditionally(ByteBuffer login, String tableName, ByteBuffer row, ConditionalUpdates updates, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.updateRowConditionally_call> resultHandler) throws org.apache.thrift.TException;
++    public void updateRowConditionally(ByteBuffer login, String tableName, ByteBuffer row, ConditionalUpdates updates, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void createConditionalWriter(ByteBuffer login, String tableName, ConditionalWriterOptions options, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.createConditionalWriter_call> resultHandler) throws org.apache.thrift.TException;
++    public void createConditionalWriter(ByteBuffer login, String tableName, ConditionalWriterOptions options, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void updateRowsConditionally(String conditionalWriter, Map<ByteBuffer,ConditionalUpdates> updates, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.updateRowsConditionally_call> resultHandler) throws org.apache.thrift.TException;
++    public void updateRowsConditionally(String conditionalWriter, Map<ByteBuffer,ConditionalUpdates> updates, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void closeConditionalWriter(String conditionalWriter, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.closeConditionalWriter_call> resultHandler) throws org.apache.thrift.TException;
++    public void closeConditionalWriter(String conditionalWriter, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getRowRange(ByteBuffer row, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getRowRange_call> resultHandler) throws org.apache.thrift.TException;
++    public void getRowRange(ByteBuffer row, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+-    public void getFollowing(Key key, PartialKey part, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.getFollowing_call> resultHandler) throws org.apache.thrift.TException;
++    public void getFollowing(Key key, PartialKey part, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+   }
+ 
+@@ -2731,7 +2733,7 @@ import org.slf4j.LoggerFactory;
+       super(protocolFactory, clientManager, transport);
+     }
+ 
+-    public void login(String principal, Map<String,String> loginProperties, org.apache.thrift.async.AsyncMethodCallback<login_call> resultHandler) throws org.apache.thrift.TException {
++    public void login(String principal, Map<String,String> loginProperties, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       login_call method_call = new login_call(principal, loginProperties, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -2741,7 +2743,7 @@ import org.slf4j.LoggerFactory;
+     public static class login_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private String principal;
+       private Map<String,String> loginProperties;
+-      public login_call(String principal, Map<String,String> loginProperties, org.apache.thrift.async.AsyncMethodCallback<login_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public login_call(String principal, Map<String,String> loginProperties, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.principal = principal;
+         this.loginProperties = loginProperties;
+@@ -2766,7 +2768,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void addConstraint(ByteBuffer login, String tableName, String constraintClassName, org.apache.thrift.async.AsyncMethodCallback<addConstraint_call> resultHandler) throws org.apache.thrift.TException {
++    public void addConstraint(ByteBuffer login, String tableName, String constraintClassName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       addConstraint_call method_call = new addConstraint_call(login, tableName, constraintClassName, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -2777,7 +2779,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String tableName;
+       private String constraintClassName;
+-      public addConstraint_call(ByteBuffer login, String tableName, String constraintClassName, org.apache.thrift.async.AsyncMethodCallback<addConstraint_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public addConstraint_call(ByteBuffer login, String tableName, String constraintClassName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -2804,7 +2806,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void addSplits(ByteBuffer login, String tableName, Set<ByteBuffer> splits, org.apache.thrift.async.AsyncMethodCallback<addSplits_call> resultHandler) throws org.apache.thrift.TException {
++    public void addSplits(ByteBuffer login, String tableName, Set<ByteBuffer> splits, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       addSplits_call method_call = new addSplits_call(login, tableName, splits, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -2815,7 +2817,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String tableName;
+       private Set<ByteBuffer> splits;
+-      public addSplits_call(ByteBuffer login, String tableName, Set<ByteBuffer> splits, org.apache.thrift.async.AsyncMethodCallback<addSplits_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public addSplits_call(ByteBuffer login, String tableName, Set<ByteBuffer> splits, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -2842,7 +2844,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void attachIterator(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback<attachIterator_call> resultHandler) throws org.apache.thrift.TException {
++    public void attachIterator(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       attachIterator_call method_call = new attachIterator_call(login, tableName, setting, scopes, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -2854,7 +2856,7 @@ import org.slf4j.LoggerFactory;
+       private String tableName;
+       private IteratorSetting setting;
+       private Set<IteratorScope> scopes;
+-      public attachIterator_call(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback<attachIterator_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public attachIterator_call(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -2883,7 +2885,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void checkIteratorConflicts(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback<checkIteratorConflicts_call> resultHandler) throws org.apache.thrift.TException {
++    public void checkIteratorConflicts(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       checkIteratorConflicts_call method_call = new checkIteratorConflicts_call(login, tableName, setting, scopes, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -2895,7 +2897,7 @@ import org.slf4j.LoggerFactory;
+       private String tableName;
+       private IteratorSetting setting;
+       private Set<IteratorScope> scopes;
+-      public checkIteratorConflicts_call(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback<checkIteratorConflicts_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public checkIteratorConflicts_call(ByteBuffer login, String tableName, IteratorSetting setting, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -2924,7 +2926,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void clearLocatorCache(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<clearLocatorCache_call> resultHandler) throws org.apache.thrift.TException {
++    public void clearLocatorCache(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       clearLocatorCache_call method_call = new clearLocatorCache_call(login, tableName, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -2934,7 +2936,7 @@ import org.slf4j.LoggerFactory;
+     public static class clearLocatorCache_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+       private String tableName;
+-      public clearLocatorCache_call(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<clearLocatorCache_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public clearLocatorCache_call(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -2959,7 +2961,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void cloneTable(ByteBuffer login, String tableName, String newTableName, boolean flush, Map<String,String> propertiesToSet, Set<String> propertiesToExclude, org.apache.thrift.async.AsyncMethodCallback<cloneTable_call> resultHandler) throws org.apache.thrift.TException {
++    public void cloneTable(ByteBuffer login, String tableName, String newTableName, boolean flush, Map<String,String> propertiesToSet, Set<String> propertiesToExclude, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       cloneTable_call method_call = new cloneTable_call(login, tableName, newTableName, flush, propertiesToSet, propertiesToExclude, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -2973,7 +2975,7 @@ import org.slf4j.LoggerFactory;
+       private boolean flush;
+       private Map<String,String> propertiesToSet;
+       private Set<String> propertiesToExclude;
+-      public cloneTable_call(ByteBuffer login, String tableName, String newTableName, boolean flush, Map<String,String> propertiesToSet, Set<String> propertiesToExclude, org.apache.thrift.async.AsyncMethodCallback<cloneTable_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public cloneTable_call(ByteBuffer login, String tableName, String newTableName, boolean flush, Map<String,String> propertiesToSet, Set<String> propertiesToExclude, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3006,7 +3008,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void compactTable(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, List<IteratorSetting> iterators, boolean flush, boolean wait, org.apache.thrift.async.AsyncMethodCallback<compactTable_call> resultHandler) throws org.apache.thrift.TException {
++    public void compactTable(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, List<IteratorSetting> iterators, boolean flush, boolean wait, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       compactTable_call method_call = new compactTable_call(login, tableName, startRow, endRow, iterators, flush, wait, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3021,7 +3023,7 @@ import org.slf4j.LoggerFactory;
+       private List<IteratorSetting> iterators;
+       private boolean flush;
+       private boolean wait;
+-      public compactTable_call(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, List<IteratorSetting> iterators, boolean flush, boolean wait, org.apache.thrift.async.AsyncMethodCallback<compactTable_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public compactTable_call(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, List<IteratorSetting> iterators, boolean flush, boolean wait, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3056,7 +3058,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void cancelCompaction(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<cancelCompaction_call> resultHandler) throws org.apache.thrift.TException {
++    public void cancelCompaction(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       cancelCompaction_call method_call = new cancelCompaction_call(login, tableName, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3066,7 +3068,7 @@ import org.slf4j.LoggerFactory;
+     public static class cancelCompaction_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+       private String tableName;
+-      public cancelCompaction_call(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<cancelCompaction_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public cancelCompaction_call(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3091,7 +3093,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void createTable(ByteBuffer login, String tableName, boolean versioningIter, TimeType type, org.apache.thrift.async.AsyncMethodCallback<createTable_call> resultHandler) throws org.apache.thrift.TException {
++    public void createTable(ByteBuffer login, String tableName, boolean versioningIter, TimeType type, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       createTable_call method_call = new createTable_call(login, tableName, versioningIter, type, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3103,7 +3105,7 @@ import org.slf4j.LoggerFactory;
+       private String tableName;
+       private boolean versioningIter;
+       private TimeType type;
+-      public createTable_call(ByteBuffer login, String tableName, boolean versioningIter, TimeType type, org.apache.thrift.async.AsyncMethodCallback<createTable_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public createTable_call(ByteBuffer login, String tableName, boolean versioningIter, TimeType type, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3132,7 +3134,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void deleteTable(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<deleteTable_call> resultHandler) throws org.apache.thrift.TException {
++    public void deleteTable(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       deleteTable_call method_call = new deleteTable_call(login, tableName, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3142,7 +3144,7 @@ import org.slf4j.LoggerFactory;
+     public static class deleteTable_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+       private String tableName;
+-      public deleteTable_call(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<deleteTable_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public deleteTable_call(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3167,7 +3169,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void deleteRows(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback<deleteRows_call> resultHandler) throws org.apache.thrift.TException {
++    public void deleteRows(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       deleteRows_call method_call = new deleteRows_call(login, tableName, startRow, endRow, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3179,7 +3181,7 @@ import org.slf4j.LoggerFactory;
+       private String tableName;
+       private ByteBuffer startRow;
+       private ByteBuffer endRow;
+-      public deleteRows_call(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback<deleteRows_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public deleteRows_call(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3208,7 +3210,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void exportTable(ByteBuffer login, String tableName, String exportDir, org.apache.thrift.async.AsyncMethodCallback<exportTable_call> resultHandler) throws org.apache.thrift.TException {
++    public void exportTable(ByteBuffer login, String tableName, String exportDir, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       exportTable_call method_call = new exportTable_call(login, tableName, exportDir, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3219,7 +3221,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String tableName;
+       private String exportDir;
+-      public exportTable_call(ByteBuffer login, String tableName, String exportDir, org.apache.thrift.async.AsyncMethodCallback<exportTable_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public exportTable_call(ByteBuffer login, String tableName, String exportDir, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3246,7 +3248,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void flushTable(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, boolean wait, org.apache.thrift.async.AsyncMethodCallback<flushTable_call> resultHandler) throws org.apache.thrift.TException {
++    public void flushTable(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, boolean wait, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       flushTable_call method_call = new flushTable_call(login, tableName, startRow, endRow, wait, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3259,7 +3261,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer startRow;
+       private ByteBuffer endRow;
+       private boolean wait;
+-      public flushTable_call(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, boolean wait, org.apache.thrift.async.AsyncMethodCallback<flushTable_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public flushTable_call(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, boolean wait, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3290,7 +3292,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getDiskUsage(ByteBuffer login, Set<String> tables, org.apache.thrift.async.AsyncMethodCallback<getDiskUsage_call> resultHandler) throws org.apache.thrift.TException {
++    public void getDiskUsage(ByteBuffer login, Set<String> tables, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getDiskUsage_call method_call = new getDiskUsage_call(login, tables, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3300,7 +3302,7 @@ import org.slf4j.LoggerFactory;
+     public static class getDiskUsage_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+       private Set<String> tables;
+-      public getDiskUsage_call(ByteBuffer login, Set<String> tables, org.apache.thrift.async.AsyncMethodCallback<getDiskUsage_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getDiskUsage_call(ByteBuffer login, Set<String> tables, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tables = tables;
+@@ -3325,7 +3327,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getLocalityGroups(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<getLocalityGroups_call> resultHandler) throws org.apache.thrift.TException {
++    public void getLocalityGroups(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getLocalityGroups_call method_call = new getLocalityGroups_call(login, tableName, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3335,7 +3337,7 @@ import org.slf4j.LoggerFactory;
+     public static class getLocalityGroups_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+       private String tableName;
+-      public getLocalityGroups_call(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<getLocalityGroups_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getLocalityGroups_call(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3360,7 +3362,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getIteratorSetting(ByteBuffer login, String tableName, String iteratorName, IteratorScope scope, org.apache.thrift.async.AsyncMethodCallback<getIteratorSetting_call> resultHandler) throws org.apache.thrift.TException {
++    public void getIteratorSetting(ByteBuffer login, String tableName, String iteratorName, IteratorScope scope, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getIteratorSetting_call method_call = new getIteratorSetting_call(login, tableName, iteratorName, scope, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3372,7 +3374,7 @@ import org.slf4j.LoggerFactory;
+       private String tableName;
+       private String iteratorName;
+       private IteratorScope scope;
+-      public getIteratorSetting_call(ByteBuffer login, String tableName, String iteratorName, IteratorScope scope, org.apache.thrift.async.AsyncMethodCallback<getIteratorSetting_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getIteratorSetting_call(ByteBuffer login, String tableName, String iteratorName, IteratorScope scope, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3401,7 +3403,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getMaxRow(ByteBuffer login, String tableName, Set<ByteBuffer> auths, ByteBuffer startRow, boolean startInclusive, ByteBuffer endRow, boolean endInclusive, org.apache.thrift.async.AsyncMethodCallback<getMaxRow_call> resultHandler) throws org.apache.thrift.TException {
++    public void getMaxRow(ByteBuffer login, String tableName, Set<ByteBuffer> auths, ByteBuffer startRow, boolean startInclusive, ByteBuffer endRow, boolean endInclusive, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getMaxRow_call method_call = new getMaxRow_call(login, tableName, auths, startRow, startInclusive, endRow, endInclusive, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3416,7 +3418,7 @@ import org.slf4j.LoggerFactory;
+       private boolean startInclusive;
+       private ByteBuffer endRow;
+       private boolean endInclusive;
+-      public getMaxRow_call(ByteBuffer login, String tableName, Set<ByteBuffer> auths, ByteBuffer startRow, boolean startInclusive, ByteBuffer endRow, boolean endInclusive, org.apache.thrift.async.AsyncMethodCallback<getMaxRow_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getMaxRow_call(ByteBuffer login, String tableName, Set<ByteBuffer> auths, ByteBuffer startRow, boolean startInclusive, ByteBuffer endRow, boolean endInclusive, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3451,7 +3453,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getTableProperties(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<getTableProperties_call> resultHandler) throws org.apache.thrift.TException {
++    public void getTableProperties(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getTableProperties_call method_call = new getTableProperties_call(login, tableName, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3461,7 +3463,7 @@ import org.slf4j.LoggerFactory;
+     public static class getTableProperties_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+       private String tableName;
+-      public getTableProperties_call(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<getTableProperties_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getTableProperties_call(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3486,7 +3488,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void importDirectory(ByteBuffer login, String tableName, String importDir, String failureDir, boolean setTime, org.apache.thrift.async.AsyncMethodCallback<importDirectory_call> resultHandler) throws org.apache.thrift.TException {
++    public void importDirectory(ByteBuffer login, String tableName, String importDir, String failureDir, boolean setTime, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       importDirectory_call method_call = new importDirectory_call(login, tableName, importDir, failureDir, setTime, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3499,7 +3501,7 @@ import org.slf4j.LoggerFactory;
+       private String importDir;
+       private String failureDir;
+       private boolean setTime;
+-      public importDirectory_call(ByteBuffer login, String tableName, String importDir, String failureDir, boolean setTime, org.apache.thrift.async.AsyncMethodCallback<importDirectory_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public importDirectory_call(ByteBuffer login, String tableName, String importDir, String failureDir, boolean setTime, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3530,7 +3532,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void importTable(ByteBuffer login, String tableName, String importDir, org.apache.thrift.async.AsyncMethodCallback<importTable_call> resultHandler) throws org.apache.thrift.TException {
++    public void importTable(ByteBuffer login, String tableName, String importDir, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       importTable_call method_call = new importTable_call(login, tableName, importDir, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3541,7 +3543,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String tableName;
+       private String importDir;
+-      public importTable_call(ByteBuffer login, String tableName, String importDir, org.apache.thrift.async.AsyncMethodCallback<importTable_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public importTable_call(ByteBuffer login, String tableName, String importDir, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3568,7 +3570,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void listSplits(ByteBuffer login, String tableName, int maxSplits, org.apache.thrift.async.AsyncMethodCallback<listSplits_call> resultHandler) throws org.apache.thrift.TException {
++    public void listSplits(ByteBuffer login, String tableName, int maxSplits, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       listSplits_call method_call = new listSplits_call(login, tableName, maxSplits, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3579,7 +3581,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String tableName;
+       private int maxSplits;
+-      public listSplits_call(ByteBuffer login, String tableName, int maxSplits, org.apache.thrift.async.AsyncMethodCallback<listSplits_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public listSplits_call(ByteBuffer login, String tableName, int maxSplits, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3606,7 +3608,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void listTables(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<listTables_call> resultHandler) throws org.apache.thrift.TException {
++    public void listTables(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       listTables_call method_call = new listTables_call(login, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3615,7 +3617,7 @@ import org.slf4j.LoggerFactory;
+ 
+     public static class listTables_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+-      public listTables_call(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<listTables_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public listTables_call(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+       }
+@@ -3638,7 +3640,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void listIterators(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<listIterators_call> resultHandler) throws org.apache.thrift.TException {
++    public void listIterators(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       listIterators_call method_call = new listIterators_call(login, tableName, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3648,7 +3650,7 @@ import org.slf4j.LoggerFactory;
+     public static class listIterators_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+       private String tableName;
+-      public listIterators_call(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<listIterators_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public listIterators_call(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3673,7 +3675,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void listConstraints(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<listConstraints_call> resultHandler) throws org.apache.thrift.TException {
++    public void listConstraints(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       listConstraints_call method_call = new listConstraints_call(login, tableName, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3683,7 +3685,7 @@ import org.slf4j.LoggerFactory;
+     public static class listConstraints_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+       private String tableName;
+-      public listConstraints_call(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<listConstraints_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public listConstraints_call(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3708,7 +3710,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void mergeTablets(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback<mergeTablets_call> resultHandler) throws org.apache.thrift.TException {
++    public void mergeTablets(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       mergeTablets_call method_call = new mergeTablets_call(login, tableName, startRow, endRow, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3720,7 +3722,7 @@ import org.slf4j.LoggerFactory;
+       private String tableName;
+       private ByteBuffer startRow;
+       private ByteBuffer endRow;
+-      public mergeTablets_call(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback<mergeTablets_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public mergeTablets_call(ByteBuffer login, String tableName, ByteBuffer startRow, ByteBuffer endRow, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3749,7 +3751,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void offlineTable(ByteBuffer login, String tableName, boolean wait, org.apache.thrift.async.AsyncMethodCallback<offlineTable_call> resultHandler) throws org.apache.thrift.TException {
++    public void offlineTable(ByteBuffer login, String tableName, boolean wait, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       offlineTable_call method_call = new offlineTable_call(login, tableName, wait, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3760,7 +3762,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String tableName;
+       private boolean wait;
+-      public offlineTable_call(ByteBuffer login, String tableName, boolean wait, org.apache.thrift.async.AsyncMethodCallback<offlineTable_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public offlineTable_call(ByteBuffer login, String tableName, boolean wait, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3787,7 +3789,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void onlineTable(ByteBuffer login, String tableName, boolean wait, org.apache.thrift.async.AsyncMethodCallback<onlineTable_call> resultHandler) throws org.apache.thrift.TException {
++    public void onlineTable(ByteBuffer login, String tableName, boolean wait, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       onlineTable_call method_call = new onlineTable_call(login, tableName, wait, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3798,7 +3800,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String tableName;
+       private boolean wait;
+-      public onlineTable_call(ByteBuffer login, String tableName, boolean wait, org.apache.thrift.async.AsyncMethodCallback<onlineTable_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public onlineTable_call(ByteBuffer login, String tableName, boolean wait, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3825,7 +3827,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void removeConstraint(ByteBuffer login, String tableName, int constraint, org.apache.thrift.async.AsyncMethodCallback<removeConstraint_call> resultHandler) throws org.apache.thrift.TException {
++    public void removeConstraint(ByteBuffer login, String tableName, int constraint, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       removeConstraint_call method_call = new removeConstraint_call(login, tableName, constraint, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3836,7 +3838,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String tableName;
+       private int constraint;
+-      public removeConstraint_call(ByteBuffer login, String tableName, int constraint, org.apache.thrift.async.AsyncMethodCallback<removeConstraint_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public removeConstraint_call(ByteBuffer login, String tableName, int constraint, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3863,7 +3865,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void removeIterator(ByteBuffer login, String tableName, String iterName, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback<removeIterator_call> resultHandler) throws org.apache.thrift.TException {
++    public void removeIterator(ByteBuffer login, String tableName, String iterName, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       removeIterator_call method_call = new removeIterator_call(login, tableName, iterName, scopes, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3875,7 +3877,7 @@ import org.slf4j.LoggerFactory;
+       private String tableName;
+       private String iterName;
+       private Set<IteratorScope> scopes;
+-      public removeIterator_call(ByteBuffer login, String tableName, String iterName, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback<removeIterator_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public removeIterator_call(ByteBuffer login, String tableName, String iterName, Set<IteratorScope> scopes, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3904,7 +3906,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void removeTableProperty(ByteBuffer login, String tableName, String property, org.apache.thrift.async.AsyncMethodCallback<removeTableProperty_call> resultHandler) throws org.apache.thrift.TException {
++    public void removeTableProperty(ByteBuffer login, String tableName, String property, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       removeTableProperty_call method_call = new removeTableProperty_call(login, tableName, property, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3915,7 +3917,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String tableName;
+       private String property;
+-      public removeTableProperty_call(ByteBuffer login, String tableName, String property, org.apache.thrift.async.AsyncMethodCallback<removeTableProperty_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public removeTableProperty_call(ByteBuffer login, String tableName, String property, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -3942,7 +3944,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void renameTable(ByteBuffer login, String oldTableName, String newTableName, org.apache.thrift.async.AsyncMethodCallback<renameTable_call> resultHandler) throws org.apache.thrift.TException {
++    public void renameTable(ByteBuffer login, String oldTableName, String newTableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       renameTable_call method_call = new renameTable_call(login, oldTableName, newTableName, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3953,7 +3955,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String oldTableName;
+       private String newTableName;
+-      public renameTable_call(ByteBuffer login, String oldTableName, String newTableName, org.apache.thrift.async.AsyncMethodCallback<renameTable_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public renameTable_call(ByteBuffer login, String oldTableName, String newTableName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.oldTableName = oldTableName;
+@@ -3980,7 +3982,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void setLocalityGroups(ByteBuffer login, String tableName, Map<String,Set<String>> groups, org.apache.thrift.async.AsyncMethodCallback<setLocalityGroups_call> resultHandler) throws org.apache.thrift.TException {
++    public void setLocalityGroups(ByteBuffer login, String tableName, Map<String,Set<String>> groups, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       setLocalityGroups_call method_call = new setLocalityGroups_call(login, tableName, groups, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -3991,7 +3993,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String tableName;
+       private Map<String,Set<String>> groups;
+-      public setLocalityGroups_call(ByteBuffer login, String tableName, Map<String,Set<String>> groups, org.apache.thrift.async.AsyncMethodCallback<setLocalityGroups_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public setLocalityGroups_call(ByteBuffer login, String tableName, Map<String,Set<String>> groups, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -4018,7 +4020,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void setTableProperty(ByteBuffer login, String tableName, String property, String value, org.apache.thrift.async.AsyncMethodCallback<setTableProperty_call> resultHandler) throws org.apache.thrift.TException {
++    public void setTableProperty(ByteBuffer login, String tableName, String property, String value, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       setTableProperty_call method_call = new setTableProperty_call(login, tableName, property, value, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4030,7 +4032,7 @@ import org.slf4j.LoggerFactory;
+       private String tableName;
+       private String property;
+       private String value;
+-      public setTableProperty_call(ByteBuffer login, String tableName, String property, String value, org.apache.thrift.async.AsyncMethodCallback<setTableProperty_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public setTableProperty_call(ByteBuffer login, String tableName, String property, String value, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -4059,7 +4061,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void splitRangeByTablets(ByteBuffer login, String tableName, Range range, int maxSplits, org.apache.thrift.async.AsyncMethodCallback<splitRangeByTablets_call> resultHandler) throws org.apache.thrift.TException {
++    public void splitRangeByTablets(ByteBuffer login, String tableName, Range range, int maxSplits, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       splitRangeByTablets_call method_call = new splitRangeByTablets_call(login, tableName, range, maxSplits, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4071,7 +4073,7 @@ import org.slf4j.LoggerFactory;
+       private String tableName;
+       private Range range;
+       private int maxSplits;
+-      public splitRangeByTablets_call(ByteBuffer login, String tableName, Range range, int maxSplits, org.apache.thrift.async.AsyncMethodCallback<splitRangeByTablets_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public splitRangeByTablets_call(ByteBuffer login, String tableName, Range range, int maxSplits, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -4100,7 +4102,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void tableExists(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<tableExists_call> resultHandler) throws org.apache.thrift.TException {
++    public void tableExists(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       tableExists_call method_call = new tableExists_call(login, tableName, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4110,7 +4112,7 @@ import org.slf4j.LoggerFactory;
+     public static class tableExists_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+       private String tableName;
+-      public tableExists_call(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback<tableExists_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public tableExists_call(ByteBuffer login, String tableName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -4135,7 +4137,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void tableIdMap(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<tableIdMap_call> resultHandler) throws org.apache.thrift.TException {
++    public void tableIdMap(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       tableIdMap_call method_call = new tableIdMap_call(login, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4144,7 +4146,7 @@ import org.slf4j.LoggerFactory;
+ 
+     public static class tableIdMap_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+-      public tableIdMap_call(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<tableIdMap_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public tableIdMap_call(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+       }
+@@ -4167,7 +4169,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void testTableClassLoad(ByteBuffer login, String tableName, String className, String asTypeName, org.apache.thrift.async.AsyncMethodCallback<testTableClassLoad_call> resultHandler) throws org.apache.thrift.TException {
++    public void testTableClassLoad(ByteBuffer login, String tableName, String className, String asTypeName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       testTableClassLoad_call method_call = new testTableClassLoad_call(login, tableName, className, asTypeName, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4179,7 +4181,7 @@ import org.slf4j.LoggerFactory;
+       private String tableName;
+       private String className;
+       private String asTypeName;
+-      public testTableClassLoad_call(ByteBuffer login, String tableName, String className, String asTypeName, org.apache.thrift.async.AsyncMethodCallback<testTableClassLoad_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public testTableClassLoad_call(ByteBuffer login, String tableName, String className, String asTypeName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -4208,7 +4210,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void pingTabletServer(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback<pingTabletServer_call> resultHandler) throws org.apache.thrift.TException {
++    public void pingTabletServer(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       pingTabletServer_call method_call = new pingTabletServer_call(login, tserver, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4218,7 +4220,7 @@ import org.slf4j.LoggerFactory;
+     public static class pingTabletServer_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+       private String tserver;
+-      public pingTabletServer_call(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback<pingTabletServer_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public pingTabletServer_call(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tserver = tserver;
+@@ -4243,7 +4245,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getActiveScans(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback<getActiveScans_call> resultHandler) throws org.apache.thrift.TException {
++    public void getActiveScans(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getActiveScans_call method_call = new getActiveScans_call(login, tserver, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4253,7 +4255,7 @@ import org.slf4j.LoggerFactory;
+     public static class getActiveScans_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+       private String tserver;
+-      public getActiveScans_call(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback<getActiveScans_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getActiveScans_call(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tserver = tserver;
+@@ -4278,7 +4280,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getActiveCompactions(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback<getActiveCompactions_call> resultHandler) throws org.apache.thrift.TException {
++    public void getActiveCompactions(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getActiveCompactions_call method_call = new getActiveCompactions_call(login, tserver, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4288,7 +4290,7 @@ import org.slf4j.LoggerFactory;
+     public static class getActiveCompactions_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+       private String tserver;
+-      public getActiveCompactions_call(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback<getActiveCompactions_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getActiveCompactions_call(ByteBuffer login, String tserver, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tserver = tserver;
+@@ -4313,7 +4315,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getSiteConfiguration(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<getSiteConfiguration_call> resultHandler) throws org.apache.thrift.TException {
++    public void getSiteConfiguration(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getSiteConfiguration_call method_call = new getSiteConfiguration_call(login, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4322,7 +4324,7 @@ import org.slf4j.LoggerFactory;
+ 
+     public static class getSiteConfiguration_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+-      public getSiteConfiguration_call(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<getSiteConfiguration_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getSiteConfiguration_call(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+       }
+@@ -4345,7 +4347,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getSystemConfiguration(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<getSystemConfiguration_call> resultHandler) throws org.apache.thrift.TException {
++    public void getSystemConfiguration(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getSystemConfiguration_call method_call = new getSystemConfiguration_call(login, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4354,7 +4356,7 @@ import org.slf4j.LoggerFactory;
+ 
+     public static class getSystemConfiguration_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+-      public getSystemConfiguration_call(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<getSystemConfiguration_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getSystemConfiguration_call(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+       }
+@@ -4377,7 +4379,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getTabletServers(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<getTabletServers_call> resultHandler) throws org.apache.thrift.TException {
++    public void getTabletServers(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getTabletServers_call method_call = new getTabletServers_call(login, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4386,7 +4388,7 @@ import org.slf4j.LoggerFactory;
+ 
+     public static class getTabletServers_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+-      public getTabletServers_call(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<getTabletServers_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getTabletServers_call(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+       }
+@@ -4409,7 +4411,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void removeProperty(ByteBuffer login, String property, org.apache.thrift.async.AsyncMethodCallback<removeProperty_call> resultHandler) throws org.apache.thrift.TException {
++    public void removeProperty(ByteBuffer login, String property, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       removeProperty_call method_call = new removeProperty_call(login, property, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4419,7 +4421,7 @@ import org.slf4j.LoggerFactory;
+     public static class removeProperty_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+       private String property;
+-      public removeProperty_call(ByteBuffer login, String property, org.apache.thrift.async.AsyncMethodCallback<removeProperty_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public removeProperty_call(ByteBuffer login, String property, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.property = property;
+@@ -4444,7 +4446,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void setProperty(ByteBuffer login, String property, String value, org.apache.thrift.async.AsyncMethodCallback<setProperty_call> resultHandler) throws org.apache.thrift.TException {
++    public void setProperty(ByteBuffer login, String property, String value, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       setProperty_call method_call = new setProperty_call(login, property, value, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4455,7 +4457,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String property;
+       private String value;
+-      public setProperty_call(ByteBuffer login, String property, String value, org.apache.thrift.async.AsyncMethodCallback<setProperty_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public setProperty_call(ByteBuffer login, String property, String value, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.property = property;
+@@ -4482,7 +4484,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void testClassLoad(ByteBuffer login, String className, String asTypeName, org.apache.thrift.async.AsyncMethodCallback<testClassLoad_call> resultHandler) throws org.apache.thrift.TException {
++    public void testClassLoad(ByteBuffer login, String className, String asTypeName, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       testClassLoad_call method_call = new testClassLoad_call(login, className, asTypeName, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4493,7 +4495,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String className;
+       private String asTypeName;
+-      public testClassLoad_call(ByteBuffer login, String className, String asTypeName, org.apache.thrift.async.AsyncMethodCallback<testClassLoad_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public testClassLoad_call(ByteBuffer login, String className, String asTypeName, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.className = className;
+@@ -4520,7 +4522,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void authenticateUser(ByteBuffer login, String user, Map<String,String> properties, org.apache.thrift.async.AsyncMethodCallback<authenticateUser_call> resultHandler) throws org.apache.thrift.TException {
++    public void authenticateUser(ByteBuffer login, String user, Map<String,String> properties, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       authenticateUser_call method_call = new authenticateUser_call(login, user, properties, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4531,7 +4533,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String user;
+       private Map<String,String> properties;
+-      public authenticateUser_call(ByteBuffer login, String user, Map<String,String> properties, org.apache.thrift.async.AsyncMethodCallback<authenticateUser_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public authenticateUser_call(ByteBuffer login, String user, Map<String,String> properties, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.user = user;
+@@ -4558,7 +4560,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void changeUserAuthorizations(ByteBuffer login, String user, Set<ByteBuffer> authorizations, org.apache.thrift.async.AsyncMethodCallback<changeUserAuthorizations_call> resultHandler) throws org.apache.thrift.TException {
++    public void changeUserAuthorizations(ByteBuffer login, String user, Set<ByteBuffer> authorizations, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       changeUserAuthorizations_call method_call = new changeUserAuthorizations_call(login, user, authorizations, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4569,7 +4571,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String user;
+       private Set<ByteBuffer> authorizations;
+-      public changeUserAuthorizations_call(ByteBuffer login, String user, Set<ByteBuffer> authorizations, org.apache.thrift.async.AsyncMethodCallback<changeUserAuthorizations_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public changeUserAuthorizations_call(ByteBuffer login, String user, Set<ByteBuffer> authorizations, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.user = user;
+@@ -4596,7 +4598,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void changeLocalUserPassword(ByteBuffer login, String user, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback<changeLocalUserPassword_call> resultHandler) throws org.apache.thrift.TException {
++    public void changeLocalUserPassword(ByteBuffer login, String user, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       changeLocalUserPassword_call method_call = new changeLocalUserPassword_call(login, user, password, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4607,7 +4609,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String user;
+       private ByteBuffer password;
+-      public changeLocalUserPassword_call(ByteBuffer login, String user, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback<changeLocalUserPassword_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public changeLocalUserPassword_call(ByteBuffer login, String user, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.user = user;
+@@ -4634,7 +4636,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void createLocalUser(ByteBuffer login, String user, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback<createLocalUser_call> resultHandler) throws org.apache.thrift.TException {
++    public void createLocalUser(ByteBuffer login, String user, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       createLocalUser_call method_call = new createLocalUser_call(login, user, password, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4645,7 +4647,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String user;
+       private ByteBuffer password;
+-      public createLocalUser_call(ByteBuffer login, String user, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback<createLocalUser_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public createLocalUser_call(ByteBuffer login, String user, ByteBuffer password, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.user = user;
+@@ -4672,7 +4674,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void dropLocalUser(ByteBuffer login, String user, org.apache.thrift.async.AsyncMethodCallback<dropLocalUser_call> resultHandler) throws org.apache.thrift.TException {
++    public void dropLocalUser(ByteBuffer login, String user, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       dropLocalUser_call method_call = new dropLocalUser_call(login, user, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4682,7 +4684,7 @@ import org.slf4j.LoggerFactory;
+     public static class dropLocalUser_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+       private String user;
+-      public dropLocalUser_call(ByteBuffer login, String user, org.apache.thrift.async.AsyncMethodCallback<dropLocalUser_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public dropLocalUser_call(ByteBuffer login, String user, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.user = user;
+@@ -4707,7 +4709,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getUserAuthorizations(ByteBuffer login, String user, org.apache.thrift.async.AsyncMethodCallback<getUserAuthorizations_call> resultHandler) throws org.apache.thrift.TException {
++    public void getUserAuthorizations(ByteBuffer login, String user, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getUserAuthorizations_call method_call = new getUserAuthorizations_call(login, user, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4717,7 +4719,7 @@ import org.slf4j.LoggerFactory;
+     public static class getUserAuthorizations_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+       private String user;
+-      public getUserAuthorizations_call(ByteBuffer login, String user, org.apache.thrift.async.AsyncMethodCallback<getUserAuthorizations_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getUserAuthorizations_call(ByteBuffer login, String user, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.user = user;
+@@ -4742,7 +4744,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void grantSystemPermission(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback<grantSystemPermission_call> resultHandler) throws org.apache.thrift.TException {
++    public void grantSystemPermission(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       grantSystemPermission_call method_call = new grantSystemPermission_call(login, user, perm, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4753,7 +4755,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String user;
+       private SystemPermission perm;
+-      public grantSystemPermission_call(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback<grantSystemPermission_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public grantSystemPermission_call(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.user = user;
+@@ -4780,7 +4782,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void grantTablePermission(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback<grantTablePermission_call> resultHandler) throws org.apache.thrift.TException {
++    public void grantTablePermission(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       grantTablePermission_call method_call = new grantTablePermission_call(login, user, table, perm, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4792,7 +4794,7 @@ import org.slf4j.LoggerFactory;
+       private String user;
+       private String table;
+       private TablePermission perm;
+-      public grantTablePermission_call(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback<grantTablePermission_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public grantTablePermission_call(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.user = user;
+@@ -4821,7 +4823,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void hasSystemPermission(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback<hasSystemPermission_call> resultHandler) throws org.apache.thrift.TException {
++    public void hasSystemPermission(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       hasSystemPermission_call method_call = new hasSystemPermission_call(login, user, perm, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4832,7 +4834,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String user;
+       private SystemPermission perm;
+-      public hasSystemPermission_call(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback<hasSystemPermission_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public hasSystemPermission_call(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.user = user;
+@@ -4859,7 +4861,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void hasTablePermission(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback<hasTablePermission_call> resultHandler) throws org.apache.thrift.TException {
++    public void hasTablePermission(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       hasTablePermission_call method_call = new hasTablePermission_call(login, user, table, perm, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4871,7 +4873,7 @@ import org.slf4j.LoggerFactory;
+       private String user;
+       private String table;
+       private TablePermission perm;
+-      public hasTablePermission_call(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback<hasTablePermission_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public hasTablePermission_call(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.user = user;
+@@ -4900,7 +4902,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void listLocalUsers(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<listLocalUsers_call> resultHandler) throws org.apache.thrift.TException {
++    public void listLocalUsers(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       listLocalUsers_call method_call = new listLocalUsers_call(login, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4909,7 +4911,7 @@ import org.slf4j.LoggerFactory;
+ 
+     public static class listLocalUsers_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer login;
+-      public listLocalUsers_call(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback<listLocalUsers_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public listLocalUsers_call(ByteBuffer login, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+       }
+@@ -4932,7 +4934,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void revokeSystemPermission(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback<revokeSystemPermission_call> resultHandler) throws org.apache.thrift.TException {
++    public void revokeSystemPermission(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       revokeSystemPermission_call method_call = new revokeSystemPermission_call(login, user, perm, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4943,7 +4945,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String user;
+       private SystemPermission perm;
+-      public revokeSystemPermission_call(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback<revokeSystemPermission_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public revokeSystemPermission_call(ByteBuffer login, String user, SystemPermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.user = user;
+@@ -4970,7 +4972,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void revokeTablePermission(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback<revokeTablePermission_call> resultHandler) throws org.apache.thrift.TException {
++    public void revokeTablePermission(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       revokeTablePermission_call method_call = new revokeTablePermission_call(login, user, table, perm, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -4982,7 +4984,7 @@ import org.slf4j.LoggerFactory;
+       private String user;
+       private String table;
+       private TablePermission perm;
+-      public revokeTablePermission_call(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback<revokeTablePermission_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public revokeTablePermission_call(ByteBuffer login, String user, String table, TablePermission perm, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.user = user;
+@@ -5011,7 +5013,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void createBatchScanner(ByteBuffer login, String tableName, BatchScanOptions options, org.apache.thrift.async.AsyncMethodCallback<createBatchScanner_call> resultHandler) throws org.apache.thrift.TException {
++    public void createBatchScanner(ByteBuffer login, String tableName, BatchScanOptions options, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       createBatchScanner_call method_call = new createBatchScanner_call(login, tableName, options, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5022,7 +5024,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String tableName;
+       private BatchScanOptions options;
+-      public createBatchScanner_call(ByteBuffer login, String tableName, BatchScanOptions options, org.apache.thrift.async.AsyncMethodCallback<createBatchScanner_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public createBatchScanner_call(ByteBuffer login, String tableName, BatchScanOptions options, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -5049,7 +5051,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void createScanner(ByteBuffer login, String tableName, ScanOptions options, org.apache.thrift.async.AsyncMethodCallback<createScanner_call> resultHandler) throws org.apache.thrift.TException {
++    public void createScanner(ByteBuffer login, String tableName, ScanOptions options, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       createScanner_call method_call = new createScanner_call(login, tableName, options, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5060,7 +5062,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String tableName;
+       private ScanOptions options;
+-      public createScanner_call(ByteBuffer login, String tableName, ScanOptions options, org.apache.thrift.async.AsyncMethodCallback<createScanner_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public createScanner_call(ByteBuffer login, String tableName, ScanOptions options, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -5087,7 +5089,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void hasNext(String scanner, org.apache.thrift.async.AsyncMethodCallback<hasNext_call> resultHandler) throws org.apache.thrift.TException {
++    public void hasNext(String scanner, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       hasNext_call method_call = new hasNext_call(scanner, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5096,7 +5098,7 @@ import org.slf4j.LoggerFactory;
+ 
+     public static class hasNext_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private String scanner;
+-      public hasNext_call(String scanner, org.apache.thrift.async.AsyncMethodCallback<hasNext_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public hasNext_call(String scanner, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.scanner = scanner;
+       }
+@@ -5119,7 +5121,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void nextEntry(String scanner, org.apache.thrift.async.AsyncMethodCallback<nextEntry_call> resultHandler) throws org.apache.thrift.TException {
++    public void nextEntry(String scanner, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       nextEntry_call method_call = new nextEntry_call(scanner, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5128,7 +5130,7 @@ import org.slf4j.LoggerFactory;
+ 
+     public static class nextEntry_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private String scanner;
+-      public nextEntry_call(String scanner, org.apache.thrift.async.AsyncMethodCallback<nextEntry_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public nextEntry_call(String scanner, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.scanner = scanner;
+       }
+@@ -5151,7 +5153,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void nextK(String scanner, int k, org.apache.thrift.async.AsyncMethodCallback<nextK_call> resultHandler) throws org.apache.thrift.TException {
++    public void nextK(String scanner, int k, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       nextK_call method_call = new nextK_call(scanner, k, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5161,7 +5163,7 @@ import org.slf4j.LoggerFactory;
+     public static class nextK_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private String scanner;
+       private int k;
+-      public nextK_call(String scanner, int k, org.apache.thrift.async.AsyncMethodCallback<nextK_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public nextK_call(String scanner, int k, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.scanner = scanner;
+         this.k = k;
+@@ -5186,7 +5188,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void closeScanner(String scanner, org.apache.thrift.async.AsyncMethodCallback<closeScanner_call> resultHandler) throws org.apache.thrift.TException {
++    public void closeScanner(String scanner, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       closeScanner_call method_call = new closeScanner_call(scanner, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5195,7 +5197,7 @@ import org.slf4j.LoggerFactory;
+ 
+     public static class closeScanner_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private String scanner;
+-      public closeScanner_call(String scanner, org.apache.thrift.async.AsyncMethodCallback<closeScanner_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public closeScanner_call(String scanner, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.scanner = scanner;
+       }
+@@ -5218,7 +5220,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void updateAndFlush(ByteBuffer login, String tableName, Map<ByteBuffer,List<ColumnUpdate>> cells, org.apache.thrift.async.AsyncMethodCallback<updateAndFlush_call> resultHandler) throws org.apache.thrift.TException {
++    public void updateAndFlush(ByteBuffer login, String tableName, Map<ByteBuffer,List<ColumnUpdate>> cells, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       updateAndFlush_call method_call = new updateAndFlush_call(login, tableName, cells, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5229,7 +5231,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String tableName;
+       private Map<ByteBuffer,List<ColumnUpdate>> cells;
+-      public updateAndFlush_call(ByteBuffer login, String tableName, Map<ByteBuffer,List<ColumnUpdate>> cells, org.apache.thrift.async.AsyncMethodCallback<updateAndFlush_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public updateAndFlush_call(ByteBuffer login, String tableName, Map<ByteBuffer,List<ColumnUpdate>> cells, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -5256,7 +5258,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void createWriter(ByteBuffer login, String tableName, WriterOptions opts, org.apache.thrift.async.AsyncMethodCallback<createWriter_call> resultHandler) throws org.apache.thrift.TException {
++    public void createWriter(ByteBuffer login, String tableName, WriterOptions opts, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       createWriter_call method_call = new createWriter_call(login, tableName, opts, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5267,7 +5269,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String tableName;
+       private WriterOptions opts;
+-      public createWriter_call(ByteBuffer login, String tableName, WriterOptions opts, org.apache.thrift.async.AsyncMethodCallback<createWriter_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public createWriter_call(ByteBuffer login, String tableName, WriterOptions opts, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -5294,7 +5296,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void update(String writer, Map<ByteBuffer,List<ColumnUpdate>> cells, org.apache.thrift.async.AsyncMethodCallback<update_call> resultHandler) throws org.apache.thrift.TException {
++    public void update(String writer, Map<ByteBuffer,List<ColumnUpdate>> cells, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       update_call method_call = new update_call(writer, cells, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5304,7 +5306,7 @@ import org.slf4j.LoggerFactory;
+     public static class update_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private String writer;
+       private Map<ByteBuffer,List<ColumnUpdate>> cells;
+-      public update_call(String writer, Map<ByteBuffer,List<ColumnUpdate>> cells, org.apache.thrift.async.AsyncMethodCallback<update_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public update_call(String writer, Map<ByteBuffer,List<ColumnUpdate>> cells, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, true);
+         this.writer = writer;
+         this.cells = cells;
+@@ -5328,7 +5330,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void flush(String writer, org.apache.thrift.async.AsyncMethodCallback<flush_call> resultHandler) throws org.apache.thrift.TException {
++    public void flush(String writer, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       flush_call method_call = new flush_call(writer, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5337,7 +5339,7 @@ import org.slf4j.LoggerFactory;
+ 
+     public static class flush_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private String writer;
+-      public flush_call(String writer, org.apache.thrift.async.AsyncMethodCallback<flush_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public flush_call(String writer, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.writer = writer;
+       }
+@@ -5360,7 +5362,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void closeWriter(String writer, org.apache.thrift.async.AsyncMethodCallback<closeWriter_call> resultHandler) throws org.apache.thrift.TException {
++    public void closeWriter(String writer, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       closeWriter_call method_call = new closeWriter_call(writer, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5369,7 +5371,7 @@ import org.slf4j.LoggerFactory;
+ 
+     public static class closeWriter_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private String writer;
+-      public closeWriter_call(String writer, org.apache.thrift.async.AsyncMethodCallback<closeWriter_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public closeWriter_call(String writer, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.writer = writer;
+       }
+@@ -5392,7 +5394,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void updateRowConditionally(ByteBuffer login, String tableName, ByteBuffer row, ConditionalUpdates updates, org.apache.thrift.async.AsyncMethodCallback<updateRowConditionally_call> resultHandler) throws org.apache.thrift.TException {
++    public void updateRowConditionally(ByteBuffer login, String tableName, ByteBuffer row, ConditionalUpdates updates, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       updateRowConditionally_call method_call = new updateRowConditionally_call(login, tableName, row, updates, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5404,7 +5406,7 @@ import org.slf4j.LoggerFactory;
+       private String tableName;
+       private ByteBuffer row;
+       private ConditionalUpdates updates;
+-      public updateRowConditionally_call(ByteBuffer login, String tableName, ByteBuffer row, ConditionalUpdates updates, org.apache.thrift.async.AsyncMethodCallback<updateRowConditionally_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public updateRowConditionally_call(ByteBuffer login, String tableName, ByteBuffer row, ConditionalUpdates updates, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -5433,7 +5435,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void createConditionalWriter(ByteBuffer login, String tableName, ConditionalWriterOptions options, org.apache.thrift.async.AsyncMethodCallback<createConditionalWriter_call> resultHandler) throws org.apache.thrift.TException {
++    public void createConditionalWriter(ByteBuffer login, String tableName, ConditionalWriterOptions options, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       createConditionalWriter_call method_call = new createConditionalWriter_call(login, tableName, options, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5444,7 +5446,7 @@ import org.slf4j.LoggerFactory;
+       private ByteBuffer login;
+       private String tableName;
+       private ConditionalWriterOptions options;
+-      public createConditionalWriter_call(ByteBuffer login, String tableName, ConditionalWriterOptions options, org.apache.thrift.async.AsyncMethodCallback<createConditionalWriter_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public createConditionalWriter_call(ByteBuffer login, String tableName, ConditionalWriterOptions options, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.login = login;
+         this.tableName = tableName;
+@@ -5471,7 +5473,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void updateRowsConditionally(String conditionalWriter, Map<ByteBuffer,ConditionalUpdates> updates, org.apache.thrift.async.AsyncMethodCallback<updateRowsConditionally_call> resultHandler) throws org.apache.thrift.TException {
++    public void updateRowsConditionally(String conditionalWriter, Map<ByteBuffer,ConditionalUpdates> updates, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       updateRowsConditionally_call method_call = new updateRowsConditionally_call(conditionalWriter, updates, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5481,7 +5483,7 @@ import org.slf4j.LoggerFactory;
+     public static class updateRowsConditionally_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private String conditionalWriter;
+       private Map<ByteBuffer,ConditionalUpdates> updates;
+-      public updateRowsConditionally_call(String conditionalWriter, Map<ByteBuffer,ConditionalUpdates> updates, org.apache.thrift.async.AsyncMethodCallback<updateRowsConditionally_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public updateRowsConditionally_call(String conditionalWriter, Map<ByteBuffer,ConditionalUpdates> updates, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.conditionalWriter = conditionalWriter;
+         this.updates = updates;
+@@ -5506,7 +5508,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void closeConditionalWriter(String conditionalWriter, org.apache.thrift.async.AsyncMethodCallback<closeConditionalWriter_call> resultHandler) throws org.apache.thrift.TException {
++    public void closeConditionalWriter(String conditionalWriter, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       closeConditionalWriter_call method_call = new closeConditionalWriter_call(conditionalWriter, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5515,7 +5517,7 @@ import org.slf4j.LoggerFactory;
+ 
+     public static class closeConditionalWriter_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private String conditionalWriter;
+-      public closeConditionalWriter_call(String conditionalWriter, org.apache.thrift.async.AsyncMethodCallback<closeConditionalWriter_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public closeConditionalWriter_call(String conditionalWriter, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.conditionalWriter = conditionalWriter;
+       }
+@@ -5538,7 +5540,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getRowRange(ByteBuffer row, org.apache.thrift.async.AsyncMethodCallback<getRowRange_call> resultHandler) throws org.apache.thrift.TException {
++    public void getRowRange(ByteBuffer row, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getRowRange_call method_call = new getRowRange_call(row, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5547,7 +5549,7 @@ import org.slf4j.LoggerFactory;
+ 
+     public static class getRowRange_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private ByteBuffer row;
+-      public getRowRange_call(ByteBuffer row, org.apache.thrift.async.AsyncMethodCallback<getRowRange_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getRowRange_call(ByteBuffer row, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.row = row;
+       }
+@@ -5570,7 +5572,7 @@ import org.slf4j.LoggerFactory;
+       }
+     }
+ 
+-    public void getFollowing(Key key, PartialKey part, org.apache.thrift.async.AsyncMethodCallback<getFollowing_call> resultHandler) throws org.apache.thrift.TException {
++    public void getFollowing(Key key, PartialKey part, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       getFollowing_call method_call = new getFollowing_call(key, part, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -5580,7 +5582,7 @@ import org.slf4j.LoggerFactory;
+     public static class getFollowing_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private Key key;
+       private PartialKey part;
+-      public getFollowing_call(Key key, PartialKey part, org.apache.thrift.async.AsyncMethodCallback<getFollowing_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public getFollowing_call(Key key, PartialKey part, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.key = key;
+         this.part = part;
+@@ -7751,7 +7753,4957 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class login_args implements org.apache.thrift.TBase<login_args, login_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class AsyncProcessor<I extends AsyncIface> extends org.apache.thrift.TBaseAsyncProcessor<I> {
++    private static final Logger LOGGER = LoggerFactory.getLogger(AsyncProcessor.class.getName());
++    public AsyncProcessor(I iface) {
++      super(iface, getProcessMap(new HashMap<String, org.apache.thrift.AsyncProcessFunction<I, ? extends org.apache.thrift.TBase, ?>>()));
++    }
++
++    protected AsyncProcessor(I iface, Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      super(iface, getProcessMap(processMap));
++    }
++
++    private static <I extends AsyncIface> Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase,?>> getProcessMap(Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      processMap.put("login", new login());
++      processMap.put("addConstraint", new addConstraint());
++      processMap.put("addSplits", new addSplits());
++      processMap.put("attachIterator", new attachIterator());
++      processMap.put("checkIteratorConflicts", new checkIteratorConflicts());
++      processMap.put("clearLocatorCache", new clearLocatorCache());
++      processMap.put("cloneTable", new cloneTable());
++      processMap.put("compactTable", new compactTable());
++      processMap.put("cancelCompaction", new cancelCompaction());
++      processMap.put("createTable", new createTable());
++      processMap.put("deleteTable", new deleteTable());
++      processMap.put("deleteRows", new deleteRows());
++      processMap.put("exportTable", new exportTable());
++      processMap.put("flushTable", new flushTable());
++      processMap.put("getDiskUsage", new getDiskUsage());
++      processMap.put("getLocalityGroups", new getLocalityGroups());
++      processMap.put("getIteratorSetting", new getIteratorSetting());
++      processMap.put("getMaxRow", new getMaxRow());
++      processMap.put("getTableProperties", new getTableProperties());
++      processMap.put("importDirectory", new importDirectory());
++      processMap.put("importTable", new importTable());
++      processMap.put("listSplits", new listSplits());
++      processMap.put("listTables", new listTables());
++      processMap.put("listIterators", new listIterators());
++      processMap.put("listConstraints", new listConstraints());
++      processMap.put("mergeTablets", new mergeTablets());
++      processMap.put("offlineTable", new offlineTable());
++      processMap.put("onlineTable", new onlineTable());
++      processMap.put("removeConstraint", new removeConstraint());
++      processMap.put("removeIterator", new removeIterator());
++      processMap.put("removeTableProperty", new removeTableProperty());
++      processMap.put("renameTable", new renameTable());
++      processMap.put("setLocalityGroups", new setLocalityGroups());
++      processMap.put("setTableProperty", new setTableProperty());
++      processMap.put("splitRangeByTablets", new splitRangeByTablets());
++      processMap.put("tableExists", new tableExists());
++      processMap.put("tableIdMap", new tableIdMap());
++      processMap.put("testTableClassLoad", new testTableClassLoad());
++      processMap.put("pingTabletServer", new pingTabletServer());
++      processMap.put("getActiveScans", new getActiveScans());
++      processMap.put("getActiveCompactions", new getActiveCompactions());
++      processMap.put("getSiteConfiguration", new getSiteConfiguration());
++      processMap.put("getSystemConfiguration", new getSystemConfiguration());
++      processMap.put("getTabletServers", new getTabletServers());
++      processMap.put("removeProperty", new removeProperty());
++      processMap.put("setProperty", new setProperty());
++      processMap.put("testClassLoad", new testClassLoad());
++      processMap.put("authenticateUser", new authenticateUser());
++      processMap.put("changeUserAuthorizations", new changeUserAuthorizations());
++      processMap.put("changeLocalUserPassword", new changeLocalUserPassword());
++      processMap.put("createLocalUser", new createLocalUser());
++      processMap.put("dropLocalUser", new dropLocalUser());
++      processMap.put("getUserAuthorizations", new getUserAuthorizations());
++      processMap.put("grantSystemPermission", new grantSystemPermission());
++      processMap.put("grantTablePermission", new grantTablePermission());
++      processMap.put("hasSystemPermission", new hasSystemPermission());
++      processMap.put("hasTablePermission", new hasTablePermission());
++      processMap.put("listLocalUsers", new listLocalUsers());
++      processMap.put("revokeSystemPermission", new revokeSystemPermission());
++      processMap.put("revokeTablePermission", new revokeTablePermission());
++      processMap.put("createBatchScanner", new createBatchScanner());
++      processMap.put("createScanner", new createScanner());
++      processMap.put("hasNext", new hasNext());
++      processMap.put("nextEntry", new nextEntry());
++      processMap.put("nextK", new nextK());
++      processMap.put("closeScanner", new closeScanner());
++      processMap.put("updateAndFlush", new updateAndFlush());
++      processMap.put("createWriter", new createWriter());
++      processMap.put("update", new update());
++      processMap.put("flush", new flush());
++      processMap.put("closeWriter", new closeWriter());
++      processMap.put("updateRowConditionally", new updateRowConditionally());
++      processMap.put("createConditionalWriter", new createConditionalWriter());
++      processMap.put("updateRowsConditionally", new updateRowsConditionally());
++      processMap.put("closeConditionalWriter", new closeConditionalWriter());
++      processMap.put("getRowRange", new getRowRange());
++      processMap.put("getFollowing", new getFollowing());
++      return processMap;
++    }
++
++    public static class login<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, login_args, ByteBuffer> {
++      public login() {
++        super("login");
++      }
++
++      public login_args getEmptyArgsInstance() {
++        return new login_args();
++      }
++
++      public AsyncMethodCallback<ByteBuffer> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<ByteBuffer>() { 
++          public void onComplete(ByteBuffer o) {
++            login_result result = new login_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            login_result result = new login_result();
++            if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, login_args args, org.apache.thrift.async.AsyncMethodCallback<ByteBuffer> resultHandler) throws TException {
++        iface.login(args.principal, args.loginProperties,resultHandler);
++      }
++    }
++
++    public static class addConstraint<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, addConstraint_args, Integer> {
++      public addConstraint() {
++        super("addConstraint");
++      }
++
++      public addConstraint_args getEmptyArgsInstance() {
++        return new addConstraint_args();
++      }
++
++      public AsyncMethodCallback<Integer> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Integer>() { 
++          public void onComplete(Integer o) {
++            addConstraint_result result = new addConstraint_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            addConstraint_result result = new addConstraint_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, addConstraint_args args, org.apache.thrift.async.AsyncMethodCallback<Integer> resultHandler) throws TException {
++        iface.addConstraint(args.login, args.tableName, args.constraintClassName,resultHandler);
++      }
++    }
++
++    public static class addSplits<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, addSplits_args, Void> {
++      public addSplits() {
++        super("addSplits");
++      }
++
++      public addSplits_args getEmptyArgsInstance() {
++        return new addSplits_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            addSplits_result result = new addSplits_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            addSplits_result result = new addSplits_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, addSplits_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.addSplits(args.login, args.tableName, args.splits,resultHandler);
++      }
++    }
++
++    public static class attachIterator<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, attachIterator_args, Void> {
++      public attachIterator() {
++        super("attachIterator");
++      }
++
++      public attachIterator_args getEmptyArgsInstance() {
++        return new attachIterator_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            attachIterator_result result = new attachIterator_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            attachIterator_result result = new attachIterator_result();
++            if (e instanceof AccumuloSecurityException) {
++                        result.ouch1 = (AccumuloSecurityException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloException) {
++                        result.ouch2 = (AccumuloException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, attachIterator_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.attachIterator(args.login, args.tableName, args.setting, args.scopes,resultHandler);
++      }
++    }
++
++    public static class checkIteratorConflicts<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, checkIteratorConflicts_args, Void> {
++      public checkIteratorConflicts() {
++        super("checkIteratorConflicts");
++      }
++
++      public checkIteratorConflicts_args getEmptyArgsInstance() {
++        return new checkIteratorConflicts_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            checkIteratorConflicts_result result = new checkIteratorConflicts_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            checkIteratorConflicts_result result = new checkIteratorConflicts_result();
++            if (e instanceof AccumuloSecurityException) {
++                        result.ouch1 = (AccumuloSecurityException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloException) {
++                        result.ouch2 = (AccumuloException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, checkIteratorConflicts_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.checkIteratorConflicts(args.login, args.tableName, args.setting, args.scopes,resultHandler);
++      }
++    }
++
++    public static class clearLocatorCache<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, clearLocatorCache_args, Void> {
++      public clearLocatorCache() {
++        super("clearLocatorCache");
++      }
++
++      public clearLocatorCache_args getEmptyArgsInstance() {
++        return new clearLocatorCache_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            clearLocatorCache_result result = new clearLocatorCache_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            clearLocatorCache_result result = new clearLocatorCache_result();
++            if (e instanceof TableNotFoundException) {
++                        result.ouch1 = (TableNotFoundException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, clearLocatorCache_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.clearLocatorCache(args.login, args.tableName,resultHandler);
++      }
++    }
++
++    public static class cloneTable<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, cloneTable_args, Void> {
++      public cloneTable() {
++        super("cloneTable");
++      }
++
++      public cloneTable_args getEmptyArgsInstance() {
++        return new cloneTable_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            cloneTable_result result = new cloneTable_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            cloneTable_result result = new cloneTable_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableExistsException) {
++                        result.ouch4 = (TableExistsException) e;
++                        result.setOuch4IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, cloneTable_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.cloneTable(args.login, args.tableName, args.newTableName, args.flush, args.propertiesToSet, args.propertiesToExclude,resultHandler);
++      }
++    }
++
++    public static class compactTable<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, compactTable_args, Void> {
++      public compactTable() {
++        super("compactTable");
++      }
++
++      public compactTable_args getEmptyArgsInstance() {
++        return new compactTable_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            compactTable_result result = new compactTable_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            compactTable_result result = new compactTable_result();
++            if (e instanceof AccumuloSecurityException) {
++                        result.ouch1 = (AccumuloSecurityException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch2 = (TableNotFoundException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloException) {
++                        result.ouch3 = (AccumuloException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, compactTable_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.compactTable(args.login, args.tableName, args.startRow, args.endRow, args.iterators, args.flush, args.wait,resultHandler);
++      }
++    }
++
++    public static class cancelCompaction<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, cancelCompaction_args, Void> {
++      public cancelCompaction() {
++        super("cancelCompaction");
++      }
++
++      public cancelCompaction_args getEmptyArgsInstance() {
++        return new cancelCompaction_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            cancelCompaction_result result = new cancelCompaction_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            cancelCompaction_result result = new cancelCompaction_result();
++            if (e instanceof AccumuloSecurityException) {
++                        result.ouch1 = (AccumuloSecurityException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch2 = (TableNotFoundException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloException) {
++                        result.ouch3 = (AccumuloException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, cancelCompaction_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.cancelCompaction(args.login, args.tableName,resultHandler);
++      }
++    }
++
++    public static class createTable<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, createTable_args, Void> {
++      public createTable() {
++        super("createTable");
++      }
++
++      public createTable_args getEmptyArgsInstance() {
++        return new createTable_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            createTable_result result = new createTable_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            createTable_result result = new createTable_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableExistsException) {
++                        result.ouch3 = (TableExistsException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, createTable_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.createTable(args.login, args.tableName, args.versioningIter, args.type,resultHandler);
++      }
++    }
++
++    public static class deleteTable<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, deleteTable_args, Void> {
++      public deleteTable() {
++        super("deleteTable");
++      }
++
++      public deleteTable_args getEmptyArgsInstance() {
++        return new deleteTable_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            deleteTable_result result = new deleteTable_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            deleteTable_result result = new deleteTable_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, deleteTable_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.deleteTable(args.login, args.tableName,resultHandler);
++      }
++    }
++
++    public static class deleteRows<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, deleteRows_args, Void> {
++      public deleteRows() {
++        super("deleteRows");
++      }
++
++      public deleteRows_args getEmptyArgsInstance() {
++        return new deleteRows_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            deleteRows_result result = new deleteRows_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            deleteRows_result result = new deleteRows_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, deleteRows_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.deleteRows(args.login, args.tableName, args.startRow, args.endRow,resultHandler);
++      }
++    }
++
++    public static class exportTable<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, exportTable_args, Void> {
++      public exportTable() {
++        super("exportTable");
++      }
++
++      public exportTable_args getEmptyArgsInstance() {
++        return new exportTable_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            exportTable_result result = new exportTable_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            exportTable_result result = new exportTable_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, exportTable_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.exportTable(args.login, args.tableName, args.exportDir,resultHandler);
++      }
++    }
++
++    public static class flushTable<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, flushTable_args, Void> {
++      public flushTable() {
++        super("flushTable");
++      }
++
++      public flushTable_args getEmptyArgsInstance() {
++        return new flushTable_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            flushTable_result result = new flushTable_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            flushTable_result result = new flushTable_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, flushTable_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.flushTable(args.login, args.tableName, args.startRow, args.endRow, args.wait,resultHandler);
++      }
++    }
++
++    public static class getDiskUsage<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getDiskUsage_args, List<DiskUsage>> {
++      public getDiskUsage() {
++        super("getDiskUsage");
++      }
++
++      public getDiskUsage_args getEmptyArgsInstance() {
++        return new getDiskUsage_args();
++      }
++
++      public AsyncMethodCallback<List<DiskUsage>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<List<DiskUsage>>() { 
++          public void onComplete(List<DiskUsage> o) {
++            getDiskUsage_result result = new getDiskUsage_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getDiskUsage_result result = new getDiskUsage_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getDiskUsage_args args, org.apache.thrift.async.AsyncMethodCallback<List<DiskUsage>> resultHandler) throws TException {
++        iface.getDiskUsage(args.login, args.tables,resultHandler);
++      }
++    }
++
++    public static class getLocalityGroups<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getLocalityGroups_args, Map<String,Set<String>>> {
++      public getLocalityGroups() {
++        super("getLocalityGroups");
++      }
++
++      public getLocalityGroups_args getEmptyArgsInstance() {
++        return new getLocalityGroups_args();
++      }
++
++      public AsyncMethodCallback<Map<String,Set<String>>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Map<String,Set<String>>>() { 
++          public void onComplete(Map<String,Set<String>> o) {
++            getLocalityGroups_result result = new getLocalityGroups_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getLocalityGroups_result result = new getLocalityGroups_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getLocalityGroups_args args, org.apache.thrift.async.AsyncMethodCallback<Map<String,Set<String>>> resultHandler) throws TException {
++        iface.getLocalityGroups(args.login, args.tableName,resultHandler);
++      }
++    }
++
++    public static class getIteratorSetting<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getIteratorSetting_args, IteratorSetting> {
++      public getIteratorSetting() {
++        super("getIteratorSetting");
++      }
++
++      public getIteratorSetting_args getEmptyArgsInstance() {
++        return new getIteratorSetting_args();
++      }
++
++      public AsyncMethodCallback<IteratorSetting> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<IteratorSetting>() { 
++          public void onComplete(IteratorSetting o) {
++            getIteratorSetting_result result = new getIteratorSetting_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getIteratorSetting_result result = new getIteratorSetting_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getIteratorSetting_args args, org.apache.thrift.async.AsyncMethodCallback<IteratorSetting> resultHandler) throws TException {
++        iface.getIteratorSetting(args.login, args.tableName, args.iteratorName, args.scope,resultHandler);
++      }
++    }
++
++    public static class getMaxRow<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getMaxRow_args, ByteBuffer> {
++      public getMaxRow() {
++        super("getMaxRow");
++      }
++
++      public getMaxRow_args getEmptyArgsInstance() {
++        return new getMaxRow_args();
++      }
++
++      public AsyncMethodCallback<ByteBuffer> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<ByteBuffer>() { 
++          public void onComplete(ByteBuffer o) {
++            getMaxRow_result result = new getMaxRow_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getMaxRow_result result = new getMaxRow_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getMaxRow_args args, org.apache.thrift.async.AsyncMethodCallback<ByteBuffer> resultHandler) throws TException {
++        iface.getMaxRow(args.login, args.tableName, args.auths, args.startRow, args.startInclusive, args.endRow, args.endInclusive,resultHandler);
++      }
++    }
++
++    public static class getTableProperties<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getTableProperties_args, Map<String,String>> {
++      public getTableProperties() {
++        super("getTableProperties");
++      }
++
++      public getTableProperties_args getEmptyArgsInstance() {
++        return new getTableProperties_args();
++      }
++
++      public AsyncMethodCallback<Map<String,String>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Map<String,String>>() { 
++          public void onComplete(Map<String,String> o) {
++            getTableProperties_result result = new getTableProperties_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getTableProperties_result result = new getTableProperties_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getTableProperties_args args, org.apache.thrift.async.AsyncMethodCallback<Map<String,String>> resultHandler) throws TException {
++        iface.getTableProperties(args.login, args.tableName,resultHandler);
++      }
++    }
++
++    public static class importDirectory<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, importDirectory_args, Void> {
++      public importDirectory() {
++        super("importDirectory");
++      }
++
++      public importDirectory_args getEmptyArgsInstance() {
++        return new importDirectory_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            importDirectory_result result = new importDirectory_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            importDirectory_result result = new importDirectory_result();
++            if (e instanceof TableNotFoundException) {
++                        result.ouch1 = (TableNotFoundException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloException) {
++                        result.ouch3 = (AccumuloException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch4 = (AccumuloSecurityException) e;
++                        result.setOuch4IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, importDirectory_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.importDirectory(args.login, args.tableName, args.importDir, args.failureDir, args.setTime,resultHandler);
++      }
++    }
++
++    public static class importTable<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, importTable_args, Void> {
++      public importTable() {
++        super("importTable");
++      }
++
++      public importTable_args getEmptyArgsInstance() {
++        return new importTable_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            importTable_result result = new importTable_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            importTable_result result = new importTable_result();
++            if (e instanceof TableExistsException) {
++                        result.ouch1 = (TableExistsException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloException) {
++                        result.ouch2 = (AccumuloException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch3 = (AccumuloSecurityException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, importTable_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.importTable(args.login, args.tableName, args.importDir,resultHandler);
++      }
++    }
++
++    public static class listSplits<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, listSplits_args, List<ByteBuffer>> {
++      public listSplits() {
++        super("listSplits");
++      }
++
++      public listSplits_args getEmptyArgsInstance() {
++        return new listSplits_args();
++      }
++
++      public AsyncMethodCallback<List<ByteBuffer>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<List<ByteBuffer>>() { 
++          public void onComplete(List<ByteBuffer> o) {
++            listSplits_result result = new listSplits_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            listSplits_result result = new listSplits_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, listSplits_args args, org.apache.thrift.async.AsyncMethodCallback<List<ByteBuffer>> resultHandler) throws TException {
++        iface.listSplits(args.login, args.tableName, args.maxSplits,resultHandler);
++      }
++    }
++
++    public static class listTables<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, listTables_args, Set<String>> {
++      public listTables() {
++        super("listTables");
++      }
++
++      public listTables_args getEmptyArgsInstance() {
++        return new listTables_args();
++      }
++
++      public AsyncMethodCallback<Set<String>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Set<String>>() { 
++          public void onComplete(Set<String> o) {
++            listTables_result result = new listTables_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            listTables_result result = new listTables_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, listTables_args args, org.apache.thrift.async.AsyncMethodCallback<Set<String>> resultHandler) throws TException {
++        iface.listTables(args.login,resultHandler);
++      }
++    }
++
++    public static class listIterators<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, listIterators_args, Map<String,Set<IteratorScope>>> {
++      public listIterators() {
++        super("listIterators");
++      }
++
++      public listIterators_args getEmptyArgsInstance() {
++        return new listIterators_args();
++      }
++
++      public AsyncMethodCallback<Map<String,Set<IteratorScope>>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Map<String,Set<IteratorScope>>>() { 
++          public void onComplete(Map<String,Set<IteratorScope>> o) {
++            listIterators_result result = new listIterators_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            listIterators_result result = new listIterators_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, listIterators_args args, org.apache.thrift.async.AsyncMethodCallback<Map<String,Set<IteratorScope>>> resultHandler) throws TException {
++        iface.listIterators(args.login, args.tableName,resultHandler);
++      }
++    }
++
++    public static class listConstraints<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, listConstraints_args, Map<String,Integer>> {
++      public listConstraints() {
++        super("listConstraints");
++      }
++
++      public listConstraints_args getEmptyArgsInstance() {
++        return new listConstraints_args();
++      }
++
++      public AsyncMethodCallback<Map<String,Integer>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Map<String,Integer>>() { 
++          public void onComplete(Map<String,Integer> o) {
++            listConstraints_result result = new listConstraints_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            listConstraints_result result = new listConstraints_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, listConstraints_args args, org.apache.thrift.async.AsyncMethodCallback<Map<String,Integer>> resultHandler) throws TException {
++        iface.listConstraints(args.login, args.tableName,resultHandler);
++      }
++    }
++
++    public static class mergeTablets<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, mergeTablets_args, Void> {
++      public mergeTablets() {
++        super("mergeTablets");
++      }
++
++      public mergeTablets_args getEmptyArgsInstance() {
++        return new mergeTablets_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            mergeTablets_result result = new mergeTablets_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            mergeTablets_result result = new mergeTablets_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, mergeTablets_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.mergeTablets(args.login, args.tableName, args.startRow, args.endRow,resultHandler);
++      }
++    }
++
++    public static class offlineTable<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, offlineTable_args, Void> {
++      public offlineTable() {
++        super("offlineTable");
++      }
++
++      public offlineTable_args getEmptyArgsInstance() {
++        return new offlineTable_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            offlineTable_result result = new offlineTable_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            offlineTable_result result = new offlineTable_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, offlineTable_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.offlineTable(args.login, args.tableName, args.wait,resultHandler);
++      }
++    }
++
++    public static class onlineTable<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, onlineTable_args, Void> {
++      public onlineTable() {
++        super("onlineTable");
++      }
++
++      public onlineTable_args getEmptyArgsInstance() {
++        return new onlineTable_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            onlineTable_result result = new onlineTable_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            onlineTable_result result = new onlineTable_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, onlineTable_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.onlineTable(args.login, args.tableName, args.wait,resultHandler);
++      }
++    }
++
++    public static class removeConstraint<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, removeConstraint_args, Void> {
++      public removeConstraint() {
++        super("removeConstraint");
++      }
++
++      public removeConstraint_args getEmptyArgsInstance() {
++        return new removeConstraint_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            removeConstraint_result result = new removeConstraint_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            removeConstraint_result result = new removeConstraint_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, removeConstraint_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.removeConstraint(args.login, args.tableName, args.constraint,resultHandler);
++      }
++    }
++
++    public static class removeIterator<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, removeIterator_args, Void> {
++      public removeIterator() {
++        super("removeIterator");
++      }
++
++      public removeIterator_args getEmptyArgsInstance() {
++        return new removeIterator_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            removeIterator_result result = new removeIterator_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            removeIterator_result result = new removeIterator_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, removeIterator_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.removeIterator(args.login, args.tableName, args.iterName, args.scopes,resultHandler);
++      }
++    }
++
++    public static class removeTableProperty<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, removeTableProperty_args, Void> {
++      public removeTableProperty() {
++        super("removeTableProperty");
++      }
++
++      public removeTableProperty_args getEmptyArgsInstance() {
++        return new removeTableProperty_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            removeTableProperty_result result = new removeTableProperty_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            removeTableProperty_result result = new removeTableProperty_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, removeTableProperty_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.removeTableProperty(args.login, args.tableName, args.property,resultHandler);
++      }
++    }
++
++    public static class renameTable<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, renameTable_args, Void> {
++      public renameTable() {
++        super("renameTable");
++      }
++
++      public renameTable_args getEmptyArgsInstance() {
++        return new renameTable_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            renameTable_result result = new renameTable_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            renameTable_result result = new renameTable_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableExistsException) {
++                        result.ouch4 = (TableExistsException) e;
++                        result.setOuch4IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, renameTable_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.renameTable(args.login, args.oldTableName, args.newTableName,resultHandler);
++      }
++    }
++
++    public static class setLocalityGroups<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, setLocalityGroups_args, Void> {
++      public setLocalityGroups() {
++        super("setLocalityGroups");
++      }
++
++      public setLocalityGroups_args getEmptyArgsInstance() {
++        return new setLocalityGroups_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            setLocalityGroups_result result = new setLocalityGroups_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            setLocalityGroups_result result = new setLocalityGroups_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, setLocalityGroups_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.setLocalityGroups(args.login, args.tableName, args.groups,resultHandler);
++      }
++    }
++
++    public static class setTableProperty<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, setTableProperty_args, Void> {
++      public setTableProperty() {
++        super("setTableProperty");
++      }
++
++      public setTableProperty_args getEmptyArgsInstance() {
++        return new setTableProperty_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            setTableProperty_result result = new setTableProperty_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            setTableProperty_result result = new setTableProperty_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, setTableProperty_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.setTableProperty(args.login, args.tableName, args.property, args.value,resultHandler);
++      }
++    }
++
++    public static class splitRangeByTablets<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, splitRangeByTablets_args, Set<Range>> {
++      public splitRangeByTablets() {
++        super("splitRangeByTablets");
++      }
++
++      public splitRangeByTablets_args getEmptyArgsInstance() {
++        return new splitRangeByTablets_args();
++      }
++
++      public AsyncMethodCallback<Set<Range>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Set<Range>>() { 
++          public void onComplete(Set<Range> o) {
++            splitRangeByTablets_result result = new splitRangeByTablets_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            splitRangeByTablets_result result = new splitRangeByTablets_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, splitRangeByTablets_args args, org.apache.thrift.async.AsyncMethodCallback<Set<Range>> resultHandler) throws TException {
++        iface.splitRangeByTablets(args.login, args.tableName, args.range, args.maxSplits,resultHandler);
++      }
++    }
++
++    public static class tableExists<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, tableExists_args, Boolean> {
++      public tableExists() {
++        super("tableExists");
++      }
++
++      public tableExists_args getEmptyArgsInstance() {
++        return new tableExists_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            tableExists_result result = new tableExists_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            tableExists_result result = new tableExists_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, tableExists_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.tableExists(args.login, args.tableName,resultHandler);
++      }
++    }
++
++    public static class tableIdMap<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, tableIdMap_args, Map<String,String>> {
++      public tableIdMap() {
++        super("tableIdMap");
++      }
++
++      public tableIdMap_args getEmptyArgsInstance() {
++        return new tableIdMap_args();
++      }
++
++      public AsyncMethodCallback<Map<String,String>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Map<String,String>>() { 
++          public void onComplete(Map<String,String> o) {
++            tableIdMap_result result = new tableIdMap_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            tableIdMap_result result = new tableIdMap_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, tableIdMap_args args, org.apache.thrift.async.AsyncMethodCallback<Map<String,String>> resultHandler) throws TException {
++        iface.tableIdMap(args.login,resultHandler);
++      }
++    }
++
++    public static class testTableClassLoad<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, testTableClassLoad_args, Boolean> {
++      public testTableClassLoad() {
++        super("testTableClassLoad");
++      }
++
++      public testTableClassLoad_args getEmptyArgsInstance() {
++        return new testTableClassLoad_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            testTableClassLoad_result result = new testTableClassLoad_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            testTableClassLoad_result result = new testTableClassLoad_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, testTableClassLoad_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.testTableClassLoad(args.login, args.tableName, args.className, args.asTypeName,resultHandler);
++      }
++    }
++
++    public static class pingTabletServer<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, pingTabletServer_args, Void> {
++      public pingTabletServer() {
++        super("pingTabletServer");
++      }
++
++      public pingTabletServer_args getEmptyArgsInstance() {
++        return new pingTabletServer_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            pingTabletServer_result result = new pingTabletServer_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            pingTabletServer_result result = new pingTabletServer_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, pingTabletServer_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.pingTabletServer(args.login, args.tserver,resultHandler);
++      }
++    }
++
++    public static class getActiveScans<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getActiveScans_args, List<ActiveScan>> {
++      public getActiveScans() {
++        super("getActiveScans");
++      }
++
++      public getActiveScans_args getEmptyArgsInstance() {
++        return new getActiveScans_args();
++      }
++
++      public AsyncMethodCallback<List<ActiveScan>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<List<ActiveScan>>() { 
++          public void onComplete(List<ActiveScan> o) {
++            getActiveScans_result result = new getActiveScans_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getActiveScans_result result = new getActiveScans_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getActiveScans_args args, org.apache.thrift.async.AsyncMethodCallback<List<ActiveScan>> resultHandler) throws TException {
++        iface.getActiveScans(args.login, args.tserver,resultHandler);
++      }
++    }
++
++    public static class getActiveCompactions<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getActiveCompactions_args, List<ActiveCompaction>> {
++      public getActiveCompactions() {
++        super("getActiveCompactions");
++      }
++
++      public getActiveCompactions_args getEmptyArgsInstance() {
++        return new getActiveCompactions_args();
++      }
++
++      public AsyncMethodCallback<List<ActiveCompaction>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<List<ActiveCompaction>>() { 
++          public void onComplete(List<ActiveCompaction> o) {
++            getActiveCompactions_result result = new getActiveCompactions_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getActiveCompactions_result result = new getActiveCompactions_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getActiveCompactions_args args, org.apache.thrift.async.AsyncMethodCallback<List<ActiveCompaction>> resultHandler) throws TException {
++        iface.getActiveCompactions(args.login, args.tserver,resultHandler);
++      }
++    }
++
++    public static class getSiteConfiguration<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getSiteConfiguration_args, Map<String,String>> {
++      public getSiteConfiguration() {
++        super("getSiteConfiguration");
++      }
++
++      public getSiteConfiguration_args getEmptyArgsInstance() {
++        return new getSiteConfiguration_args();
++      }
++
++      public AsyncMethodCallback<Map<String,String>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Map<String,String>>() { 
++          public void onComplete(Map<String,String> o) {
++            getSiteConfiguration_result result = new getSiteConfiguration_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getSiteConfiguration_result result = new getSiteConfiguration_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getSiteConfiguration_args args, org.apache.thrift.async.AsyncMethodCallback<Map<String,String>> resultHandler) throws TException {
++        iface.getSiteConfiguration(args.login,resultHandler);
++      }
++    }
++
++    public static class getSystemConfiguration<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getSystemConfiguration_args, Map<String,String>> {
++      public getSystemConfiguration() {
++        super("getSystemConfiguration");
++      }
++
++      public getSystemConfiguration_args getEmptyArgsInstance() {
++        return new getSystemConfiguration_args();
++      }
++
++      public AsyncMethodCallback<Map<String,String>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Map<String,String>>() { 
++          public void onComplete(Map<String,String> o) {
++            getSystemConfiguration_result result = new getSystemConfiguration_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getSystemConfiguration_result result = new getSystemConfiguration_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getSystemConfiguration_args args, org.apache.thrift.async.AsyncMethodCallback<Map<String,String>> resultHandler) throws TException {
++        iface.getSystemConfiguration(args.login,resultHandler);
++      }
++    }
++
++    public static class getTabletServers<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getTabletServers_args, List<String>> {
++      public getTabletServers() {
++        super("getTabletServers");
++      }
++
++      public getTabletServers_args getEmptyArgsInstance() {
++        return new getTabletServers_args();
++      }
++
++      public AsyncMethodCallback<List<String>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<List<String>>() { 
++          public void onComplete(List<String> o) {
++            getTabletServers_result result = new getTabletServers_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getTabletServers_result result = new getTabletServers_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getTabletServers_args args, org.apache.thrift.async.AsyncMethodCallback<List<String>> resultHandler) throws TException {
++        iface.getTabletServers(args.login,resultHandler);
++      }
++    }
++
++    public static class removeProperty<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, removeProperty_args, Void> {
++      public removeProperty() {
++        super("removeProperty");
++      }
++
++      public removeProperty_args getEmptyArgsInstance() {
++        return new removeProperty_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            removeProperty_result result = new removeProperty_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            removeProperty_result result = new removeProperty_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, removeProperty_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.removeProperty(args.login, args.property,resultHandler);
++      }
++    }
++
++    public static class setProperty<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, setProperty_args, Void> {
++      public setProperty() {
++        super("setProperty");
++      }
++
++      public setProperty_args getEmptyArgsInstance() {
++        return new setProperty_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            setProperty_result result = new setProperty_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            setProperty_result result = new setProperty_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, setProperty_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.setProperty(args.login, args.property, args.value,resultHandler);
++      }
++    }
++
++    public static class testClassLoad<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, testClassLoad_args, Boolean> {
++      public testClassLoad() {
++        super("testClassLoad");
++      }
++
++      public testClassLoad_args getEmptyArgsInstance() {
++        return new testClassLoad_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            testClassLoad_result result = new testClassLoad_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            testClassLoad_result result = new testClassLoad_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, testClassLoad_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.testClassLoad(args.login, args.className, args.asTypeName,resultHandler);
++      }
++    }
++
++    public static class authenticateUser<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, authenticateUser_args, Boolean> {
++      public authenticateUser() {
++        super("authenticateUser");
++      }
++
++      public authenticateUser_args getEmptyArgsInstance() {
++        return new authenticateUser_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            authenticateUser_result result = new authenticateUser_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            authenticateUser_result result = new authenticateUser_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, authenticateUser_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.authenticateUser(args.login, args.user, args.properties,resultHandler);
++      }
++    }
++
++    public static class changeUserAuthorizations<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, changeUserAuthorizations_args, Void> {
++      public changeUserAuthorizations() {
++        super("changeUserAuthorizations");
++      }
++
++      public changeUserAuthorizations_args getEmptyArgsInstance() {
++        return new changeUserAuthorizations_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            changeUserAuthorizations_result result = new changeUserAuthorizations_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            changeUserAuthorizations_result result = new changeUserAuthorizations_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, changeUserAuthorizations_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.changeUserAuthorizations(args.login, args.user, args.authorizations,resultHandler);
++      }
++    }
++
++    public static class changeLocalUserPassword<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, changeLocalUserPassword_args, Void> {
++      public changeLocalUserPassword() {
++        super("changeLocalUserPassword");
++      }
++
++      public changeLocalUserPassword_args getEmptyArgsInstance() {
++        return new changeLocalUserPassword_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            changeLocalUserPassword_result result = new changeLocalUserPassword_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            changeLocalUserPassword_result result = new changeLocalUserPassword_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, changeLocalUserPassword_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.changeLocalUserPassword(args.login, args.user, args.password,resultHandler);
++      }
++    }
++
++    public static class createLocalUser<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, createLocalUser_args, Void> {
++      public createLocalUser() {
++        super("createLocalUser");
++      }
++
++      public createLocalUser_args getEmptyArgsInstance() {
++        return new createLocalUser_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            createLocalUser_result result = new createLocalUser_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            createLocalUser_result result = new createLocalUser_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, createLocalUser_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.createLocalUser(args.login, args.user, args.password,resultHandler);
++      }
++    }
++
++    public static class dropLocalUser<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, dropLocalUser_args, Void> {
++      public dropLocalUser() {
++        super("dropLocalUser");
++      }
++
++      public dropLocalUser_args getEmptyArgsInstance() {
++        return new dropLocalUser_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            dropLocalUser_result result = new dropLocalUser_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            dropLocalUser_result result = new dropLocalUser_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, dropLocalUser_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.dropLocalUser(args.login, args.user,resultHandler);
++      }
++    }
++
++    public static class getUserAuthorizations<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getUserAuthorizations_args, List<ByteBuffer>> {
++      public getUserAuthorizations() {
++        super("getUserAuthorizations");
++      }
++
++      public getUserAuthorizations_args getEmptyArgsInstance() {
++        return new getUserAuthorizations_args();
++      }
++
++      public AsyncMethodCallback<List<ByteBuffer>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<List<ByteBuffer>>() { 
++          public void onComplete(List<ByteBuffer> o) {
++            getUserAuthorizations_result result = new getUserAuthorizations_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getUserAuthorizations_result result = new getUserAuthorizations_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getUserAuthorizations_args args, org.apache.thrift.async.AsyncMethodCallback<List<ByteBuffer>> resultHandler) throws TException {
++        iface.getUserAuthorizations(args.login, args.user,resultHandler);
++      }
++    }
++
++    public static class grantSystemPermission<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, grantSystemPermission_args, Void> {
++      public grantSystemPermission() {
++        super("grantSystemPermission");
++      }
++
++      public grantSystemPermission_args getEmptyArgsInstance() {
++        return new grantSystemPermission_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            grantSystemPermission_result result = new grantSystemPermission_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            grantSystemPermission_result result = new grantSystemPermission_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, grantSystemPermission_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.grantSystemPermission(args.login, args.user, args.perm,resultHandler);
++      }
++    }
++
++    public static class grantTablePermission<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, grantTablePermission_args, Void> {
++      public grantTablePermission() {
++        super("grantTablePermission");
++      }
++
++      public grantTablePermission_args getEmptyArgsInstance() {
++        return new grantTablePermission_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            grantTablePermission_result result = new grantTablePermission_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            grantTablePermission_result result = new grantTablePermission_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, grantTablePermission_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.grantTablePermission(args.login, args.user, args.table, args.perm,resultHandler);
++      }
++    }
++
++    public static class hasSystemPermission<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, hasSystemPermission_args, Boolean> {
++      public hasSystemPermission() {
++        super("hasSystemPermission");
++      }
++
++      public hasSystemPermission_args getEmptyArgsInstance() {
++        return new hasSystemPermission_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            hasSystemPermission_result result = new hasSystemPermission_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            hasSystemPermission_result result = new hasSystemPermission_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, hasSystemPermission_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.hasSystemPermission(args.login, args.user, args.perm,resultHandler);
++      }
++    }
++
++    public static class hasTablePermission<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, hasTablePermission_args, Boolean> {
++      public hasTablePermission() {
++        super("hasTablePermission");
++      }
++
++      public hasTablePermission_args getEmptyArgsInstance() {
++        return new hasTablePermission_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            hasTablePermission_result result = new hasTablePermission_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            hasTablePermission_result result = new hasTablePermission_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, hasTablePermission_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.hasTablePermission(args.login, args.user, args.table, args.perm,resultHandler);
++      }
++    }
++
++    public static class listLocalUsers<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, listLocalUsers_args, Set<String>> {
++      public listLocalUsers() {
++        super("listLocalUsers");
++      }
++
++      public listLocalUsers_args getEmptyArgsInstance() {
++        return new listLocalUsers_args();
++      }
++
++      public AsyncMethodCallback<Set<String>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Set<String>>() { 
++          public void onComplete(Set<String> o) {
++            listLocalUsers_result result = new listLocalUsers_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            listLocalUsers_result result = new listLocalUsers_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, listLocalUsers_args args, org.apache.thrift.async.AsyncMethodCallback<Set<String>> resultHandler) throws TException {
++        iface.listLocalUsers(args.login,resultHandler);
++      }
++    }
++
++    public static class revokeSystemPermission<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, revokeSystemPermission_args, Void> {
++      public revokeSystemPermission() {
++        super("revokeSystemPermission");
++      }
++
++      public revokeSystemPermission_args getEmptyArgsInstance() {
++        return new revokeSystemPermission_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            revokeSystemPermission_result result = new revokeSystemPermission_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            revokeSystemPermission_result result = new revokeSystemPermission_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, revokeSystemPermission_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.revokeSystemPermission(args.login, args.user, args.perm,resultHandler);
++      }
++    }
++
++    public static class revokeTablePermission<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, revokeTablePermission_args, Void> {
++      public revokeTablePermission() {
++        super("revokeTablePermission");
++      }
++
++      public revokeTablePermission_args getEmptyArgsInstance() {
++        return new revokeTablePermission_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            revokeTablePermission_result result = new revokeTablePermission_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            revokeTablePermission_result result = new revokeTablePermission_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, revokeTablePermission_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.revokeTablePermission(args.login, args.user, args.table, args.perm,resultHandler);
++      }
++    }
++
++    public static class createBatchScanner<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, createBatchScanner_args, String> {
++      public createBatchScanner() {
++        super("createBatchScanner");
++      }
++
++      public createBatchScanner_args getEmptyArgsInstance() {
++        return new createBatchScanner_args();
++      }
++
++      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<String>() { 
++          public void onComplete(String o) {
++            createBatchScanner_result result = new createBatchScanner_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            createBatchScanner_result result = new createBatchScanner_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, createBatchScanner_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
++        iface.createBatchScanner(args.login, args.tableName, args.options,resultHandler);
++      }
++    }
++
++    public static class createScanner<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, createScanner_args, String> {
++      public createScanner() {
++        super("createScanner");
++      }
++
++      public createScanner_args getEmptyArgsInstance() {
++        return new createScanner_args();
++      }
++
++      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<String>() { 
++          public void onComplete(String o) {
++            createScanner_result result = new createScanner_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            createScanner_result result = new createScanner_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, createScanner_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
++        iface.createScanner(args.login, args.tableName, args.options,resultHandler);
++      }
++    }
++
++    public static class hasNext<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, hasNext_args, Boolean> {
++      public hasNext() {
++        super("hasNext");
++      }
++
++      public hasNext_args getEmptyArgsInstance() {
++        return new hasNext_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            hasNext_result result = new hasNext_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            hasNext_result result = new hasNext_result();
++            if (e instanceof UnknownScanner) {
++                        result.ouch1 = (UnknownScanner) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, hasNext_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.hasNext(args.scanner,resultHandler);
++      }
++    }
++
++    public static class nextEntry<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, nextEntry_args, KeyValueAndPeek> {
++      public nextEntry() {
++        super("nextEntry");
++      }
++
++      public nextEntry_args getEmptyArgsInstance() {
++        return new nextEntry_args();
++      }
++
++      public AsyncMethodCallback<KeyValueAndPeek> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<KeyValueAndPeek>() { 
++          public void onComplete(KeyValueAndPeek o) {
++            nextEntry_result result = new nextEntry_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            nextEntry_result result = new nextEntry_result();
++            if (e instanceof NoMoreEntriesException) {
++                        result.ouch1 = (NoMoreEntriesException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof UnknownScanner) {
++                        result.ouch2 = (UnknownScanner) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch3 = (AccumuloSecurityException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, nextEntry_args args, org.apache.thrift.async.AsyncMethodCallback<KeyValueAndPeek> resultHandler) throws TException {
++        iface.nextEntry(args.scanner,resultHandler);
++      }
++    }
++
++    public static class nextK<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, nextK_args, ScanResult> {
++      public nextK() {
++        super("nextK");
++      }
++
++      public nextK_args getEmptyArgsInstance() {
++        return new nextK_args();
++      }
++
++      public AsyncMethodCallback<ScanResult> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<ScanResult>() { 
++          public void onComplete(ScanResult o) {
++            nextK_result result = new nextK_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            nextK_result result = new nextK_result();
++            if (e instanceof NoMoreEntriesException) {
++                        result.ouch1 = (NoMoreEntriesException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof UnknownScanner) {
++                        result.ouch2 = (UnknownScanner) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch3 = (AccumuloSecurityException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, nextK_args args, org.apache.thrift.async.AsyncMethodCallback<ScanResult> resultHandler) throws TException {
++        iface.nextK(args.scanner, args.k,resultHandler);
++      }
++    }
++
++    public static class closeScanner<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, closeScanner_args, Void> {
++      public closeScanner() {
++        super("closeScanner");
++      }
++
++      public closeScanner_args getEmptyArgsInstance() {
++        return new closeScanner_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            closeScanner_result result = new closeScanner_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            closeScanner_result result = new closeScanner_result();
++            if (e instanceof UnknownScanner) {
++                        result.ouch1 = (UnknownScanner) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, closeScanner_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.closeScanner(args.scanner,resultHandler);
++      }
++    }
++
++    public static class updateAndFlush<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateAndFlush_args, Void> {
++      public updateAndFlush() {
++        super("updateAndFlush");
++      }
++
++      public updateAndFlush_args getEmptyArgsInstance() {
++        return new updateAndFlush_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            updateAndFlush_result result = new updateAndFlush_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            updateAndFlush_result result = new updateAndFlush_result();
++            if (e instanceof AccumuloException) {
++                        result.outch1 = (AccumuloException) e;
++                        result.setOutch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof MutationsRejectedException) {
++                        result.ouch4 = (MutationsRejectedException) e;
++                        result.setOuch4IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, updateAndFlush_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.updateAndFlush(args.login, args.tableName, args.cells,resultHandler);
++      }
++    }
++
++    public static class createWriter<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, createWriter_args, String> {
++      public createWriter() {
++        super("createWriter");
++      }
++
++      public createWriter_args getEmptyArgsInstance() {
++        return new createWriter_args();
++      }
++
++      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<String>() { 
++          public void onComplete(String o) {
++            createWriter_result result = new createWriter_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            createWriter_result result = new createWriter_result();
++            if (e instanceof AccumuloException) {
++                        result.outch1 = (AccumuloException) e;
++                        result.setOutch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, createWriter_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
++        iface.createWriter(args.login, args.tableName, args.opts,resultHandler);
++      }
++    }
++
++    public static class update<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, update_args, Void> {
++      public update() {
++        super("update");
++      }
++
++      public update_args getEmptyArgsInstance() {
++        return new update_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++          }
++          public void onError(Exception e) {
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return true;
++      }
++
++      public void start(I iface, update_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.update(args.writer, args.cells,resultHandler);
++      }
++    }
++
++    public static class flush<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, flush_args, Void> {
++      public flush() {
++        super("flush");
++      }
++
++      public flush_args getEmptyArgsInstance() {
++        return new flush_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            flush_result result = new flush_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            flush_result result = new flush_result();
++            if (e instanceof UnknownWriter) {
++                        result.ouch1 = (UnknownWriter) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof MutationsRejectedException) {
++                        result.ouch2 = (MutationsRejectedException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, flush_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.flush(args.writer,resultHandler);
++      }
++    }
++
++    public static class closeWriter<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, closeWriter_args, Void> {
++      public closeWriter() {
++        super("closeWriter");
++      }
++
++      public closeWriter_args getEmptyArgsInstance() {
++        return new closeWriter_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            closeWriter_result result = new closeWriter_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            closeWriter_result result = new closeWriter_result();
++            if (e instanceof UnknownWriter) {
++                        result.ouch1 = (UnknownWriter) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof MutationsRejectedException) {
++                        result.ouch2 = (MutationsRejectedException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, closeWriter_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.closeWriter(args.writer,resultHandler);
++      }
++    }
++
++    public static class updateRowConditionally<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateRowConditionally_args, ConditionalStatus> {
++      public updateRowConditionally() {
++        super("updateRowConditionally");
++      }
++
++      public updateRowConditionally_args getEmptyArgsInstance() {
++        return new updateRowConditionally_args();
++      }
++
++      public AsyncMethodCallback<ConditionalStatus> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<ConditionalStatus>() { 
++          public void onComplete(ConditionalStatus o) {
++            updateRowConditionally_result result = new updateRowConditionally_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            updateRowConditionally_result result = new updateRowConditionally_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, updateRowConditionally_args args, org.apache.thrift.async.AsyncMethodCallback<ConditionalStatus> resultHandler) throws TException {
++        iface.updateRowConditionally(args.login, args.tableName, args.row, args.updates,resultHandler);
++      }
++    }
++
++    public static class createConditionalWriter<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, createConditionalWriter_args, String> {
++      public createConditionalWriter() {
++        super("createConditionalWriter");
++      }
++
++      public createConditionalWriter_args getEmptyArgsInstance() {
++        return new createConditionalWriter_args();
++      }
++
++      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<String>() { 
++          public void onComplete(String o) {
++            createConditionalWriter_result result = new createConditionalWriter_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            createConditionalWriter_result result = new createConditionalWriter_result();
++            if (e instanceof AccumuloException) {
++                        result.ouch1 = (AccumuloException) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch2 = (AccumuloSecurityException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof TableNotFoundException) {
++                        result.ouch3 = (TableNotFoundException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, createConditionalWriter_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
++        iface.createConditionalWriter(args.login, args.tableName, args.options,resultHandler);
++      }
++    }
++
++    public static class updateRowsConditionally<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateRowsConditionally_args, Map<ByteBuffer,ConditionalStatus>> {
++      public updateRowsConditionally() {
++        super("updateRowsConditionally");
++      }
++
++      public updateRowsConditionally_args getEmptyArgsInstance() {
++        return new updateRowsConditionally_args();
++      }
++
++      public AsyncMethodCallback<Map<ByteBuffer,ConditionalStatus>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Map<ByteBuffer,ConditionalStatus>>() { 
++          public void onComplete(Map<ByteBuffer,ConditionalStatus> o) {
++            updateRowsConditionally_result result = new updateRowsConditionally_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            updateRowsConditionally_result result = new updateRowsConditionally_result();
++            if (e instanceof UnknownWriter) {
++                        result.ouch1 = (UnknownWriter) e;
++                        result.setOuch1IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloException) {
++                        result.ouch2 = (AccumuloException) e;
++                        result.setOuch2IsSet(true);
++                        msg = result;
++            }
++            else             if (e instanceof AccumuloSecurityException) {
++                        result.ouch3 = (AccumuloSecurityException) e;
++                        result.setOuch3IsSet(true);
++                        msg = result;
++            }
++             else 
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, updateRowsConditionally_args args, org.apache.thrift.async.AsyncMethodCallback<Map<ByteBuffer,ConditionalStatus>> resultHandler) throws TException {
++        iface.updateRowsConditionally(args.conditionalWriter, args.updates,resultHandler);
++      }
++    }
++
++    public static class closeConditionalWriter<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, closeConditionalWriter_args, Void> {
++      public closeConditionalWriter() {
++        super("closeConditionalWriter");
++      }
++
++      public closeConditionalWriter_args getEmptyArgsInstance() {
++        return new closeConditionalWriter_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++            closeConditionalWriter_result result = new closeConditionalWriter_result();
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            closeConditionalWriter_result result = new closeConditionalWriter_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, closeConditionalWriter_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.closeConditionalWriter(args.conditionalWriter,resultHandler);
++      }
++    }
++
++    public static class getRowRange<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getRowRange_args, Range> {
++      public getRowRange() {
++        super("getRowRange");
++      }
++
++      public getRowRange_args getEmptyArgsInstance() {
++        return new getRowRange_args();
++      }
++
++      public AsyncMethodCallback<Range> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Range>() { 
++          public void onComplete(Range o) {
++            getRowRange_result result = new getRowRange_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getRowRange_result result = new getRowRange_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getRowRange_args args, org.apache.thrift.async.AsyncMethodCallback<Range> resultHandler) throws TException {
++        iface.getRowRange(args.row,resultHandler);
++      }
++    }
++
++    public static class getFollowing<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getFollowing_args, Key> {
++      public getFollowing() {
++        super("getFollowing");
++      }
++
++      public getFollowing_args getEmptyArgsInstance() {
++        return new getFollowing_args();
++      }
++
++      public AsyncMethodCallback<Key> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Key>() { 
++          public void onComplete(Key o) {
++            getFollowing_result result = new getFollowing_result();
++            result.success = o;
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            getFollowing_result result = new getFollowing_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, getFollowing_args args, org.apache.thrift.async.AsyncMethodCallback<Key> resultHandler) throws TException {
++        iface.getFollowing(args.key, args.part,resultHandler);
++      }
++    }
++
++  }
++
++  public static class login_args implements org.apache.thrift.TBase<login_args, login_args._Fields>, java.io.Serializable, Cloneable, Comparable<login_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("login_args");
+ 
+     private static final org.apache.thrift.protocol.TField PRINCIPAL_FIELD_DESC = new org.apache.thrift.protocol.TField("principal", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -7861,18 +12813,7 @@ import org.slf4j.LoggerFactory;
+         this.principal = other.principal;
+       }
+       if (other.isSetLoginProperties()) {
+-        Map<String,String> __this__loginProperties = new HashMap<String,String>();
+-        for (Map.Entry<String, String> other_element : other.loginProperties.entrySet()) {
+-
+-          String other_element_key = other_element.getKey();
+-          String other_element_value = other_element.getValue();
+-
+-          String __this__loginProperties_copy_key = other_element_key;
+-
+-          String __this__loginProperties_copy_value = other_element_value;
+-
+-          __this__loginProperties.put(__this__loginProperties_copy_key, __this__loginProperties_copy_value);
+-        }
++        Map<String,String> __this__loginProperties = new HashMap<String,String>(other.loginProperties);
+         this.loginProperties = __this__loginProperties;
+       }
+     }
+@@ -8033,30 +12974,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(login_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      login_args typedOther = (login_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(typedOther.isSetPrincipal());
++      lastComparison = Boolean.valueOf(isSetPrincipal()).compareTo(other.isSetPrincipal());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPrincipal()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, typedOther.principal);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principal, other.principal);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetLoginProperties()).compareTo(typedOther.isSetLoginProperties());
++      lastComparison = Boolean.valueOf(isSetLoginProperties()).compareTo(other.isSetLoginProperties());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLoginProperties()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.loginProperties, typedOther.loginProperties);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.loginProperties, other.loginProperties);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -8154,8 +13095,8 @@ import org.slf4j.LoggerFactory;
+                   struct.loginProperties = new HashMap<String,String>(2*_map154.size);
+                   for (int _i155 = 0; _i155 < _map154.size; ++_i155)
+                   {
+-                    String _key156; // required
+-                    String _val157; // required
++                    String _key156;
++                    String _val157;
+                     _key156 = iprot.readString();
+                     _val157 = iprot.readString();
+                     struct.loginProperties.put(_key156, _val157);
+@@ -8254,8 +13195,8 @@ import org.slf4j.LoggerFactory;
+             struct.loginProperties = new HashMap<String,String>(2*_map160.size);
+             for (int _i161 = 0; _i161 < _map160.size; ++_i161)
+             {
+-              String _key162; // required
+-              String _val163; // required
++              String _key162;
++              String _val163;
+               _key162 = iprot.readString();
+               _val163 = iprot.readString();
+               struct.loginProperties.put(_key162, _val163);
+@@ -8268,7 +13209,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class login_result implements org.apache.thrift.TBase<login_result, login_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class login_result implements org.apache.thrift.TBase<login_result, login_result._Fields>, java.io.Serializable, Cloneable, Comparable<login_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("login_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRING, (short)0);
+@@ -8536,30 +13477,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(login_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      login_result typedOther = (login_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -8735,7 +13676,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class addConstraint_args implements org.apache.thrift.TBase<addConstraint_args, addConstraint_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class addConstraint_args implements org.apache.thrift.TBase<addConstraint_args, addConstraint_args._Fields>, java.io.Serializable, Cloneable, Comparable<addConstraint_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("addConstraint_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -9062,40 +14003,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(addConstraint_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      addConstraint_args typedOther = (addConstraint_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetConstraintClassName()).compareTo(typedOther.isSetConstraintClassName());
++      lastComparison = Boolean.valueOf(isSetConstraintClassName()).compareTo(other.isSetConstraintClassName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetConstraintClassName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.constraintClassName, typedOther.constraintClassName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.constraintClassName, other.constraintClassName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -9300,7 +14241,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class addConstraint_result implements org.apache.thrift.TBase<addConstraint_result, addConstraint_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class addConstraint_result implements org.apache.thrift.TBase<addConstraint_result, addConstraint_result._Fields>, java.io.Serializable, Cloneable, Comparable<addConstraint_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("addConstraint_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.I32, (short)0);
+@@ -9677,50 +14618,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(addConstraint_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      addConstraint_result typedOther = (addConstraint_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -9960,7 +14901,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class addSplits_args implements org.apache.thrift.TBase<addSplits_args, addSplits_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class addSplits_args implements org.apache.thrift.TBase<addSplits_args, addSplits_args._Fields>, java.io.Serializable, Cloneable, Comparable<addSplits_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("addSplits_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -10082,12 +15023,7 @@ import org.slf4j.LoggerFactory;
+         this.tableName = other.tableName;
+       }
+       if (other.isSetSplits()) {
+-        Set<ByteBuffer> __this__splits = new HashSet<ByteBuffer>();
+-        for (ByteBuffer other_element : other.splits) {
+-          ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-          __this__splits.add(temp_binary_element);
+-        }
++        Set<ByteBuffer> __this__splits = new HashSet<ByteBuffer>(other.splits);
+         this.splits = __this__splits;
+       }
+     }
+@@ -10309,40 +15245,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(addSplits_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      addSplits_args typedOther = (addSplits_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSplits()).compareTo(typedOther.isSetSplits());
++      lastComparison = Boolean.valueOf(isSetSplits()).compareTo(other.isSetSplits());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSplits()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.splits, typedOther.splits);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.splits, other.splits);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -10456,7 +15392,7 @@ import org.slf4j.LoggerFactory;
+                   struct.splits = new HashSet<ByteBuffer>(2*_set164.size);
+                   for (int _i165 = 0; _i165 < _set164.size; ++_i165)
+                   {
+-                    ByteBuffer _elem166; // required
++                    ByteBuffer _elem166;
+                     _elem166 = iprot.readBinary();
+                     struct.splits.add(_elem166);
+                   }
+@@ -10567,7 +15503,7 @@ import org.slf4j.LoggerFactory;
+             struct.splits = new HashSet<ByteBuffer>(2*_set169.size);
+             for (int _i170 = 0; _i170 < _set169.size; ++_i170)
+             {
+-              ByteBuffer _elem171; // required
++              ByteBuffer _elem171;
+               _elem171 = iprot.readBinary();
+               struct.splits.add(_elem171);
+             }
+@@ -10579,7 +15515,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class addSplits_result implements org.apache.thrift.TBase<addSplits_result, addSplits_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class addSplits_result implements org.apache.thrift.TBase<addSplits_result, addSplits_result._Fields>, java.io.Serializable, Cloneable, Comparable<addSplits_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("addSplits_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -10895,40 +15831,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(addSplits_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      addSplits_result typedOther = (addSplits_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -11139,7 +16075,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class attachIterator_args implements org.apache.thrift.TBase<attachIterator_args, attachIterator_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class attachIterator_args implements org.apache.thrift.TBase<attachIterator_args, attachIterator_args._Fields>, java.io.Serializable, Cloneable, Comparable<attachIterator_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("attachIterator_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -11273,7 +16209,7 @@ import org.slf4j.LoggerFactory;
+         this.setting = new IteratorSetting(other.setting);
+       }
+       if (other.isSetScopes()) {
+-        Set<IteratorScope> __this__scopes = new HashSet<IteratorScope>();
++        Set<IteratorScope> __this__scopes = new HashSet<IteratorScope>(other.scopes.size());
+         for (IteratorScope other_element : other.scopes) {
+           __this__scopes.add(other_element);
+         }
+@@ -11545,50 +16481,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(attachIterator_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      attachIterator_args typedOther = (attachIterator_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSetting()).compareTo(typedOther.isSetSetting());
++      lastComparison = Boolean.valueOf(isSetSetting()).compareTo(other.isSetSetting());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSetting()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.setting, typedOther.setting);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.setting, other.setting);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetScopes()).compareTo(typedOther.isSetScopes());
++      lastComparison = Boolean.valueOf(isSetScopes()).compareTo(other.isSetScopes());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetScopes()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scopes, typedOther.scopes);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scopes, other.scopes);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -11722,7 +16658,7 @@ import org.slf4j.LoggerFactory;
+                   struct.scopes = new HashSet<IteratorScope>(2*_set172.size);
+                   for (int _i173 = 0; _i173 < _set172.size; ++_i173)
+                   {
+-                    IteratorScope _elem174; // required
++                    IteratorScope _elem174;
+                     _elem174 = IteratorScope.findByValue(iprot.readI32());
+                     struct.scopes.add(_elem174);
+                   }
+@@ -11849,7 +16785,7 @@ import org.slf4j.LoggerFactory;
+             struct.scopes = new HashSet<IteratorScope>(2*_set177.size);
+             for (int _i178 = 0; _i178 < _set177.size; ++_i178)
+             {
+-              IteratorScope _elem179; // required
++              IteratorScope _elem179;
+               _elem179 = IteratorScope.findByValue(iprot.readI32());
+               struct.scopes.add(_elem179);
+             }
+@@ -11861,7 +16797,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class attachIterator_result implements org.apache.thrift.TBase<attachIterator_result, attachIterator_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class attachIterator_result implements org.apache.thrift.TBase<attachIterator_result, attachIterator_result._Fields>, java.io.Serializable, Cloneable, Comparable<attachIterator_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("attachIterator_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -12177,40 +17113,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(attachIterator_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      attachIterator_result typedOther = (attachIterator_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -12421,7 +17357,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class checkIteratorConflicts_args implements org.apache.thrift.TBase<checkIteratorConflicts_args, checkIteratorConflicts_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class checkIteratorConflicts_args implements org.apache.thrift.TBase<checkIteratorConflicts_args, checkIteratorConflicts_args._Fields>, java.io.Serializable, Cloneable, Comparable<checkIteratorConflicts_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("checkIteratorConflicts_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -12555,7 +17491,7 @@ import org.slf4j.LoggerFactory;
+         this.setting = new IteratorSetting(other.setting);
+       }
+       if (other.isSetScopes()) {
+-        Set<IteratorScope> __this__scopes = new HashSet<IteratorScope>();
++        Set<IteratorScope> __this__scopes = new HashSet<IteratorScope>(other.scopes.size());
+         for (IteratorScope other_element : other.scopes) {
+           __this__scopes.add(other_element);
+         }
+@@ -12827,50 +17763,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(checkIteratorConflicts_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      checkIteratorConflicts_args typedOther = (checkIteratorConflicts_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSetting()).compareTo(typedOther.isSetSetting());
++      lastComparison = Boolean.valueOf(isSetSetting()).compareTo(other.isSetSetting());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSetting()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.setting, typedOther.setting);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.setting, other.setting);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetScopes()).compareTo(typedOther.isSetScopes());
++      lastComparison = Boolean.valueOf(isSetScopes()).compareTo(other.isSetScopes());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetScopes()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scopes, typedOther.scopes);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scopes, other.scopes);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -13004,7 +17940,7 @@ import org.slf4j.LoggerFactory;
+                   struct.scopes = new HashSet<IteratorScope>(2*_set180.size);
+                   for (int _i181 = 0; _i181 < _set180.size; ++_i181)
+                   {
+-                    IteratorScope _elem182; // required
++                    IteratorScope _elem182;
+                     _elem182 = IteratorScope.findByValue(iprot.readI32());
+                     struct.scopes.add(_elem182);
+                   }
+@@ -13131,7 +18067,7 @@ import org.slf4j.LoggerFactory;
+             struct.scopes = new HashSet<IteratorScope>(2*_set185.size);
+             for (int _i186 = 0; _i186 < _set185.size; ++_i186)
+             {
+-              IteratorScope _elem187; // required
++              IteratorScope _elem187;
+               _elem187 = IteratorScope.findByValue(iprot.readI32());
+               struct.scopes.add(_elem187);
+             }
+@@ -13143,7 +18079,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class checkIteratorConflicts_result implements org.apache.thrift.TBase<checkIteratorConflicts_result, checkIteratorConflicts_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class checkIteratorConflicts_result implements org.apache.thrift.TBase<checkIteratorConflicts_result, checkIteratorConflicts_result._Fields>, java.io.Serializable, Cloneable, Comparable<checkIteratorConflicts_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("checkIteratorConflicts_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -13459,40 +18395,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(checkIteratorConflicts_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      checkIteratorConflicts_result typedOther = (checkIteratorConflicts_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -13703,7 +18639,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class clearLocatorCache_args implements org.apache.thrift.TBase<clearLocatorCache_args, clearLocatorCache_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class clearLocatorCache_args implements org.apache.thrift.TBase<clearLocatorCache_args, clearLocatorCache_args._Fields>, java.io.Serializable, Cloneable, Comparable<clearLocatorCache_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("clearLocatorCache_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -13971,30 +18907,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(clearLocatorCache_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      clearLocatorCache_args typedOther = (clearLocatorCache_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -14168,7 +19104,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class clearLocatorCache_result implements org.apache.thrift.TBase<clearLocatorCache_result, clearLocatorCache_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class clearLocatorCache_result implements org.apache.thrift.TBase<clearLocatorCache_result, clearLocatorCache_result._Fields>, java.io.Serializable, Cloneable, Comparable<clearLocatorCache_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("clearLocatorCache_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -14366,20 +19302,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(clearLocatorCache_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      clearLocatorCache_result typedOther = (clearLocatorCache_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -14524,7 +19460,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class cloneTable_args implements org.apache.thrift.TBase<cloneTable_args, cloneTable_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class cloneTable_args implements org.apache.thrift.TBase<cloneTable_args, cloneTable_args._Fields>, java.io.Serializable, Cloneable, Comparable<cloneTable_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("cloneTable_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -14683,25 +19619,11 @@ import org.slf4j.LoggerFactory;
+       }
+       this.flush = other.flush;
+       if (other.isSetPropertiesToSet()) {
+-        Map<String,String> __this__propertiesToSet = new HashMap<String,String>();
+-        for (Map.Entry<String, String> other_element : other.propertiesToSet.entrySet()) {
+-
+-          String other_element_key = other_element.getKey();
+-          String other_element_value = other_element.getValue();
+-
+-          String __this__propertiesToSet_copy_key = other_element_key;
+-
+-          String __this__propertiesToSet_copy_value = other_element_value;
+-
+-          __this__propertiesToSet.put(__this__propertiesToSet_copy_key, __this__propertiesToSet_copy_value);
+-        }
++        Map<String,String> __this__propertiesToSet = new HashMap<String,String>(other.propertiesToSet);
+         this.propertiesToSet = __this__propertiesToSet;
+       }
+       if (other.isSetPropertiesToExclude()) {
+-        Set<String> __this__propertiesToExclude = new HashSet<String>();
+-        for (String other_element : other.propertiesToExclude) {
+-          __this__propertiesToExclude.add(other_element);
+-        }
++        Set<String> __this__propertiesToExclude = new HashSet<String>(other.propertiesToExclude);
+         this.propertiesToExclude = __this__propertiesToExclude;
+       }
+     }
+@@ -15075,70 +19997,70 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(cloneTable_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      cloneTable_args typedOther = (cloneTable_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNewTableName()).compareTo(typedOther.isSetNewTableName());
++      lastComparison = Boolean.valueOf(isSetNewTableName()).compareTo(other.isSetNewTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNewTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.newTableName, typedOther.newTableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.newTableName, other.newTableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetFlush()).compareTo(typedOther.isSetFlush());
++      lastComparison = Boolean.valueOf(isSetFlush()).compareTo(other.isSetFlush());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetFlush()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.flush, typedOther.flush);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.flush, other.flush);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPropertiesToSet()).compareTo(typedOther.isSetPropertiesToSet());
++      lastComparison = Boolean.valueOf(isSetPropertiesToSet()).compareTo(other.isSetPropertiesToSet());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPropertiesToSet()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.propertiesToSet, typedOther.propertiesToSet);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.propertiesToSet, other.propertiesToSet);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPropertiesToExclude()).compareTo(typedOther.isSetPropertiesToExclude());
++      lastComparison = Boolean.valueOf(isSetPropertiesToExclude()).compareTo(other.isSetPropertiesToExclude());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPropertiesToExclude()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.propertiesToExclude, typedOther.propertiesToExclude);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.propertiesToExclude, other.propertiesToExclude);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -15290,8 +20212,8 @@ import org.slf4j.LoggerFactory;
+                   struct.propertiesToSet = new HashMap<String,String>(2*_map188.size);
+                   for (int _i189 = 0; _i189 < _map188.size; ++_i189)
+                   {
+-                    String _key190; // required
+-                    String _val191; // required
++                    String _key190;
++                    String _val191;
+                     _key190 = iprot.readString();
+                     _val191 = iprot.readString();
+                     struct.propertiesToSet.put(_key190, _val191);
+@@ -15310,7 +20232,7 @@ import org.slf4j.LoggerFactory;
+                   struct.propertiesToExclude = new HashSet<String>(2*_set192.size);
+                   for (int _i193 = 0; _i193 < _set192.size; ++_i193)
+                   {
+-                    String _elem194; // required
++                    String _elem194;
+                     _elem194 = iprot.readString();
+                     struct.propertiesToExclude.add(_elem194);
+                   }
+@@ -15475,8 +20397,8 @@ import org.slf4j.LoggerFactory;
+             struct.propertiesToSet = new HashMap<String,String>(2*_map199.size);
+             for (int _i200 = 0; _i200 < _map199.size; ++_i200)
+             {
+-              String _key201; // required
+-              String _val202; // required
++              String _key201;
++              String _val202;
+               _key201 = iprot.readString();
+               _val202 = iprot.readString();
+               struct.propertiesToSet.put(_key201, _val202);
+@@ -15490,7 +20412,7 @@ import org.slf4j.LoggerFactory;
+             struct.propertiesToExclude = new HashSet<String>(2*_set203.size);
+             for (int _i204 = 0; _i204 < _set203.size; ++_i204)
+             {
+-              String _elem205; // required
++              String _elem205;
+               _elem205 = iprot.readString();
+               struct.propertiesToExclude.add(_elem205);
+             }
+@@ -15502,7 +20424,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class cloneTable_result implements org.apache.thrift.TBase<cloneTable_result, cloneTable_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class cloneTable_result implements org.apache.thrift.TBase<cloneTable_result, cloneTable_result._Fields>, java.io.Serializable, Cloneable, Comparable<cloneTable_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("cloneTable_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -15877,50 +20799,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(cloneTable_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      cloneTable_result typedOther = (cloneTable_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch4()).compareTo(typedOther.isSetOuch4());
++      lastComparison = Boolean.valueOf(isSetOuch4()).compareTo(other.isSetOuch4());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch4()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch4, typedOther.ouch4);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch4, other.ouch4);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -16164,7 +21086,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class compactTable_args implements org.apache.thrift.TBase<compactTable_args, compactTable_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class compactTable_args implements org.apache.thrift.TBase<compactTable_args, compactTable_args._Fields>, java.io.Serializable, Cloneable, Comparable<compactTable_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("compactTable_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -16336,7 +21258,7 @@ import org.slf4j.LoggerFactory;
+ ;
+       }
+       if (other.isSetIterators()) {
+-        List<IteratorSetting> __this__iterators = new ArrayList<IteratorSetting>();
++        List<IteratorSetting> __this__iterators = new ArrayList<IteratorSetting>(other.iterators.size());
+         for (IteratorSetting other_element : other.iterators) {
+           __this__iterators.add(new IteratorSetting(other_element));
+         }
+@@ -16771,80 +21693,80 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(compactTable_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      compactTable_args typedOther = (compactTable_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetStartRow()).compareTo(typedOther.isSetStartRow());
++      lastComparison = Boolean.valueOf(isSetStartRow()).compareTo(other.isSetStartRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetStartRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startRow, typedOther.startRow);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startRow, other.startRow);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(typedOther.isSetEndRow());
++      lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(other.isSetEndRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetEndRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, typedOther.endRow);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, other.endRow);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetIterators()).compareTo(typedOther.isSetIterators());
++      lastComparison = Boolean.valueOf(isSetIterators()).compareTo(other.isSetIterators());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetIterators()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterators, typedOther.iterators);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterators, other.iterators);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetFlush()).compareTo(typedOther.isSetFlush());
++      lastComparison = Boolean.valueOf(isSetFlush()).compareTo(other.isSetFlush());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetFlush()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.flush, typedOther.flush);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.flush, other.flush);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetWait()).compareTo(typedOther.isSetWait());
++      lastComparison = Boolean.valueOf(isSetWait()).compareTo(other.isSetWait());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetWait()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.wait, typedOther.wait);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.wait, other.wait);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -17000,7 +21922,7 @@ import org.slf4j.LoggerFactory;
+                   struct.iterators = new ArrayList<IteratorSetting>(_list206.size);
+                   for (int _i207 = 0; _i207 < _list206.size; ++_i207)
+                   {
+-                    IteratorSetting _elem208; // required
++                    IteratorSetting _elem208;
+                     _elem208 = new IteratorSetting();
+                     _elem208.read(iprot);
+                     struct.iterators.add(_elem208);
+@@ -17176,7 +22098,7 @@ import org.slf4j.LoggerFactory;
+             struct.iterators = new ArrayList<IteratorSetting>(_list211.size);
+             for (int _i212 = 0; _i212 < _list211.size; ++_i212)
+             {
+-              IteratorSetting _elem213; // required
++              IteratorSetting _elem213;
+               _elem213 = new IteratorSetting();
+               _elem213.read(iprot);
+               struct.iterators.add(_elem213);
+@@ -17197,7 +22119,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class compactTable_result implements org.apache.thrift.TBase<compactTable_result, compactTable_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class compactTable_result implements org.apache.thrift.TBase<compactTable_result, compactTable_result._Fields>, java.io.Serializable, Cloneable, Comparable<compactTable_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("compactTable_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -17513,40 +22435,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(compactTable_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      compactTable_result typedOther = (compactTable_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -17757,7 +22679,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class cancelCompaction_args implements org.apache.thrift.TBase<cancelCompaction_args, cancelCompaction_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class cancelCompaction_args implements org.apache.thrift.TBase<cancelCompaction_args, cancelCompaction_args._Fields>, java.io.Serializable, Cloneable, Comparable<cancelCompaction_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("cancelCompaction_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -18025,30 +22947,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(cancelCompaction_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      cancelCompaction_args typedOther = (cancelCompaction_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -18222,7 +23144,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class cancelCompaction_result implements org.apache.thrift.TBase<cancelCompaction_result, cancelCompaction_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class cancelCompaction_result implements org.apache.thrift.TBase<cancelCompaction_result, cancelCompaction_result._Fields>, java.io.Serializable, Cloneable, Comparable<cancelCompaction_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("cancelCompaction_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -18538,40 +23460,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(cancelCompaction_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      cancelCompaction_result typedOther = (cancelCompaction_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -18782,7 +23704,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class createTable_args implements org.apache.thrift.TBase<createTable_args, createTable_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class createTable_args implements org.apache.thrift.TBase<createTable_args, createTable_args._Fields>, java.io.Serializable, Cloneable, Comparable<createTable_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("createTable_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -19186,50 +24108,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(createTable_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      createTable_args typedOther = (createTable_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetVersioningIter()).compareTo(typedOther.isSetVersioningIter());
++      lastComparison = Boolean.valueOf(isSetVersioningIter()).compareTo(other.isSetVersioningIter());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetVersioningIter()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.versioningIter, typedOther.versioningIter);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.versioningIter, other.versioningIter);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetType()).compareTo(typedOther.isSetType());
++      lastComparison = Boolean.valueOf(isSetType()).compareTo(other.isSetType());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetType()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.type, typedOther.type);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.type, other.type);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -19461,7 +24383,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class createTable_result implements org.apache.thrift.TBase<createTable_result, createTable_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class createTable_result implements org.apache.thrift.TBase<createTable_result, createTable_result._Fields>, java.io.Serializable, Cloneable, Comparable<createTable_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("createTable_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -19777,40 +24699,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(createTable_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      createTable_result typedOther = (createTable_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -20021,7 +24943,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class deleteTable_args implements org.apache.thrift.TBase<deleteTable_args, deleteTable_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class deleteTable_args implements org.apache.thrift.TBase<deleteTable_args, deleteTable_args._Fields>, java.io.Serializable, Cloneable, Comparable<deleteTable_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("deleteTable_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -20289,30 +25211,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(deleteTable_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      deleteTable_args typedOther = (deleteTable_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -20486,7 +25408,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class deleteTable_result implements org.apache.thrift.TBase<deleteTable_result, deleteTable_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class deleteTable_result implements org.apache.thrift.TBase<deleteTable_result, deleteTable_result._Fields>, java.io.Serializable, Cloneable, Comparable<deleteTable_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("deleteTable_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -20802,40 +25724,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(deleteTable_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      deleteTable_result typedOther = (deleteTable_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -21046,7 +25968,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class deleteRows_args implements org.apache.thrift.TBase<deleteRows_args, deleteRows_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class deleteRows_args implements org.apache.thrift.TBase<deleteRows_args, deleteRows_args._Fields>, java.io.Serializable, Cloneable, Comparable<deleteRows_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("deleteRows_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -21454,50 +26376,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(deleteRows_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      deleteRows_args typedOther = (deleteRows_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetStartRow()).compareTo(typedOther.isSetStartRow());
++      lastComparison = Boolean.valueOf(isSetStartRow()).compareTo(other.isSetStartRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetStartRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startRow, typedOther.startRow);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startRow, other.startRow);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(typedOther.isSetEndRow());
++      lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(other.isSetEndRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetEndRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, typedOther.endRow);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, other.endRow);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -21733,7 +26655,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class deleteRows_result implements org.apache.thrift.TBase<deleteRows_result, deleteRows_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class deleteRows_result implements org.apache.thrift.TBase<deleteRows_result, deleteRows_result._Fields>, java.io.Serializable, Cloneable, Comparable<deleteRows_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("deleteRows_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -22049,40 +26971,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(deleteRows_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      deleteRows_result typedOther = (deleteRows_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -22293,7 +27215,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class exportTable_args implements org.apache.thrift.TBase<exportTable_args, exportTable_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class exportTable_args implements org.apache.thrift.TBase<exportTable_args, exportTable_args._Fields>, java.io.Serializable, Cloneable, Comparable<exportTable_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("exportTable_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -22620,40 +27542,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(exportTable_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      exportTable_args typedOther = (exportTable_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetExportDir()).compareTo(typedOther.isSetExportDir());
++      lastComparison = Boolean.valueOf(isSetExportDir()).compareTo(other.isSetExportDir());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetExportDir()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.exportDir, typedOther.exportDir);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.exportDir, other.exportDir);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -22858,7 +27780,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class exportTable_result implements org.apache.thrift.TBase<exportTable_result, exportTable_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class exportTable_result implements org.apache.thrift.TBase<exportTable_result, exportTable_result._Fields>, java.io.Serializable, Cloneable, Comparable<exportTable_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("exportTable_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -23174,40 +28096,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(exportTable_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      exportTable_result typedOther = (exportTable_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -23418,7 +28340,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class flushTable_args implements org.apache.thrift.TBase<flushTable_args, flushTable_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class flushTable_args implements org.apache.thrift.TBase<flushTable_args, flushTable_args._Fields>, java.io.Serializable, Cloneable, Comparable<flushTable_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("flushTable_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -23887,60 +28809,60 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(flushTable_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      flushTable_args typedOther = (flushTable_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetStartRow()).compareTo(typedOther.isSetStartRow());
++      lastComparison = Boolean.valueOf(isSetStartRow()).compareTo(other.isSetStartRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetStartRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startRow, typedOther.startRow);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startRow, other.startRow);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(typedOther.isSetEndRow());
++      lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(other.isSetEndRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetEndRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, typedOther.endRow);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, other.endRow);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetWait()).compareTo(typedOther.isSetWait());
++      lastComparison = Boolean.valueOf(isSetWait()).compareTo(other.isSetWait());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetWait()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.wait, typedOther.wait);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.wait, other.wait);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -24203,7 +29125,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class flushTable_result implements org.apache.thrift.TBase<flushTable_result, flushTable_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class flushTable_result implements org.apache.thrift.TBase<flushTable_result, flushTable_result._Fields>, java.io.Serializable, Cloneable, Comparable<flushTable_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("flushTable_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -24519,40 +29441,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(flushTable_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      flushTable_result typedOther = (flushTable_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -24763,7 +29685,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getDiskUsage_args implements org.apache.thrift.TBase<getDiskUsage_args, getDiskUsage_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getDiskUsage_args implements org.apache.thrift.TBase<getDiskUsage_args, getDiskUsage_args._Fields>, java.io.Serializable, Cloneable, Comparable<getDiskUsage_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getDiskUsage_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -24873,10 +29795,7 @@ import org.slf4j.LoggerFactory;
+ ;
+       }
+       if (other.isSetTables()) {
+-        Set<String> __this__tables = new HashSet<String>();
+-        for (String other_element : other.tables) {
+-          __this__tables.add(other_element);
+-        }
++        Set<String> __this__tables = new HashSet<String>(other.tables);
+         this.tables = __this__tables;
+       }
+     }
+@@ -25051,30 +29970,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getDiskUsage_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getDiskUsage_args typedOther = (getDiskUsage_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTables()).compareTo(typedOther.isSetTables());
++      lastComparison = Boolean.valueOf(isSetTables()).compareTo(other.isSetTables());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTables()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tables, typedOther.tables);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tables, other.tables);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -25172,7 +30091,7 @@ import org.slf4j.LoggerFactory;
+                   struct.tables = new HashSet<String>(2*_set214.size);
+                   for (int _i215 = 0; _i215 < _set214.size; ++_i215)
+                   {
+-                    String _elem216; // required
++                    String _elem216;
+                     _elem216 = iprot.readString();
+                     struct.tables.add(_elem216);
+                   }
+@@ -25268,7 +30187,7 @@ import org.slf4j.LoggerFactory;
+             struct.tables = new HashSet<String>(2*_set219.size);
+             for (int _i220 = 0; _i220 < _set219.size; ++_i220)
+             {
+-              String _elem221; // required
++              String _elem221;
+               _elem221 = iprot.readString();
+               struct.tables.add(_elem221);
+             }
+@@ -25280,7 +30199,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getDiskUsage_result implements org.apache.thrift.TBase<getDiskUsage_result, getDiskUsage_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getDiskUsage_result implements org.apache.thrift.TBase<getDiskUsage_result, getDiskUsage_result._Fields>, java.io.Serializable, Cloneable, Comparable<getDiskUsage_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getDiskUsage_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0);
+@@ -25404,7 +30323,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getDiskUsage_result(getDiskUsage_result other) {
+       if (other.isSetSuccess()) {
+-        List<DiskUsage> __this__success = new ArrayList<DiskUsage>();
++        List<DiskUsage> __this__success = new ArrayList<DiskUsage>(other.success.size());
+         for (DiskUsage other_element : other.success) {
+           __this__success.add(new DiskUsage(other_element));
+         }
+@@ -25675,50 +30594,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getDiskUsage_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getDiskUsage_result typedOther = (getDiskUsage_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -25824,7 +30743,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new ArrayList<DiskUsage>(_list222.size);
+                   for (int _i223 = 0; _i223 < _list222.size; ++_i223)
+                   {
+-                    DiskUsage _elem224; // required
++                    DiskUsage _elem224;
+                     _elem224 = new DiskUsage();
+                     _elem224.read(iprot);
+                     struct.success.add(_elem224);
+@@ -25966,7 +30885,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new ArrayList<DiskUsage>(_list227.size);
+             for (int _i228 = 0; _i228 < _list227.size; ++_i228)
+             {
+-              DiskUsage _elem229; // required
++              DiskUsage _elem229;
+               _elem229 = new DiskUsage();
+               _elem229.read(iprot);
+               struct.success.add(_elem229);
+@@ -25994,7 +30913,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getLocalityGroups_args implements org.apache.thrift.TBase<getLocalityGroups_args, getLocalityGroups_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getLocalityGroups_args implements org.apache.thrift.TBase<getLocalityGroups_args, getLocalityGroups_args._Fields>, java.io.Serializable, Cloneable, Comparable<getLocalityGroups_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getLocalityGroups_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -26262,30 +31181,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getLocalityGroups_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getLocalityGroups_args typedOther = (getLocalityGroups_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -26459,7 +31378,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getLocalityGroups_result implements org.apache.thrift.TBase<getLocalityGroups_result, getLocalityGroups_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getLocalityGroups_result implements org.apache.thrift.TBase<getLocalityGroups_result, getLocalityGroups_result._Fields>, java.io.Serializable, Cloneable, Comparable<getLocalityGroups_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getLocalityGroups_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.MAP, (short)0);
+@@ -26585,7 +31504,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getLocalityGroups_result(getLocalityGroups_result other) {
+       if (other.isSetSuccess()) {
+-        Map<String,Set<String>> __this__success = new HashMap<String,Set<String>>();
++        Map<String,Set<String>> __this__success = new HashMap<String,Set<String>>(other.success.size());
+         for (Map.Entry<String, Set<String>> other_element : other.success.entrySet()) {
+ 
+           String other_element_key = other_element.getKey();
+@@ -26593,10 +31512,7 @@ import org.slf4j.LoggerFactory;
+ 
+           String __this__success_copy_key = other_element_key;
+ 
+-          Set<String> __this__success_copy_value = new HashSet<String>();
+-          for (String other_element_value_element : other_element_value) {
+-            __this__success_copy_value.add(other_element_value_element);
+-          }
++          Set<String> __this__success_copy_value = new HashSet<String>(other_element_value);
+ 
+           __this__success.put(__this__success_copy_key, __this__success_copy_value);
+         }
+@@ -26863,50 +31779,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getLocalityGroups_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getLocalityGroups_result typedOther = (getLocalityGroups_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -27012,15 +31928,15 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new HashMap<String,Set<String>>(2*_map230.size);
+                   for (int _i231 = 0; _i231 < _map230.size; ++_i231)
+                   {
+-                    String _key232; // required
+-                    Set<String> _val233; // required
++                    String _key232;
++                    Set<String> _val233;
+                     _key232 = iprot.readString();
+                     {
+                       org.apache.thrift.protocol.TSet _set234 = iprot.readSetBegin();
+                       _val233 = new HashSet<String>(2*_set234.size);
+                       for (int _i235 = 0; _i235 < _set234.size; ++_i235)
+                       {
+-                        String _elem236; // required
++                        String _elem236;
+                         _elem236 = iprot.readString();
+                         _val233.add(_elem236);
+                       }
+@@ -27180,15 +32096,15 @@ import org.slf4j.LoggerFactory;
+             struct.success = new HashMap<String,Set<String>>(2*_map241.size);
+             for (int _i242 = 0; _i242 < _map241.size; ++_i242)
+             {
+-              String _key243; // required
+-              Set<String> _val244; // required
++              String _key243;
++              Set<String> _val244;
+               _key243 = iprot.readString();
+               {
+                 org.apache.thrift.protocol.TSet _set245 = new org.apache.thrift.protocol.TSet(org.apache.thrift.protocol.TType.STRING, iprot.readI32());
+                 _val244 = new HashSet<String>(2*_set245.size);
+                 for (int _i246 = 0; _i246 < _set245.size; ++_i246)
+                 {
+-                  String _elem247; // required
++                  String _elem247;
+                   _elem247 = iprot.readString();
+                   _val244.add(_elem247);
+                 }
+@@ -27218,7 +32134,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getIteratorSetting_args implements org.apache.thrift.TBase<getIteratorSetting_args, getIteratorSetting_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getIteratorSetting_args implements org.apache.thrift.TBase<getIteratorSetting_args, getIteratorSetting_args._Fields>, java.io.Serializable, Cloneable, Comparable<getIteratorSetting_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getIteratorSetting_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -27620,50 +32536,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getIteratorSetting_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getIteratorSetting_args typedOther = (getIteratorSetting_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetIteratorName()).compareTo(typedOther.isSetIteratorName());
++      lastComparison = Boolean.valueOf(isSetIteratorName()).compareTo(other.isSetIteratorName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetIteratorName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iteratorName, typedOther.iteratorName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iteratorName, other.iteratorName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetScope()).compareTo(typedOther.isSetScope());
++      lastComparison = Boolean.valueOf(isSetScope()).compareTo(other.isSetScope());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetScope()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scope, typedOther.scope);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scope, other.scope);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -27899,7 +32815,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getIteratorSetting_result implements org.apache.thrift.TBase<getIteratorSetting_result, getIteratorSetting_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getIteratorSetting_result implements org.apache.thrift.TBase<getIteratorSetting_result, getIteratorSetting_result._Fields>, java.io.Serializable, Cloneable, Comparable<getIteratorSetting_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getIteratorSetting_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRUCT, (short)0);
+@@ -28274,50 +33190,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getIteratorSetting_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getIteratorSetting_result typedOther = (getIteratorSetting_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -28564,7 +33480,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getMaxRow_args implements org.apache.thrift.TBase<getMaxRow_args, getMaxRow_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getMaxRow_args implements org.apache.thrift.TBase<getMaxRow_args, getMaxRow_args._Fields>, java.io.Serializable, Cloneable, Comparable<getMaxRow_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getMaxRow_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -28728,12 +33644,7 @@ import org.slf4j.LoggerFactory;
+         this.tableName = other.tableName;
+       }
+       if (other.isSetAuths()) {
+-        Set<ByteBuffer> __this__auths = new HashSet<ByteBuffer>();
+-        for (ByteBuffer other_element : other.auths) {
+-          ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-          __this__auths.add(temp_binary_element);
+-        }
++        Set<ByteBuffer> __this__auths = new HashSet<ByteBuffer>(other.auths);
+         this.auths = __this__auths;
+       }
+       if (other.isSetStartRow()) {
+@@ -29173,80 +34084,80 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getMaxRow_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getMaxRow_args typedOther = (getMaxRow_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetAuths()).compareTo(typedOther.isSetAuths());
++      lastComparison = Boolean.valueOf(isSetAuths()).compareTo(other.isSetAuths());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetAuths()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.auths, typedOther.auths);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.auths, other.auths);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetStartRow()).compareTo(typedOther.isSetStartRow());
++      lastComparison = Boolean.valueOf(isSetStartRow()).compareTo(other.isSetStartRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetStartRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startRow, typedOther.startRow);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startRow, other.startRow);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetStartInclusive()).compareTo(typedOther.isSetStartInclusive());
++      lastComparison = Boolean.valueOf(isSetStartInclusive()).compareTo(other.isSetStartInclusive());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetStartInclusive()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startInclusive, typedOther.startInclusive);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startInclusive, other.startInclusive);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(typedOther.isSetEndRow());
++      lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(other.isSetEndRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetEndRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, typedOther.endRow);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, other.endRow);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetEndInclusive()).compareTo(typedOther.isSetEndInclusive());
++      lastComparison = Boolean.valueOf(isSetEndInclusive()).compareTo(other.isSetEndInclusive());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetEndInclusive()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endInclusive, typedOther.endInclusive);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endInclusive, other.endInclusive);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -29386,7 +34297,7 @@ import org.slf4j.LoggerFactory;
+                   struct.auths = new HashSet<ByteBuffer>(2*_set248.size);
+                   for (int _i249 = 0; _i249 < _set248.size; ++_i249)
+                   {
+-                    ByteBuffer _elem250; // required
++                    ByteBuffer _elem250;
+                     _elem250 = iprot.readBinary();
+                     struct.auths.add(_elem250);
+                   }
+@@ -29569,7 +34480,7 @@ import org.slf4j.LoggerFactory;
+             struct.auths = new HashSet<ByteBuffer>(2*_set253.size);
+             for (int _i254 = 0; _i254 < _set253.size; ++_i254)
+             {
+-              ByteBuffer _elem255; // required
++              ByteBuffer _elem255;
+               _elem255 = iprot.readBinary();
+               struct.auths.add(_elem255);
+             }
+@@ -29597,7 +34508,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getMaxRow_result implements org.apache.thrift.TBase<getMaxRow_result, getMaxRow_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getMaxRow_result implements org.apache.thrift.TBase<getMaxRow_result, getMaxRow_result._Fields>, java.io.Serializable, Cloneable, Comparable<getMaxRow_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getMaxRow_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRING, (short)0);
+@@ -29983,50 +34894,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getMaxRow_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getMaxRow_result typedOther = (getMaxRow_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -30268,7 +35179,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getTableProperties_args implements org.apache.thrift.TBase<getTableProperties_args, getTableProperties_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getTableProperties_args implements org.apache.thrift.TBase<getTableProperties_args, getTableProperties_args._Fields>, java.io.Serializable, Cloneable, Comparable<getTableProperties_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getTableProperties_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -30536,30 +35447,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getTableProperties_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getTableProperties_args typedOther = (getTableProperties_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -30733,7 +35644,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getTableProperties_result implements org.apache.thrift.TBase<getTableProperties_result, getTableProperties_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getTableProperties_result implements org.apache.thrift.TBase<getTableProperties_result, getTableProperties_result._Fields>, java.io.Serializable, Cloneable, Comparable<getTableProperties_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getTableProperties_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.MAP, (short)0);
+@@ -30858,18 +35769,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getTableProperties_result(getTableProperties_result other) {
+       if (other.isSetSuccess()) {
+-        Map<String,String> __this__success = new HashMap<String,String>();
+-        for (Map.Entry<String, String> other_element : other.success.entrySet()) {
+-
+-          String other_element_key = other_element.getKey();
+-          String other_element_value = other_element.getValue();
+-
+-          String __this__success_copy_key = other_element_key;
+-
+-          String __this__success_copy_value = other_element_value;
+-
+-          __this__success.put(__this__success_copy_key, __this__success_copy_value);
+-        }
++        Map<String,String> __this__success = new HashMap<String,String>(other.success);
+         this.success = __this__success;
+       }
+       if (other.isSetOuch1()) {
+@@ -31133,50 +36033,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getTableProperties_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getTableProperties_result typedOther = (getTableProperties_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -31282,8 +36182,8 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new HashMap<String,String>(2*_map256.size);
+                   for (int _i257 = 0; _i257 < _map256.size; ++_i257)
+                   {
+-                    String _key258; // required
+-                    String _val259; // required
++                    String _key258;
++                    String _val259;
+                     _key258 = iprot.readString();
+                     _val259 = iprot.readString();
+                     struct.success.put(_key258, _val259);
+@@ -31427,8 +36327,8 @@ import org.slf4j.LoggerFactory;
+             struct.success = new HashMap<String,String>(2*_map262.size);
+             for (int _i263 = 0; _i263 < _map262.size; ++_i263)
+             {
+-              String _key264; // required
+-              String _val265; // required
++              String _key264;
++              String _val265;
+               _key264 = iprot.readString();
+               _val265 = iprot.readString();
+               struct.success.put(_key264, _val265);
+@@ -31456,7 +36356,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class importDirectory_args implements org.apache.thrift.TBase<importDirectory_args, importDirectory_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class importDirectory_args implements org.apache.thrift.TBase<importDirectory_args, importDirectory_args._Fields>, java.io.Serializable, Cloneable, Comparable<importDirectory_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("importDirectory_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -31903,60 +36803,60 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(importDirectory_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      importDirectory_args typedOther = (importDirectory_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetImportDir()).compareTo(typedOther.isSetImportDir());
++      lastComparison = Boolean.valueOf(isSetImportDir()).compareTo(other.isSetImportDir());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetImportDir()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.importDir, typedOther.importDir);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.importDir, other.importDir);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetFailureDir()).compareTo(typedOther.isSetFailureDir());
++      lastComparison = Boolean.valueOf(isSetFailureDir()).compareTo(other.isSetFailureDir());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetFailureDir()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.failureDir, typedOther.failureDir);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.failureDir, other.failureDir);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetSetTime()).compareTo(typedOther.isSetSetTime());
++      lastComparison = Boolean.valueOf(isSetSetTime()).compareTo(other.isSetSetTime());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSetTime()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.setTime, typedOther.setTime);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.setTime, other.setTime);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -32219,7 +37119,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class importDirectory_result implements org.apache.thrift.TBase<importDirectory_result, importDirectory_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class importDirectory_result implements org.apache.thrift.TBase<importDirectory_result, importDirectory_result._Fields>, java.io.Serializable, Cloneable, Comparable<importDirectory_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("importDirectory_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -32535,40 +37435,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(importDirectory_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      importDirectory_result typedOther = (importDirectory_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch4()).compareTo(typedOther.isSetOuch4());
++      lastComparison = Boolean.valueOf(isSetOuch4()).compareTo(other.isSetOuch4());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch4()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch4, typedOther.ouch4);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch4, other.ouch4);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -32779,7 +37679,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class importTable_args implements org.apache.thrift.TBase<importTable_args, importTable_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class importTable_args implements org.apache.thrift.TBase<importTable_args, importTable_args._Fields>, java.io.Serializable, Cloneable, Comparable<importTable_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("importTable_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -33106,40 +38006,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(importTable_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      importTable_args typedOther = (importTable_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetImportDir()).compareTo(typedOther.isSetImportDir());
++      lastComparison = Boolean.valueOf(isSetImportDir()).compareTo(other.isSetImportDir());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetImportDir()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.importDir, typedOther.importDir);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.importDir, other.importDir);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -33344,7 +38244,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class importTable_result implements org.apache.thrift.TBase<importTable_result, importTable_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class importTable_result implements org.apache.thrift.TBase<importTable_result, importTable_result._Fields>, java.io.Serializable, Cloneable, Comparable<importTable_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("importTable_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -33660,40 +38560,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(importTable_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      importTable_result typedOther = (importTable_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -33904,7 +38804,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class listSplits_args implements org.apache.thrift.TBase<listSplits_args, listSplits_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class listSplits_args implements org.apache.thrift.TBase<listSplits_args, listSplits_args._Fields>, java.io.Serializable, Cloneable, Comparable<listSplits_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("listSplits_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -34233,40 +39133,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(listSplits_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      listSplits_args typedOther = (listSplits_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetMaxSplits()).compareTo(typedOther.isSetMaxSplits());
++      lastComparison = Boolean.valueOf(isSetMaxSplits()).compareTo(other.isSetMaxSplits());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetMaxSplits()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxSplits, typedOther.maxSplits);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxSplits, other.maxSplits);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -34467,7 +39367,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class listSplits_result implements org.apache.thrift.TBase<listSplits_result, listSplits_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class listSplits_result implements org.apache.thrift.TBase<listSplits_result, listSplits_result._Fields>, java.io.Serializable, Cloneable, Comparable<listSplits_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("listSplits_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0);
+@@ -34591,12 +39491,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public listSplits_result(listSplits_result other) {
+       if (other.isSetSuccess()) {
+-        List<ByteBuffer> __this__success = new ArrayList<ByteBuffer>();
+-        for (ByteBuffer other_element : other.success) {
+-          ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-          __this__success.add(temp_binary_element);
+-        }
++        List<ByteBuffer> __this__success = new ArrayList<ByteBuffer>(other.success);
+         this.success = __this__success;
+       }
+       if (other.isSetOuch1()) {
+@@ -34864,50 +39759,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(listSplits_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      listSplits_result typedOther = (listSplits_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -35013,7 +39908,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new ArrayList<ByteBuffer>(_list266.size);
+                   for (int _i267 = 0; _i267 < _list266.size; ++_i267)
+                   {
+-                    ByteBuffer _elem268; // required
++                    ByteBuffer _elem268;
+                     _elem268 = iprot.readBinary();
+                     struct.success.add(_elem268);
+                   }
+@@ -35154,7 +40049,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new ArrayList<ByteBuffer>(_list271.size);
+             for (int _i272 = 0; _i272 < _list271.size; ++_i272)
+             {
+-              ByteBuffer _elem273; // required
++              ByteBuffer _elem273;
+               _elem273 = iprot.readBinary();
+               struct.success.add(_elem273);
+             }
+@@ -35181,7 +40076,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class listTables_args implements org.apache.thrift.TBase<listTables_args, listTables_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class listTables_args implements org.apache.thrift.TBase<listTables_args, listTables_args._Fields>, java.io.Serializable, Cloneable, Comparable<listTables_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("listTables_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -35390,20 +40285,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(listTables_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      listTables_args typedOther = (listTables_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -35546,7 +40441,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class listTables_result implements org.apache.thrift.TBase<listTables_result, listTables_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class listTables_result implements org.apache.thrift.TBase<listTables_result, listTables_result._Fields>, java.io.Serializable, Cloneable, Comparable<listTables_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("listTables_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.SET, (short)0);
+@@ -35643,10 +40538,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public listTables_result(listTables_result other) {
+       if (other.isSetSuccess()) {
+-        Set<String> __this__success = new HashSet<String>();
+-        for (String other_element : other.success) {
+-          __this__success.add(other_element);
+-        }
++        Set<String> __this__success = new HashSet<String>(other.success);
+         this.success = __this__success;
+       }
+     }
+@@ -35764,20 +40656,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(listTables_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      listTables_result typedOther = (listTables_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -35859,7 +40751,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new HashSet<String>(2*_set274.size);
+                   for (int _i275 = 0; _i275 < _set274.size; ++_i275)
+                   {
+-                    String _elem276; // required
++                    String _elem276;
+                     _elem276 = iprot.readString();
+                     struct.success.add(_elem276);
+                   }
+@@ -35940,7 +40832,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new HashSet<String>(2*_set279.size);
+             for (int _i280 = 0; _i280 < _set279.size; ++_i280)
+             {
+-              String _elem281; // required
++              String _elem281;
+               _elem281 = iprot.readString();
+               struct.success.add(_elem281);
+             }
+@@ -35952,7 +40844,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class listIterators_args implements org.apache.thrift.TBase<listIterators_args, listIterators_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class listIterators_args implements org.apache.thrift.TBase<listIterators_args, listIterators_args._Fields>, java.io.Serializable, Cloneable, Comparable<listIterators_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("listIterators_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -36220,30 +41112,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(listIterators_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      listIterators_args typedOther = (listIterators_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -36417,7 +41309,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class listIterators_result implements org.apache.thrift.TBase<listIterators_result, listIterators_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class listIterators_result implements org.apache.thrift.TBase<listIterators_result, listIterators_result._Fields>, java.io.Serializable, Cloneable, Comparable<listIterators_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("listIterators_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.MAP, (short)0);
+@@ -36543,7 +41435,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public listIterators_result(listIterators_result other) {
+       if (other.isSetSuccess()) {
+-        Map<String,Set<IteratorScope>> __this__success = new HashMap<String,Set<IteratorScope>>();
++        Map<String,Set<IteratorScope>> __this__success = new HashMap<String,Set<IteratorScope>>(other.success.size());
+         for (Map.Entry<String, Set<IteratorScope>> other_element : other.success.entrySet()) {
+ 
+           String other_element_key = other_element.getKey();
+@@ -36551,7 +41443,7 @@ import org.slf4j.LoggerFactory;
+ 
+           String __this__success_copy_key = other_element_key;
+ 
+-          Set<IteratorScope> __this__success_copy_value = new HashSet<IteratorScope>();
++          Set<IteratorScope> __this__success_copy_value = new HashSet<IteratorScope>(other_element_value.size());
+           for (IteratorScope other_element_value_element : other_element_value) {
+             __this__success_copy_value.add(other_element_value_element);
+           }
+@@ -36821,50 +41713,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(listIterators_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      listIterators_result typedOther = (listIterators_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -36970,15 +41862,15 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new HashMap<String,Set<IteratorScope>>(2*_map282.size);
+                   for (int _i283 = 0; _i283 < _map282.size; ++_i283)
+                   {
+-                    String _key284; // required
+-                    Set<IteratorScope> _val285; // required
++                    String _key284;
++                    Set<IteratorScope> _val285;
+                     _key284 = iprot.readString();
+                     {
+                       org.apache.thrift.protocol.TSet _set286 = iprot.readSetBegin();
+                       _val285 = new HashSet<IteratorScope>(2*_set286.size);
+                       for (int _i287 = 0; _i287 < _set286.size; ++_i287)
+                       {
+-                        IteratorScope _elem288; // required
++                        IteratorScope _elem288;
+                         _elem288 = IteratorScope.findByValue(iprot.readI32());
+                         _val285.add(_elem288);
+                       }
+@@ -37138,15 +42030,15 @@ import org.slf4j.LoggerFactory;
+             struct.success = new HashMap<String,Set<IteratorScope>>(2*_map293.size);
+             for (int _i294 = 0; _i294 < _map293.size; ++_i294)
+             {
+-              String _key295; // required
+-              Set<IteratorScope> _val296; // required
++              String _key295;
++              Set<IteratorScope> _val296;
+               _key295 = iprot.readString();
+               {
+                 org.apache.thrift.protocol.TSet _set297 = new org.apache.thrift.protocol.TSet(org.apache.thrift.protocol.TType.I32, iprot.readI32());
+                 _val296 = new HashSet<IteratorScope>(2*_set297.size);
+                 for (int _i298 = 0; _i298 < _set297.size; ++_i298)
+                 {
+-                  IteratorScope _elem299; // required
++                  IteratorScope _elem299;
+                   _elem299 = IteratorScope.findByValue(iprot.readI32());
+                   _val296.add(_elem299);
+                 }
+@@ -37176,7 +42068,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class listConstraints_args implements org.apache.thrift.TBase<listConstraints_args, listConstraints_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class listConstraints_args implements org.apache.thrift.TBase<listConstraints_args, listConstraints_args._Fields>, java.io.Serializable, Cloneable, Comparable<listConstraints_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("listConstraints_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -37444,30 +42336,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(listConstraints_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      listConstraints_args typedOther = (listConstraints_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -37641,7 +42533,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class listConstraints_result implements org.apache.thrift.TBase<listConstraints_result, listConstraints_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class listConstraints_result implements org.apache.thrift.TBase<listConstraints_result, listConstraints_result._Fields>, java.io.Serializable, Cloneable, Comparable<listConstraints_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("listConstraints_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.MAP, (short)0);
+@@ -37766,18 +42658,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public listConstraints_result(listConstraints_result other) {
+       if (other.isSetSuccess()) {
+-        Map<String,Integer> __this__success = new HashMap<String,Integer>();
+-        for (Map.Entry<String, Integer> other_element : other.success.entrySet()) {
+-
+-          String other_element_key = other_element.getKey();
+-          Integer other_element_value = other_element.getValue();
+-
+-          String __this__success_copy_key = other_element_key;
+-
+-          Integer __this__success_copy_value = other_element_value;
+-
+-          __this__success.put(__this__success_copy_key, __this__success_copy_value);
+-        }
++        Map<String,Integer> __this__success = new HashMap<String,Integer>(other.success);
+         this.success = __this__success;
+       }
+       if (other.isSetOuch1()) {
+@@ -38041,50 +42922,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(listConstraints_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      listConstraints_result typedOther = (listConstraints_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -38190,8 +43071,8 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new HashMap<String,Integer>(2*_map300.size);
+                   for (int _i301 = 0; _i301 < _map300.size; ++_i301)
+                   {
+-                    String _key302; // required
+-                    int _val303; // required
++                    String _key302;
++                    int _val303;
+                     _key302 = iprot.readString();
+                     _val303 = iprot.readI32();
+                     struct.success.put(_key302, _val303);
+@@ -38335,8 +43216,8 @@ import org.slf4j.LoggerFactory;
+             struct.success = new HashMap<String,Integer>(2*_map306.size);
+             for (int _i307 = 0; _i307 < _map306.size; ++_i307)
+             {
+-              String _key308; // required
+-              int _val309; // required
++              String _key308;
++              int _val309;
+               _key308 = iprot.readString();
+               _val309 = iprot.readI32();
+               struct.success.put(_key308, _val309);
+@@ -38364,7 +43245,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class mergeTablets_args implements org.apache.thrift.TBase<mergeTablets_args, mergeTablets_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class mergeTablets_args implements org.apache.thrift.TBase<mergeTablets_args, mergeTablets_args._Fields>, java.io.Serializable, Cloneable, Comparable<mergeTablets_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("mergeTablets_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -38772,50 +43653,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(mergeTablets_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      mergeTablets_args typedOther = (mergeTablets_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetStartRow()).compareTo(typedOther.isSetStartRow());
++      lastComparison = Boolean.valueOf(isSetStartRow()).compareTo(other.isSetStartRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetStartRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startRow, typedOther.startRow);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startRow, other.startRow);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(typedOther.isSetEndRow());
++      lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(other.isSetEndRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetEndRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, typedOther.endRow);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, other.endRow);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -39051,7 +43932,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class mergeTablets_result implements org.apache.thrift.TBase<mergeTablets_result, mergeTablets_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class mergeTablets_result implements org.apache.thrift.TBase<mergeTablets_result, mergeTablets_result._Fields>, java.io.Serializable, Cloneable, Comparable<mergeTablets_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("mergeTablets_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -39367,40 +44248,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(mergeTablets_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      mergeTablets_result typedOther = (mergeTablets_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -39611,7 +44492,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class offlineTable_args implements org.apache.thrift.TBase<offlineTable_args, offlineTable_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class offlineTable_args implements org.apache.thrift.TBase<offlineTable_args, offlineTable_args._Fields>, java.io.Serializable, Cloneable, Comparable<offlineTable_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("offlineTable_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -39942,40 +44823,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(offlineTable_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      offlineTable_args typedOther = (offlineTable_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetWait()).compareTo(typedOther.isSetWait());
++      lastComparison = Boolean.valueOf(isSetWait()).compareTo(other.isSetWait());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetWait()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.wait, typedOther.wait);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.wait, other.wait);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -40176,7 +45057,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class offlineTable_result implements org.apache.thrift.TBase<offlineTable_result, offlineTable_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class offlineTable_result implements org.apache.thrift.TBase<offlineTable_result, offlineTable_result._Fields>, java.io.Serializable, Cloneable, Comparable<offlineTable_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("offlineTable_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -40492,40 +45373,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(offlineTable_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      offlineTable_result typedOther = (offlineTable_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -40736,7 +45617,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class onlineTable_args implements org.apache.thrift.TBase<onlineTable_args, onlineTable_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class onlineTable_args implements org.apache.thrift.TBase<onlineTable_args, onlineTable_args._Fields>, java.io.Serializable, Cloneable, Comparable<onlineTable_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("onlineTable_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -41067,40 +45948,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(onlineTable_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      onlineTable_args typedOther = (onlineTable_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetWait()).compareTo(typedOther.isSetWait());
++      lastComparison = Boolean.valueOf(isSetWait()).compareTo(other.isSetWait());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetWait()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.wait, typedOther.wait);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.wait, other.wait);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -41301,7 +46182,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class onlineTable_result implements org.apache.thrift.TBase<onlineTable_result, onlineTable_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class onlineTable_result implements org.apache.thrift.TBase<onlineTable_result, onlineTable_result._Fields>, java.io.Serializable, Cloneable, Comparable<onlineTable_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("onlineTable_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -41617,40 +46498,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(onlineTable_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      onlineTable_result typedOther = (onlineTable_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -41861,7 +46742,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class removeConstraint_args implements org.apache.thrift.TBase<removeConstraint_args, removeConstraint_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class removeConstraint_args implements org.apache.thrift.TBase<removeConstraint_args, removeConstraint_args._Fields>, java.io.Serializable, Cloneable, Comparable<removeConstraint_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("removeConstraint_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -42190,40 +47071,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(removeConstraint_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      removeConstraint_args typedOther = (removeConstraint_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetConstraint()).compareTo(typedOther.isSetConstraint());
++      lastComparison = Boolean.valueOf(isSetConstraint()).compareTo(other.isSetConstraint());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetConstraint()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.constraint, typedOther.constraint);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.constraint, other.constraint);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -42424,7 +47305,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class removeConstraint_result implements org.apache.thrift.TBase<removeConstraint_result, removeConstraint_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class removeConstraint_result implements org.apache.thrift.TBase<removeConstraint_result, removeConstraint_result._Fields>, java.io.Serializable, Cloneable, Comparable<removeConstraint_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("removeConstraint_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -42740,40 +47621,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(removeConstraint_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      removeConstraint_result typedOther = (removeConstraint_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -42984,7 +47865,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class removeIterator_args implements org.apache.thrift.TBase<removeIterator_args, removeIterator_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class removeIterator_args implements org.apache.thrift.TBase<removeIterator_args, removeIterator_args._Fields>, java.io.Serializable, Cloneable, Comparable<removeIterator_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("removeIterator_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -43118,7 +47999,7 @@ import org.slf4j.LoggerFactory;
+         this.iterName = other.iterName;
+       }
+       if (other.isSetScopes()) {
+-        Set<IteratorScope> __this__scopes = new HashSet<IteratorScope>();
++        Set<IteratorScope> __this__scopes = new HashSet<IteratorScope>(other.scopes.size());
+         for (IteratorScope other_element : other.scopes) {
+           __this__scopes.add(other_element);
+         }
+@@ -43390,50 +48271,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(removeIterator_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      removeIterator_args typedOther = (removeIterator_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetIterName()).compareTo(typedOther.isSetIterName());
++      lastComparison = Boolean.valueOf(isSetIterName()).compareTo(other.isSetIterName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetIterName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterName, typedOther.iterName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterName, other.iterName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetScopes()).compareTo(typedOther.isSetScopes());
++      lastComparison = Boolean.valueOf(isSetScopes()).compareTo(other.isSetScopes());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetScopes()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scopes, typedOther.scopes);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scopes, other.scopes);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -43563,7 +48444,7 @@ import org.slf4j.LoggerFactory;
+                   struct.scopes = new HashSet<IteratorScope>(2*_set310.size);
+                   for (int _i311 = 0; _i311 < _set310.size; ++_i311)
+                   {
+-                    IteratorScope _elem312; // required
++                    IteratorScope _elem312;
+                     _elem312 = IteratorScope.findByValue(iprot.readI32());
+                     struct.scopes.add(_elem312);
+                   }
+@@ -43689,7 +48570,7 @@ import org.slf4j.LoggerFactory;
+             struct.scopes = new HashSet<IteratorScope>(2*_set315.size);
+             for (int _i316 = 0; _i316 < _set315.size; ++_i316)
+             {
+-              IteratorScope _elem317; // required
++              IteratorScope _elem317;
+               _elem317 = IteratorScope.findByValue(iprot.readI32());
+               struct.scopes.add(_elem317);
+             }
+@@ -43701,7 +48582,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class removeIterator_result implements org.apache.thrift.TBase<removeIterator_result, removeIterator_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class removeIterator_result implements org.apache.thrift.TBase<removeIterator_result, removeIterator_result._Fields>, java.io.Serializable, Cloneable, Comparable<removeIterator_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("removeIterator_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -44017,40 +48898,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(removeIterator_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      removeIterator_result typedOther = (removeIterator_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -44261,7 +49142,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class removeTableProperty_args implements org.apache.thrift.TBase<removeTableProperty_args, removeTableProperty_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class removeTableProperty_args implements org.apache.thrift.TBase<removeTableProperty_args, removeTableProperty_args._Fields>, java.io.Serializable, Cloneable, Comparable<removeTableProperty_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("removeTableProperty_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -44588,40 +49469,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(removeTableProperty_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      removeTableProperty_args typedOther = (removeTableProperty_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(typedOther.isSetProperty());
++      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(other.isSetProperty());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetProperty()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, typedOther.property);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, other.property);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -44826,7 +49707,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class removeTableProperty_result implements org.apache.thrift.TBase<removeTableProperty_result, removeTableProperty_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class removeTableProperty_result implements org.apache.thrift.TBase<removeTableProperty_result, removeTableProperty_result._Fields>, java.io.Serializable, Cloneable, Comparable<removeTableProperty_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("removeTableProperty_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -45142,40 +50023,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(removeTableProperty_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      removeTableProperty_result typedOther = (removeTableProperty_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -45386,7 +50267,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class renameTable_args implements org.apache.thrift.TBase<renameTable_args, renameTable_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class renameTable_args implements org.apache.thrift.TBase<renameTable_args, renameTable_args._Fields>, java.io.Serializable, Cloneable, Comparable<renameTable_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("renameTable_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -45713,40 +50594,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(renameTable_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      renameTable_args typedOther = (renameTable_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOldTableName()).compareTo(typedOther.isSetOldTableName());
++      lastComparison = Boolean.valueOf(isSetOldTableName()).compareTo(other.isSetOldTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOldTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.oldTableName, typedOther.oldTableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.oldTableName, other.oldTableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetNewTableName()).compareTo(typedOther.isSetNewTableName());
++      lastComparison = Boolean.valueOf(isSetNewTableName()).compareTo(other.isSetNewTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetNewTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.newTableName, typedOther.newTableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.newTableName, other.newTableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -45951,7 +50832,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class renameTable_result implements org.apache.thrift.TBase<renameTable_result, renameTable_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class renameTable_result implements org.apache.thrift.TBase<renameTable_result, renameTable_result._Fields>, java.io.Serializable, Cloneable, Comparable<renameTable_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("renameTable_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -46326,50 +51207,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(renameTable_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      renameTable_result typedOther = (renameTable_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch4()).compareTo(typedOther.isSetOuch4());
++      lastComparison = Boolean.valueOf(isSetOuch4()).compareTo(other.isSetOuch4());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch4()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch4, typedOther.ouch4);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch4, other.ouch4);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -46613,7 +51494,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class setLocalityGroups_args implements org.apache.thrift.TBase<setLocalityGroups_args, setLocalityGroups_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class setLocalityGroups_args implements org.apache.thrift.TBase<setLocalityGroups_args, setLocalityGroups_args._Fields>, java.io.Serializable, Cloneable, Comparable<setLocalityGroups_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("setLocalityGroups_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -46737,7 +51618,7 @@ import org.slf4j.LoggerFactory;
+         this.tableName = other.tableName;
+       }
+       if (other.isSetGroups()) {
+-        Map<String,Set<String>> __this__groups = new HashMap<String,Set<String>>();
++        Map<String,Set<String>> __this__groups = new HashMap<String,Set<String>>(other.groups.size());
+         for (Map.Entry<String, Set<String>> other_element : other.groups.entrySet()) {
+ 
+           String other_element_key = other_element.getKey();
+@@ -46745,10 +51626,7 @@ import org.slf4j.LoggerFactory;
+ 
+           String __this__groups_copy_key = other_element_key;
+ 
+-          Set<String> __this__groups_copy_value = new HashSet<String>();
+-          for (String other_element_value_element : other_element_value) {
+-            __this__groups_copy_value.add(other_element_value_element);
+-          }
++          Set<String> __this__groups_copy_value = new HashSet<String>(other_element_value);
+ 
+           __this__groups.put(__this__groups_copy_key, __this__groups_copy_value);
+         }
+@@ -46969,40 +51847,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(setLocalityGroups_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      setLocalityGroups_args typedOther = (setLocalityGroups_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetGroups()).compareTo(typedOther.isSetGroups());
++      lastComparison = Boolean.valueOf(isSetGroups()).compareTo(other.isSetGroups());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetGroups()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.groups, typedOther.groups);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.groups, other.groups);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -47116,15 +51994,15 @@ import org.slf4j.LoggerFactory;
+                   struct.groups = new HashMap<String,Set<String>>(2*_map318.size);
+                   for (int _i319 = 0; _i319 < _map318.size; ++_i319)
+                   {
+-                    String _key320; // required
+-                    Set<String> _val321; // required
++                    String _key320;
++                    Set<String> _val321;
+                     _key320 = iprot.readString();
+                     {
+                       org.apache.thrift.protocol.TSet _set322 = iprot.readSetBegin();
+                       _val321 = new HashSet<String>(2*_set322.size);
+                       for (int _i323 = 0; _i323 < _set322.size; ++_i323)
+                       {
+-                        String _elem324; // required
++                        String _elem324;
+                         _elem324 = iprot.readString();
+                         _val321.add(_elem324);
+                       }
+@@ -47254,15 +52132,15 @@ import org.slf4j.LoggerFactory;
+             struct.groups = new HashMap<String,Set<String>>(2*_map329.size);
+             for (int _i330 = 0; _i330 < _map329.size; ++_i330)
+             {
+-              String _key331; // required
+-              Set<String> _val332; // required
++              String _key331;
++              Set<String> _val332;
+               _key331 = iprot.readString();
+               {
+                 org.apache.thrift.protocol.TSet _set333 = new org.apache.thrift.protocol.TSet(org.apache.thrift.protocol.TType.STRING, iprot.readI32());
+                 _val332 = new HashSet<String>(2*_set333.size);
+                 for (int _i334 = 0; _i334 < _set333.size; ++_i334)
+                 {
+-                  String _elem335; // required
++                  String _elem335;
+                   _elem335 = iprot.readString();
+                   _val332.add(_elem335);
+                 }
+@@ -47277,7 +52155,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class setLocalityGroups_result implements org.apache.thrift.TBase<setLocalityGroups_result, setLocalityGroups_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class setLocalityGroups_result implements org.apache.thrift.TBase<setLocalityGroups_result, setLocalityGroups_result._Fields>, java.io.Serializable, Cloneable, Comparable<setLocalityGroups_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("setLocalityGroups_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -47593,40 +52471,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(setLocalityGroups_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      setLocalityGroups_result typedOther = (setLocalityGroups_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -47837,7 +52715,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class setTableProperty_args implements org.apache.thrift.TBase<setTableProperty_args, setTableProperty_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class setTableProperty_args implements org.apache.thrift.TBase<setTableProperty_args, setTableProperty_args._Fields>, java.io.Serializable, Cloneable, Comparable<setTableProperty_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("setTableProperty_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -48223,50 +53101,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(setTableProperty_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      setTableProperty_args typedOther = (setTableProperty_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(typedOther.isSetProperty());
++      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(other.isSetProperty());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetProperty()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, typedOther.property);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, other.property);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetValue()).compareTo(typedOther.isSetValue());
++      lastComparison = Boolean.valueOf(isSetValue()).compareTo(other.isSetValue());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetValue()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, typedOther.value);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, other.value);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -48502,7 +53380,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class setTableProperty_result implements org.apache.thrift.TBase<setTableProperty_result, setTableProperty_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class setTableProperty_result implements org.apache.thrift.TBase<setTableProperty_result, setTableProperty_result._Fields>, java.io.Serializable, Cloneable, Comparable<setTableProperty_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("setTableProperty_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -48818,40 +53696,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(setTableProperty_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      setTableProperty_result typedOther = (setTableProperty_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -49062,7 +53940,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class splitRangeByTablets_args implements org.apache.thrift.TBase<splitRangeByTablets_args, splitRangeByTablets_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class splitRangeByTablets_args implements org.apache.thrift.TBase<splitRangeByTablets_args, splitRangeByTablets_args._Fields>, java.io.Serializable, Cloneable, Comparable<splitRangeByTablets_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("splitRangeByTablets_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -49450,50 +54328,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(splitRangeByTablets_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      splitRangeByTablets_args typedOther = (splitRangeByTablets_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetRange()).compareTo(typedOther.isSetRange());
++      lastComparison = Boolean.valueOf(isSetRange()).compareTo(other.isSetRange());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetRange()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.range, typedOther.range);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.range, other.range);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetMaxSplits()).compareTo(typedOther.isSetMaxSplits());
++      lastComparison = Boolean.valueOf(isSetMaxSplits()).compareTo(other.isSetMaxSplits());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetMaxSplits()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxSplits, typedOther.maxSplits);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxSplits, other.maxSplits);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -49730,7 +54608,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class splitRangeByTablets_result implements org.apache.thrift.TBase<splitRangeByTablets_result, splitRangeByTablets_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class splitRangeByTablets_result implements org.apache.thrift.TBase<splitRangeByTablets_result, splitRangeByTablets_result._Fields>, java.io.Serializable, Cloneable, Comparable<splitRangeByTablets_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("splitRangeByTablets_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.SET, (short)0);
+@@ -49854,7 +54732,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public splitRangeByTablets_result(splitRangeByTablets_result other) {
+       if (other.isSetSuccess()) {
+-        Set<Range> __this__success = new HashSet<Range>();
++        Set<Range> __this__success = new HashSet<Range>(other.success.size());
+         for (Range other_element : other.success) {
+           __this__success.add(new Range(other_element));
+         }
+@@ -50125,50 +55003,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(splitRangeByTablets_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      splitRangeByTablets_result typedOther = (splitRangeByTablets_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -50274,7 +55152,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new HashSet<Range>(2*_set336.size);
+                   for (int _i337 = 0; _i337 < _set336.size; ++_i337)
+                   {
+-                    Range _elem338; // required
++                    Range _elem338;
+                     _elem338 = new Range();
+                     _elem338.read(iprot);
+                     struct.success.add(_elem338);
+@@ -50416,7 +55294,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new HashSet<Range>(2*_set341.size);
+             for (int _i342 = 0; _i342 < _set341.size; ++_i342)
+             {
+-              Range _elem343; // required
++              Range _elem343;
+               _elem343 = new Range();
+               _elem343.read(iprot);
+               struct.success.add(_elem343);
+@@ -50444,7 +55322,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class tableExists_args implements org.apache.thrift.TBase<tableExists_args, tableExists_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class tableExists_args implements org.apache.thrift.TBase<tableExists_args, tableExists_args._Fields>, java.io.Serializable, Cloneable, Comparable<tableExists_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("tableExists_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -50712,30 +55590,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(tableExists_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      tableExists_args typedOther = (tableExists_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -50909,7 +55787,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class tableExists_result implements org.apache.thrift.TBase<tableExists_result, tableExists_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class tableExists_result implements org.apache.thrift.TBase<tableExists_result, tableExists_result._Fields>, java.io.Serializable, Cloneable, Comparable<tableExists_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("tableExists_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -51109,20 +55987,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(tableExists_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      tableExists_result typedOther = (tableExists_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -51263,7 +56141,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class tableIdMap_args implements org.apache.thrift.TBase<tableIdMap_args, tableIdMap_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class tableIdMap_args implements org.apache.thrift.TBase<tableIdMap_args, tableIdMap_args._Fields>, java.io.Serializable, Cloneable, Comparable<tableIdMap_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("tableIdMap_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -51472,20 +56350,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(tableIdMap_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      tableIdMap_args typedOther = (tableIdMap_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -51628,7 +56506,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class tableIdMap_result implements org.apache.thrift.TBase<tableIdMap_result, tableIdMap_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class tableIdMap_result implements org.apache.thrift.TBase<tableIdMap_result, tableIdMap_result._Fields>, java.io.Serializable, Cloneable, Comparable<tableIdMap_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("tableIdMap_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.MAP, (short)0);
+@@ -51726,18 +56604,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public tableIdMap_result(tableIdMap_result other) {
+       if (other.isSetSuccess()) {
+-        Map<String,String> __this__success = new HashMap<String,String>();
+-        for (Map.Entry<String, String> other_element : other.success.entrySet()) {
+-
+-          String other_element_key = other_element.getKey();
+-          String other_element_value = other_element.getValue();
+-
+-          String __this__success_copy_key = other_element_key;
+-
+-          String __this__success_copy_value = other_element_value;
+-
+-          __this__success.put(__this__success_copy_key, __this__success_copy_value);
+-        }
++        Map<String,String> __this__success = new HashMap<String,String>(other.success);
+         this.success = __this__success;
+       }
+     }
+@@ -51851,20 +56718,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(tableIdMap_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      tableIdMap_result typedOther = (tableIdMap_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -51946,8 +56813,8 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new HashMap<String,String>(2*_map344.size);
+                   for (int _i345 = 0; _i345 < _map344.size; ++_i345)
+                   {
+-                    String _key346; // required
+-                    String _val347; // required
++                    String _key346;
++                    String _val347;
+                     _key346 = iprot.readString();
+                     _val347 = iprot.readString();
+                     struct.success.put(_key346, _val347);
+@@ -52031,8 +56898,8 @@ import org.slf4j.LoggerFactory;
+             struct.success = new HashMap<String,String>(2*_map350.size);
+             for (int _i351 = 0; _i351 < _map350.size; ++_i351)
+             {
+-              String _key352; // required
+-              String _val353; // required
++              String _key352;
++              String _val353;
+               _key352 = iprot.readString();
+               _val353 = iprot.readString();
+               struct.success.put(_key352, _val353);
+@@ -52045,7 +56912,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class testTableClassLoad_args implements org.apache.thrift.TBase<testTableClassLoad_args, testTableClassLoad_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class testTableClassLoad_args implements org.apache.thrift.TBase<testTableClassLoad_args, testTableClassLoad_args._Fields>, java.io.Serializable, Cloneable, Comparable<testTableClassLoad_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("testTableClassLoad_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -52431,50 +57298,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(testTableClassLoad_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      testTableClassLoad_args typedOther = (testTableClassLoad_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetClassName()).compareTo(typedOther.isSetClassName());
++      lastComparison = Boolean.valueOf(isSetClassName()).compareTo(other.isSetClassName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetClassName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.className, typedOther.className);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.className, other.className);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetAsTypeName()).compareTo(typedOther.isSetAsTypeName());
++      lastComparison = Boolean.valueOf(isSetAsTypeName()).compareTo(other.isSetAsTypeName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetAsTypeName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.asTypeName, typedOther.asTypeName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.asTypeName, other.asTypeName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -52710,7 +57577,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class testTableClassLoad_result implements org.apache.thrift.TBase<testTableClassLoad_result, testTableClassLoad_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class testTableClassLoad_result implements org.apache.thrift.TBase<testTableClassLoad_result, testTableClassLoad_result._Fields>, java.io.Serializable, Cloneable, Comparable<testTableClassLoad_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("testTableClassLoad_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -53087,50 +57954,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(testTableClassLoad_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      testTableClassLoad_result typedOther = (testTableClassLoad_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -53370,7 +58237,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class pingTabletServer_args implements org.apache.thrift.TBase<pingTabletServer_args, pingTabletServer_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class pingTabletServer_args implements org.apache.thrift.TBase<pingTabletServer_args, pingTabletServer_args._Fields>, java.io.Serializable, Cloneable, Comparable<pingTabletServer_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("pingTabletServer_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -53638,30 +58505,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(pingTabletServer_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      pingTabletServer_args typedOther = (pingTabletServer_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTserver()).compareTo(typedOther.isSetTserver());
++      lastComparison = Boolean.valueOf(isSetTserver()).compareTo(other.isSetTserver());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTserver()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tserver, typedOther.tserver);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tserver, other.tserver);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -53835,7 +58702,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class pingTabletServer_result implements org.apache.thrift.TBase<pingTabletServer_result, pingTabletServer_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class pingTabletServer_result implements org.apache.thrift.TBase<pingTabletServer_result, pingTabletServer_result._Fields>, java.io.Serializable, Cloneable, Comparable<pingTabletServer_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("pingTabletServer_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -54092,30 +58959,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(pingTabletServer_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      pingTabletServer_result typedOther = (pingTabletServer_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -54293,7 +59160,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getActiveScans_args implements org.apache.thrift.TBase<getActiveScans_args, getActiveScans_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getActiveScans_args implements org.apache.thrift.TBase<getActiveScans_args, getActiveScans_args._Fields>, java.io.Serializable, Cloneable, Comparable<getActiveScans_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getActiveScans_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -54561,30 +59428,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getActiveScans_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getActiveScans_args typedOther = (getActiveScans_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTserver()).compareTo(typedOther.isSetTserver());
++      lastComparison = Boolean.valueOf(isSetTserver()).compareTo(other.isSetTserver());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTserver()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tserver, typedOther.tserver);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tserver, other.tserver);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -54758,7 +59625,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getActiveScans_result implements org.apache.thrift.TBase<getActiveScans_result, getActiveScans_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getActiveScans_result implements org.apache.thrift.TBase<getActiveScans_result, getActiveScans_result._Fields>, java.io.Serializable, Cloneable, Comparable<getActiveScans_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getActiveScans_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0);
+@@ -54873,7 +59740,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getActiveScans_result(getActiveScans_result other) {
+       if (other.isSetSuccess()) {
+-        List<ActiveScan> __this__success = new ArrayList<ActiveScan>();
++        List<ActiveScan> __this__success = new ArrayList<ActiveScan>(other.success.size());
+         for (ActiveScan other_element : other.success) {
+           __this__success.add(new ActiveScan(other_element));
+         }
+@@ -55094,40 +59961,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getActiveScans_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getActiveScans_result typedOther = (getActiveScans_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -55225,7 +60092,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new ArrayList<ActiveScan>(_list354.size);
+                   for (int _i355 = 0; _i355 < _list354.size; ++_i355)
+                   {
+-                    ActiveScan _elem356; // required
++                    ActiveScan _elem356;
+                     _elem356 = new ActiveScan();
+                     _elem356.read(iprot);
+                     struct.success.add(_elem356);
+@@ -55347,7 +60214,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new ArrayList<ActiveScan>(_list359.size);
+             for (int _i360 = 0; _i360 < _list359.size; ++_i360)
+             {
+-              ActiveScan _elem361; // required
++              ActiveScan _elem361;
+               _elem361 = new ActiveScan();
+               _elem361.read(iprot);
+               struct.success.add(_elem361);
+@@ -55370,7 +60237,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getActiveCompactions_args implements org.apache.thrift.TBase<getActiveCompactions_args, getActiveCompactions_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getActiveCompactions_args implements org.apache.thrift.TBase<getActiveCompactions_args, getActiveCompactions_args._Fields>, java.io.Serializable, Cloneable, Comparable<getActiveCompactions_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getActiveCompactions_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -55638,30 +60505,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getActiveCompactions_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getActiveCompactions_args typedOther = (getActiveCompactions_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTserver()).compareTo(typedOther.isSetTserver());
++      lastComparison = Boolean.valueOf(isSetTserver()).compareTo(other.isSetTserver());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTserver()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tserver, typedOther.tserver);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tserver, other.tserver);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -55835,7 +60702,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getActiveCompactions_result implements org.apache.thrift.TBase<getActiveCompactions_result, getActiveCompactions_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getActiveCompactions_result implements org.apache.thrift.TBase<getActiveCompactions_result, getActiveCompactions_result._Fields>, java.io.Serializable, Cloneable, Comparable<getActiveCompactions_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getActiveCompactions_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0);
+@@ -55950,7 +60817,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getActiveCompactions_result(getActiveCompactions_result other) {
+       if (other.isSetSuccess()) {
+-        List<ActiveCompaction> __this__success = new ArrayList<ActiveCompaction>();
++        List<ActiveCompaction> __this__success = new ArrayList<ActiveCompaction>(other.success.size());
+         for (ActiveCompaction other_element : other.success) {
+           __this__success.add(new ActiveCompaction(other_element));
+         }
+@@ -56171,40 +61038,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getActiveCompactions_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getActiveCompactions_result typedOther = (getActiveCompactions_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -56302,7 +61169,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new ArrayList<ActiveCompaction>(_list362.size);
+                   for (int _i363 = 0; _i363 < _list362.size; ++_i363)
+                   {
+-                    ActiveCompaction _elem364; // required
++                    ActiveCompaction _elem364;
+                     _elem364 = new ActiveCompaction();
+                     _elem364.read(iprot);
+                     struct.success.add(_elem364);
+@@ -56424,7 +61291,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new ArrayList<ActiveCompaction>(_list367.size);
+             for (int _i368 = 0; _i368 < _list367.size; ++_i368)
+             {
+-              ActiveCompaction _elem369; // required
++              ActiveCompaction _elem369;
+               _elem369 = new ActiveCompaction();
+               _elem369.read(iprot);
+               struct.success.add(_elem369);
+@@ -56447,7 +61314,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getSiteConfiguration_args implements org.apache.thrift.TBase<getSiteConfiguration_args, getSiteConfiguration_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getSiteConfiguration_args implements org.apache.thrift.TBase<getSiteConfiguration_args, getSiteConfiguration_args._Fields>, java.io.Serializable, Cloneable, Comparable<getSiteConfiguration_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getSiteConfiguration_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -56656,20 +61523,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getSiteConfiguration_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getSiteConfiguration_args typedOther = (getSiteConfiguration_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -56812,7 +61679,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getSiteConfiguration_result implements org.apache.thrift.TBase<getSiteConfiguration_result, getSiteConfiguration_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getSiteConfiguration_result implements org.apache.thrift.TBase<getSiteConfiguration_result, getSiteConfiguration_result._Fields>, java.io.Serializable, Cloneable, Comparable<getSiteConfiguration_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getSiteConfiguration_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.MAP, (short)0);
+@@ -56928,18 +61795,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getSiteConfiguration_result(getSiteConfiguration_result other) {
+       if (other.isSetSuccess()) {
+-        Map<String,String> __this__success = new HashMap<String,String>();
+-        for (Map.Entry<String, String> other_element : other.success.entrySet()) {
+-
+-          String other_element_key = other_element.getKey();
+-          String other_element_value = other_element.getValue();
+-
+-          String __this__success_copy_key = other_element_key;
+-
+-          String __this__success_copy_value = other_element_value;
+-
+-          __this__success.put(__this__success_copy_key, __this__success_copy_value);
+-        }
++        Map<String,String> __this__success = new HashMap<String,String>(other.success);
+         this.success = __this__success;
+       }
+       if (other.isSetOuch1()) {
+@@ -57153,40 +62009,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getSiteConfiguration_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getSiteConfiguration_result typedOther = (getSiteConfiguration_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -57284,8 +62140,8 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new HashMap<String,String>(2*_map370.size);
+                   for (int _i371 = 0; _i371 < _map370.size; ++_i371)
+                   {
+-                    String _key372; // required
+-                    String _val373; // required
++                    String _key372;
++                    String _val373;
+                     _key372 = iprot.readString();
+                     _val373 = iprot.readString();
+                     struct.success.put(_key372, _val373);
+@@ -57409,8 +62265,8 @@ import org.slf4j.LoggerFactory;
+             struct.success = new HashMap<String,String>(2*_map376.size);
+             for (int _i377 = 0; _i377 < _map376.size; ++_i377)
+             {
+-              String _key378; // required
+-              String _val379; // required
++              String _key378;
++              String _val379;
+               _key378 = iprot.readString();
+               _val379 = iprot.readString();
+               struct.success.put(_key378, _val379);
+@@ -57433,7 +62289,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getSystemConfiguration_args implements org.apache.thrift.TBase<getSystemConfiguration_args, getSystemConfiguration_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getSystemConfiguration_args implements org.apache.thrift.TBase<getSystemConfiguration_args, getSystemConfiguration_args._Fields>, java.io.Serializable, Cloneable, Comparable<getSystemConfiguration_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getSystemConfiguration_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -57642,20 +62498,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getSystemConfiguration_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getSystemConfiguration_args typedOther = (getSystemConfiguration_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -57798,7 +62654,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getSystemConfiguration_result implements org.apache.thrift.TBase<getSystemConfiguration_result, getSystemConfiguration_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getSystemConfiguration_result implements org.apache.thrift.TBase<getSystemConfiguration_result, getSystemConfiguration_result._Fields>, java.io.Serializable, Cloneable, Comparable<getSystemConfiguration_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getSystemConfiguration_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.MAP, (short)0);
+@@ -57914,18 +62770,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getSystemConfiguration_result(getSystemConfiguration_result other) {
+       if (other.isSetSuccess()) {
+-        Map<String,String> __this__success = new HashMap<String,String>();
+-        for (Map.Entry<String, String> other_element : other.success.entrySet()) {
+-
+-          String other_element_key = other_element.getKey();
+-          String other_element_value = other_element.getValue();
+-
+-          String __this__success_copy_key = other_element_key;
+-
+-          String __this__success_copy_value = other_element_value;
+-
+-          __this__success.put(__this__success_copy_key, __this__success_copy_value);
+-        }
++        Map<String,String> __this__success = new HashMap<String,String>(other.success);
+         this.success = __this__success;
+       }
+       if (other.isSetOuch1()) {
+@@ -58139,40 +62984,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getSystemConfiguration_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getSystemConfiguration_result typedOther = (getSystemConfiguration_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -58270,8 +63115,8 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new HashMap<String,String>(2*_map380.size);
+                   for (int _i381 = 0; _i381 < _map380.size; ++_i381)
+                   {
+-                    String _key382; // required
+-                    String _val383; // required
++                    String _key382;
++                    String _val383;
+                     _key382 = iprot.readString();
+                     _val383 = iprot.readString();
+                     struct.success.put(_key382, _val383);
+@@ -58395,8 +63240,8 @@ import org.slf4j.LoggerFactory;
+             struct.success = new HashMap<String,String>(2*_map386.size);
+             for (int _i387 = 0; _i387 < _map386.size; ++_i387)
+             {
+-              String _key388; // required
+-              String _val389; // required
++              String _key388;
++              String _val389;
+               _key388 = iprot.readString();
+               _val389 = iprot.readString();
+               struct.success.put(_key388, _val389);
+@@ -58419,7 +63264,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getTabletServers_args implements org.apache.thrift.TBase<getTabletServers_args, getTabletServers_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getTabletServers_args implements org.apache.thrift.TBase<getTabletServers_args, getTabletServers_args._Fields>, java.io.Serializable, Cloneable, Comparable<getTabletServers_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getTabletServers_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -58628,20 +63473,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getTabletServers_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getTabletServers_args typedOther = (getTabletServers_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -58784,7 +63629,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getTabletServers_result implements org.apache.thrift.TBase<getTabletServers_result, getTabletServers_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getTabletServers_result implements org.apache.thrift.TBase<getTabletServers_result, getTabletServers_result._Fields>, java.io.Serializable, Cloneable, Comparable<getTabletServers_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getTabletServers_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0);
+@@ -58881,10 +63726,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getTabletServers_result(getTabletServers_result other) {
+       if (other.isSetSuccess()) {
+-        List<String> __this__success = new ArrayList<String>();
+-        for (String other_element : other.success) {
+-          __this__success.add(other_element);
+-        }
++        List<String> __this__success = new ArrayList<String>(other.success);
+         this.success = __this__success;
+       }
+     }
+@@ -59002,20 +63844,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getTabletServers_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getTabletServers_result typedOther = (getTabletServers_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -59097,7 +63939,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new ArrayList<String>(_list390.size);
+                   for (int _i391 = 0; _i391 < _list390.size; ++_i391)
+                   {
+-                    String _elem392; // required
++                    String _elem392;
+                     _elem392 = iprot.readString();
+                     struct.success.add(_elem392);
+                   }
+@@ -59178,7 +64020,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new ArrayList<String>(_list395.size);
+             for (int _i396 = 0; _i396 < _list395.size; ++_i396)
+             {
+-              String _elem397; // required
++              String _elem397;
+               _elem397 = iprot.readString();
+               struct.success.add(_elem397);
+             }
+@@ -59190,7 +64032,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class removeProperty_args implements org.apache.thrift.TBase<removeProperty_args, removeProperty_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class removeProperty_args implements org.apache.thrift.TBase<removeProperty_args, removeProperty_args._Fields>, java.io.Serializable, Cloneable, Comparable<removeProperty_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("removeProperty_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -59458,30 +64300,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(removeProperty_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      removeProperty_args typedOther = (removeProperty_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(typedOther.isSetProperty());
++      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(other.isSetProperty());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetProperty()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, typedOther.property);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, other.property);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -59655,7 +64497,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class removeProperty_result implements org.apache.thrift.TBase<removeProperty_result, removeProperty_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class removeProperty_result implements org.apache.thrift.TBase<removeProperty_result, removeProperty_result._Fields>, java.io.Serializable, Cloneable, Comparable<removeProperty_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("removeProperty_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -59912,30 +64754,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(removeProperty_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      removeProperty_result typedOther = (removeProperty_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -60113,7 +64955,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class setProperty_args implements org.apache.thrift.TBase<setProperty_args, setProperty_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class setProperty_args implements org.apache.thrift.TBase<setProperty_args, setProperty_args._Fields>, java.io.Serializable, Cloneable, Comparable<setProperty_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("setProperty_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -60440,40 +65282,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(setProperty_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      setProperty_args typedOther = (setProperty_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(typedOther.isSetProperty());
++      lastComparison = Boolean.valueOf(isSetProperty()).compareTo(other.isSetProperty());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetProperty()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, typedOther.property);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.property, other.property);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetValue()).compareTo(typedOther.isSetValue());
++      lastComparison = Boolean.valueOf(isSetValue()).compareTo(other.isSetValue());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetValue()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, typedOther.value);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, other.value);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -60678,7 +65520,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class setProperty_result implements org.apache.thrift.TBase<setProperty_result, setProperty_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class setProperty_result implements org.apache.thrift.TBase<setProperty_result, setProperty_result._Fields>, java.io.Serializable, Cloneable, Comparable<setProperty_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("setProperty_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -60935,30 +65777,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(setProperty_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      setProperty_result typedOther = (setProperty_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -61136,7 +65978,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class testClassLoad_args implements org.apache.thrift.TBase<testClassLoad_args, testClassLoad_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class testClassLoad_args implements org.apache.thrift.TBase<testClassLoad_args, testClassLoad_args._Fields>, java.io.Serializable, Cloneable, Comparable<testClassLoad_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("testClassLoad_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -61463,40 +66305,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(testClassLoad_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      testClassLoad_args typedOther = (testClassLoad_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetClassName()).compareTo(typedOther.isSetClassName());
++      lastComparison = Boolean.valueOf(isSetClassName()).compareTo(other.isSetClassName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetClassName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.className, typedOther.className);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.className, other.className);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetAsTypeName()).compareTo(typedOther.isSetAsTypeName());
++      lastComparison = Boolean.valueOf(isSetAsTypeName()).compareTo(other.isSetAsTypeName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetAsTypeName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.asTypeName, typedOther.asTypeName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.asTypeName, other.asTypeName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -61701,7 +66543,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class testClassLoad_result implements org.apache.thrift.TBase<testClassLoad_result, testClassLoad_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class testClassLoad_result implements org.apache.thrift.TBase<testClassLoad_result, testClassLoad_result._Fields>, java.io.Serializable, Cloneable, Comparable<testClassLoad_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("testClassLoad_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -62019,40 +66861,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(testClassLoad_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      testClassLoad_result typedOther = (testClassLoad_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -62259,7 +67101,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class authenticateUser_args implements org.apache.thrift.TBase<authenticateUser_args, authenticateUser_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class authenticateUser_args implements org.apache.thrift.TBase<authenticateUser_args, authenticateUser_args._Fields>, java.io.Serializable, Cloneable, Comparable<authenticateUser_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("authenticateUser_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -62382,18 +67224,7 @@ import org.slf4j.LoggerFactory;
+         this.user = other.user;
+       }
+       if (other.isSetProperties()) {
+-        Map<String,String> __this__properties = new HashMap<String,String>();
+-        for (Map.Entry<String, String> other_element : other.properties.entrySet()) {
+-
+-          String other_element_key = other_element.getKey();
+-          String other_element_value = other_element.getValue();
+-
+-          String __this__properties_copy_key = other_element_key;
+-
+-          String __this__properties_copy_value = other_element_value;
+-
+-          __this__properties.put(__this__properties_copy_key, __this__properties_copy_value);
+-        }
++        Map<String,String> __this__properties = new HashMap<String,String>(other.properties);
+         this.properties = __this__properties;
+       }
+     }
+@@ -62611,40 +67442,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(authenticateUser_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      authenticateUser_args typedOther = (authenticateUser_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetUser()).compareTo(typedOther.isSetUser());
++      lastComparison = Boolean.valueOf(isSetUser()).compareTo(other.isSetUser());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetUser()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, typedOther.user);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, other.user);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetProperties()).compareTo(typedOther.isSetProperties());
++      lastComparison = Boolean.valueOf(isSetProperties()).compareTo(other.isSetProperties());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetProperties()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.properties, typedOther.properties);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.properties, other.properties);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -62758,8 +67589,8 @@ import org.slf4j.LoggerFactory;
+                   struct.properties = new HashMap<String,String>(2*_map398.size);
+                   for (int _i399 = 0; _i399 < _map398.size; ++_i399)
+                   {
+-                    String _key400; // required
+-                    String _val401; // required
++                    String _key400;
++                    String _val401;
+                     _key400 = iprot.readString();
+                     _val401 = iprot.readString();
+                     struct.properties.put(_key400, _val401);
+@@ -62873,8 +67704,8 @@ import org.slf4j.LoggerFactory;
+             struct.properties = new HashMap<String,String>(2*_map404.size);
+             for (int _i405 = 0; _i405 < _map404.size; ++_i405)
+             {
+-              String _key406; // required
+-              String _val407; // required
++              String _key406;
++              String _val407;
+               _key406 = iprot.readString();
+               _val407 = iprot.readString();
+               struct.properties.put(_key406, _val407);
+@@ -62887,7 +67718,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class authenticateUser_result implements org.apache.thrift.TBase<authenticateUser_result, authenticateUser_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class authenticateUser_result implements org.apache.thrift.TBase<authenticateUser_result, authenticateUser_result._Fields>, java.io.Serializable, Cloneable, Comparable<authenticateUser_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("authenticateUser_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -63205,40 +68036,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(authenticateUser_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      authenticateUser_result typedOther = (authenticateUser_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -63445,7 +68276,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class changeUserAuthorizations_args implements org.apache.thrift.TBase<changeUserAuthorizations_args, changeUserAuthorizations_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class changeUserAuthorizations_args implements org.apache.thrift.TBase<changeUserAuthorizations_args, changeUserAuthorizations_args._Fields>, java.io.Serializable, Cloneable, Comparable<changeUserAuthorizations_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("changeUserAuthorizations_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -63567,12 +68398,7 @@ import org.slf4j.LoggerFactory;
+         this.user = other.user;
+       }
+       if (other.isSetAuthorizations()) {
+-        Set<ByteBuffer> __this__authorizations = new HashSet<ByteBuffer>();
+-        for (ByteBuffer other_element : other.authorizations) {
+-          ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-          __this__authorizations.add(temp_binary_element);
+-        }
++        Set<ByteBuffer> __this__authorizations = new HashSet<ByteBuffer>(other.authorizations);
+         this.authorizations = __this__authorizations;
+       }
+     }
+@@ -63794,40 +68620,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(changeUserAuthorizations_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      changeUserAuthorizations_args typedOther = (changeUserAuthorizations_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetUser()).compareTo(typedOther.isSetUser());
++      lastComparison = Boolean.valueOf(isSetUser()).compareTo(other.isSetUser());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetUser()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, typedOther.user);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, other.user);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(typedOther.isSetAuthorizations());
++      lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(other.isSetAuthorizations());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetAuthorizations()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, typedOther.authorizations);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, other.authorizations);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -63941,7 +68767,7 @@ import org.slf4j.LoggerFactory;
+                   struct.authorizations = new HashSet<ByteBuffer>(2*_set408.size);
+                   for (int _i409 = 0; _i409 < _set408.size; ++_i409)
+                   {
+-                    ByteBuffer _elem410; // required
++                    ByteBuffer _elem410;
+                     _elem410 = iprot.readBinary();
+                     struct.authorizations.add(_elem410);
+                   }
+@@ -64052,7 +68878,7 @@ import org.slf4j.LoggerFactory;
+             struct.authorizations = new HashSet<ByteBuffer>(2*_set413.size);
+             for (int _i414 = 0; _i414 < _set413.size; ++_i414)
+             {
+-              ByteBuffer _elem415; // required
++              ByteBuffer _elem415;
+               _elem415 = iprot.readBinary();
+               struct.authorizations.add(_elem415);
+             }
+@@ -64064,7 +68890,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class changeUserAuthorizations_result implements org.apache.thrift.TBase<changeUserAuthorizations_result, changeUserAuthorizations_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class changeUserAuthorizations_result implements org.apache.thrift.TBase<changeUserAuthorizations_result, changeUserAuthorizations_result._Fields>, java.io.Serializable, Cloneable, Comparable<changeUserAuthorizations_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("changeUserAuthorizations_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -64321,30 +69147,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(changeUserAuthorizations_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      changeUserAuthorizations_result typedOther = (changeUserAuthorizations_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -64522,7 +69348,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class changeLocalUserPassword_args implements org.apache.thrift.TBase<changeLocalUserPassword_args, changeLocalUserPassword_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class changeLocalUserPassword_args implements org.apache.thrift.TBase<changeLocalUserPassword_args, changeLocalUserPassword_args._Fields>, java.io.Serializable, Cloneable, Comparable<changeLocalUserPassword_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("changeLocalUserPassword_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -64860,40 +69686,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(changeLocalUserPassword_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      changeLocalUserPassword_args typedOther = (changeLocalUserPassword_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetUser()).compareTo(typedOther.isSetUser());
++      lastComparison = Boolean.valueOf(isSetUser()).compareTo(other.isSetUser());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetUser()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, typedOther.user);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, other.user);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPassword()).compareTo(typedOther.isSetPassword());
++      lastComparison = Boolean.valueOf(isSetPassword()).compareTo(other.isSetPassword());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPassword()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.password, typedOther.password);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.password, other.password);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -65098,7 +69924,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class changeLocalUserPassword_result implements org.apache.thrift.TBase<changeLocalUserPassword_result, changeLocalUserPassword_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class changeLocalUserPassword_result implements org.apache.thrift.TBase<changeLocalUserPassword_result, changeLocalUserPassword_result._Fields>, java.io.Serializable, Cloneable, Comparable<changeLocalUserPassword_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("changeLocalUserPassword_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -65355,30 +70181,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(changeLocalUserPassword_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      changeLocalUserPassword_result typedOther = (changeLocalUserPassword_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -65556,7 +70382,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class createLocalUser_args implements org.apache.thrift.TBase<createLocalUser_args, createLocalUser_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class createLocalUser_args implements org.apache.thrift.TBase<createLocalUser_args, createLocalUser_args._Fields>, java.io.Serializable, Cloneable, Comparable<createLocalUser_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("createLocalUser_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -65894,40 +70720,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(createLocalUser_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      createLocalUser_args typedOther = (createLocalUser_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetUser()).compareTo(typedOther.isSetUser());
++      lastComparison = Boolean.valueOf(isSetUser()).compareTo(other.isSetUser());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetUser()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, typedOther.user);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, other.user);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPassword()).compareTo(typedOther.isSetPassword());
++      lastComparison = Boolean.valueOf(isSetPassword()).compareTo(other.isSetPassword());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPassword()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.password, typedOther.password);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.password, other.password);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -66132,7 +70958,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class createLocalUser_result implements org.apache.thrift.TBase<createLocalUser_result, createLocalUser_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class createLocalUser_result implements org.apache.thrift.TBase<createLocalUser_result, createLocalUser_result._Fields>, java.io.Serializable, Cloneable, Comparable<createLocalUser_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("createLocalUser_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -66389,30 +71215,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(createLocalUser_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      createLocalUser_result typedOther = (createLocalUser_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -66590,7 +71416,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class dropLocalUser_args implements org.apache.thrift.TBase<dropLocalUser_args, dropLocalUser_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class dropLocalUser_args implements org.apache.thrift.TBase<dropLocalUser_args, dropLocalUser_args._Fields>, java.io.Serializable, Cloneable, Comparable<dropLocalUser_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("dropLocalUser_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -66858,30 +71684,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(dropLocalUser_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      dropLocalUser_args typedOther = (dropLocalUser_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetUser()).compareTo(typedOther.isSetUser());
++      lastComparison = Boolean.valueOf(isSetUser()).compareTo(other.isSetUser());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetUser()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, typedOther.user);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, other.user);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -67055,7 +71881,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class dropLocalUser_result implements org.apache.thrift.TBase<dropLocalUser_result, dropLocalUser_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class dropLocalUser_result implements org.apache.thrift.TBase<dropLocalUser_result, dropLocalUser_result._Fields>, java.io.Serializable, Cloneable, Comparable<dropLocalUser_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("dropLocalUser_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -67312,30 +72138,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(dropLocalUser_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      dropLocalUser_result typedOther = (dropLocalUser_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -67513,7 +72339,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getUserAuthorizations_args implements org.apache.thrift.TBase<getUserAuthorizations_args, getUserAuthorizations_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getUserAuthorizations_args implements org.apache.thrift.TBase<getUserAuthorizations_args, getUserAuthorizations_args._Fields>, java.io.Serializable, Cloneable, Comparable<getUserAuthorizations_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getUserAuthorizations_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -67781,30 +72607,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getUserAuthorizations_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getUserAuthorizations_args typedOther = (getUserAuthorizations_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetUser()).compareTo(typedOther.isSetUser());
++      lastComparison = Boolean.valueOf(isSetUser()).compareTo(other.isSetUser());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetUser()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, typedOther.user);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, other.user);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -67978,7 +72804,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getUserAuthorizations_result implements org.apache.thrift.TBase<getUserAuthorizations_result, getUserAuthorizations_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getUserAuthorizations_result implements org.apache.thrift.TBase<getUserAuthorizations_result, getUserAuthorizations_result._Fields>, java.io.Serializable, Cloneable, Comparable<getUserAuthorizations_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getUserAuthorizations_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0);
+@@ -68093,12 +72919,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public getUserAuthorizations_result(getUserAuthorizations_result other) {
+       if (other.isSetSuccess()) {
+-        List<ByteBuffer> __this__success = new ArrayList<ByteBuffer>();
+-        for (ByteBuffer other_element : other.success) {
+-          ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-          __this__success.add(temp_binary_element);
+-        }
++        List<ByteBuffer> __this__success = new ArrayList<ByteBuffer>(other.success);
+         this.success = __this__success;
+       }
+       if (other.isSetOuch1()) {
+@@ -68316,40 +73137,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getUserAuthorizations_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getUserAuthorizations_result typedOther = (getUserAuthorizations_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -68447,7 +73268,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new ArrayList<ByteBuffer>(_list416.size);
+                   for (int _i417 = 0; _i417 < _list416.size; ++_i417)
+                   {
+-                    ByteBuffer _elem418; // required
++                    ByteBuffer _elem418;
+                     _elem418 = iprot.readBinary();
+                     struct.success.add(_elem418);
+                   }
+@@ -68568,7 +73389,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new ArrayList<ByteBuffer>(_list421.size);
+             for (int _i422 = 0; _i422 < _list421.size; ++_i422)
+             {
+-              ByteBuffer _elem423; // required
++              ByteBuffer _elem423;
+               _elem423 = iprot.readBinary();
+               struct.success.add(_elem423);
+             }
+@@ -68590,7 +73411,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class grantSystemPermission_args implements org.apache.thrift.TBase<grantSystemPermission_args, grantSystemPermission_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class grantSystemPermission_args implements org.apache.thrift.TBase<grantSystemPermission_args, grantSystemPermission_args._Fields>, java.io.Serializable, Cloneable, Comparable<grantSystemPermission_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("grantSystemPermission_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -68933,40 +73754,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(grantSystemPermission_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      grantSystemPermission_args typedOther = (grantSystemPermission_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetUser()).compareTo(typedOther.isSetUser());
++      lastComparison = Boolean.valueOf(isSetUser()).compareTo(other.isSetUser());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetUser()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, typedOther.user);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, other.user);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPerm()).compareTo(typedOther.isSetPerm());
++      lastComparison = Boolean.valueOf(isSetPerm()).compareTo(other.isSetPerm());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPerm()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.perm, typedOther.perm);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.perm, other.perm);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -69171,7 +73992,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class grantSystemPermission_result implements org.apache.thrift.TBase<grantSystemPermission_result, grantSystemPermission_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class grantSystemPermission_result implements org.apache.thrift.TBase<grantSystemPermission_result, grantSystemPermission_result._Fields>, java.io.Serializable, Cloneable, Comparable<grantSystemPermission_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("grantSystemPermission_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -69428,30 +74249,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(grantSystemPermission_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      grantSystemPermission_result typedOther = (grantSystemPermission_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -69629,7 +74450,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class grantTablePermission_args implements org.apache.thrift.TBase<grantTablePermission_args, grantTablePermission_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class grantTablePermission_args implements org.apache.thrift.TBase<grantTablePermission_args, grantTablePermission_args._Fields>, java.io.Serializable, Cloneable, Comparable<grantTablePermission_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("grantTablePermission_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -70031,50 +74852,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(grantTablePermission_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      grantTablePermission_args typedOther = (grantTablePermission_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetUser()).compareTo(typedOther.isSetUser());
++      lastComparison = Boolean.valueOf(isSetUser()).compareTo(other.isSetUser());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetUser()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, typedOther.user);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, other.user);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTable()).compareTo(typedOther.isSetTable());
++      lastComparison = Boolean.valueOf(isSetTable()).compareTo(other.isSetTable());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTable()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.table, typedOther.table);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.table, other.table);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPerm()).compareTo(typedOther.isSetPerm());
++      lastComparison = Boolean.valueOf(isSetPerm()).compareTo(other.isSetPerm());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPerm()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.perm, typedOther.perm);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.perm, other.perm);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -70310,7 +75131,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class grantTablePermission_result implements org.apache.thrift.TBase<grantTablePermission_result, grantTablePermission_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class grantTablePermission_result implements org.apache.thrift.TBase<grantTablePermission_result, grantTablePermission_result._Fields>, java.io.Serializable, Cloneable, Comparable<grantTablePermission_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("grantTablePermission_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -70626,40 +75447,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(grantTablePermission_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      grantTablePermission_result typedOther = (grantTablePermission_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -70870,7 +75691,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class hasSystemPermission_args implements org.apache.thrift.TBase<hasSystemPermission_args, hasSystemPermission_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class hasSystemPermission_args implements org.apache.thrift.TBase<hasSystemPermission_args, hasSystemPermission_args._Fields>, java.io.Serializable, Cloneable, Comparable<hasSystemPermission_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("hasSystemPermission_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -71213,40 +76034,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(hasSystemPermission_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      hasSystemPermission_args typedOther = (hasSystemPermission_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetUser()).compareTo(typedOther.isSetUser());
++      lastComparison = Boolean.valueOf(isSetUser()).compareTo(other.isSetUser());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetUser()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, typedOther.user);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, other.user);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPerm()).compareTo(typedOther.isSetPerm());
++      lastComparison = Boolean.valueOf(isSetPerm()).compareTo(other.isSetPerm());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPerm()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.perm, typedOther.perm);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.perm, other.perm);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -71451,7 +76272,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class hasSystemPermission_result implements org.apache.thrift.TBase<hasSystemPermission_result, hasSystemPermission_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class hasSystemPermission_result implements org.apache.thrift.TBase<hasSystemPermission_result, hasSystemPermission_result._Fields>, java.io.Serializable, Cloneable, Comparable<hasSystemPermission_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("hasSystemPermission_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -71769,40 +76590,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(hasSystemPermission_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      hasSystemPermission_result typedOther = (hasSystemPermission_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -72009,7 +76830,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class hasTablePermission_args implements org.apache.thrift.TBase<hasTablePermission_args, hasTablePermission_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class hasTablePermission_args implements org.apache.thrift.TBase<hasTablePermission_args, hasTablePermission_args._Fields>, java.io.Serializable, Cloneable, Comparable<hasTablePermission_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("hasTablePermission_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -72411,50 +77232,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(hasTablePermission_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      hasTablePermission_args typedOther = (hasTablePermission_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetUser()).compareTo(typedOther.isSetUser());
++      lastComparison = Boolean.valueOf(isSetUser()).compareTo(other.isSetUser());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetUser()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, typedOther.user);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, other.user);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTable()).compareTo(typedOther.isSetTable());
++      lastComparison = Boolean.valueOf(isSetTable()).compareTo(other.isSetTable());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTable()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.table, typedOther.table);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.table, other.table);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPerm()).compareTo(typedOther.isSetPerm());
++      lastComparison = Boolean.valueOf(isSetPerm()).compareTo(other.isSetPerm());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPerm()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.perm, typedOther.perm);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.perm, other.perm);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -72690,7 +77511,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class hasTablePermission_result implements org.apache.thrift.TBase<hasTablePermission_result, hasTablePermission_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class hasTablePermission_result implements org.apache.thrift.TBase<hasTablePermission_result, hasTablePermission_result._Fields>, java.io.Serializable, Cloneable, Comparable<hasTablePermission_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("hasTablePermission_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -73067,50 +77888,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(hasTablePermission_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      hasTablePermission_result typedOther = (hasTablePermission_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -73350,7 +78171,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class listLocalUsers_args implements org.apache.thrift.TBase<listLocalUsers_args, listLocalUsers_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class listLocalUsers_args implements org.apache.thrift.TBase<listLocalUsers_args, listLocalUsers_args._Fields>, java.io.Serializable, Cloneable, Comparable<listLocalUsers_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("listLocalUsers_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -73559,20 +78380,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(listLocalUsers_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      listLocalUsers_args typedOther = (listLocalUsers_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -73715,7 +78536,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class listLocalUsers_result implements org.apache.thrift.TBase<listLocalUsers_result, listLocalUsers_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class listLocalUsers_result implements org.apache.thrift.TBase<listLocalUsers_result, listLocalUsers_result._Fields>, java.io.Serializable, Cloneable, Comparable<listLocalUsers_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("listLocalUsers_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.SET, (short)0);
+@@ -73839,10 +78660,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public listLocalUsers_result(listLocalUsers_result other) {
+       if (other.isSetSuccess()) {
+-        Set<String> __this__success = new HashSet<String>();
+-        for (String other_element : other.success) {
+-          __this__success.add(other_element);
+-        }
++        Set<String> __this__success = new HashSet<String>(other.success);
+         this.success = __this__success;
+       }
+       if (other.isSetOuch1()) {
+@@ -74110,50 +78928,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(listLocalUsers_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      listLocalUsers_result typedOther = (listLocalUsers_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -74259,7 +79077,7 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new HashSet<String>(2*_set424.size);
+                   for (int _i425 = 0; _i425 < _set424.size; ++_i425)
+                   {
+-                    String _elem426; // required
++                    String _elem426;
+                     _elem426 = iprot.readString();
+                     struct.success.add(_elem426);
+                   }
+@@ -74400,7 +79218,7 @@ import org.slf4j.LoggerFactory;
+             struct.success = new HashSet<String>(2*_set429.size);
+             for (int _i430 = 0; _i430 < _set429.size; ++_i430)
+             {
+-              String _elem431; // required
++              String _elem431;
+               _elem431 = iprot.readString();
+               struct.success.add(_elem431);
+             }
+@@ -74427,7 +79245,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class revokeSystemPermission_args implements org.apache.thrift.TBase<revokeSystemPermission_args, revokeSystemPermission_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class revokeSystemPermission_args implements org.apache.thrift.TBase<revokeSystemPermission_args, revokeSystemPermission_args._Fields>, java.io.Serializable, Cloneable, Comparable<revokeSystemPermission_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("revokeSystemPermission_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -74770,40 +79588,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(revokeSystemPermission_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      revokeSystemPermission_args typedOther = (revokeSystemPermission_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetUser()).compareTo(typedOther.isSetUser());
++      lastComparison = Boolean.valueOf(isSetUser()).compareTo(other.isSetUser());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetUser()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, typedOther.user);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, other.user);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPerm()).compareTo(typedOther.isSetPerm());
++      lastComparison = Boolean.valueOf(isSetPerm()).compareTo(other.isSetPerm());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPerm()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.perm, typedOther.perm);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.perm, other.perm);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -75008,7 +79826,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class revokeSystemPermission_result implements org.apache.thrift.TBase<revokeSystemPermission_result, revokeSystemPermission_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class revokeSystemPermission_result implements org.apache.thrift.TBase<revokeSystemPermission_result, revokeSystemPermission_result._Fields>, java.io.Serializable, Cloneable, Comparable<revokeSystemPermission_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("revokeSystemPermission_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -75265,30 +80083,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(revokeSystemPermission_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      revokeSystemPermission_result typedOther = (revokeSystemPermission_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -75466,7 +80284,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class revokeTablePermission_args implements org.apache.thrift.TBase<revokeTablePermission_args, revokeTablePermission_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class revokeTablePermission_args implements org.apache.thrift.TBase<revokeTablePermission_args, revokeTablePermission_args._Fields>, java.io.Serializable, Cloneable, Comparable<revokeTablePermission_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("revokeTablePermission_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -75868,50 +80686,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(revokeTablePermission_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      revokeTablePermission_args typedOther = (revokeTablePermission_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetUser()).compareTo(typedOther.isSetUser());
++      lastComparison = Boolean.valueOf(isSetUser()).compareTo(other.isSetUser());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetUser()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, typedOther.user);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, other.user);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTable()).compareTo(typedOther.isSetTable());
++      lastComparison = Boolean.valueOf(isSetTable()).compareTo(other.isSetTable());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTable()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.table, typedOther.table);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.table, other.table);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPerm()).compareTo(typedOther.isSetPerm());
++      lastComparison = Boolean.valueOf(isSetPerm()).compareTo(other.isSetPerm());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPerm()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.perm, typedOther.perm);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.perm, other.perm);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -76147,7 +80965,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class revokeTablePermission_result implements org.apache.thrift.TBase<revokeTablePermission_result, revokeTablePermission_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class revokeTablePermission_result implements org.apache.thrift.TBase<revokeTablePermission_result, revokeTablePermission_result._Fields>, java.io.Serializable, Cloneable, Comparable<revokeTablePermission_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("revokeTablePermission_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -76463,40 +81281,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(revokeTablePermission_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      revokeTablePermission_result typedOther = (revokeTablePermission_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -76707,7 +81525,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class createBatchScanner_args implements org.apache.thrift.TBase<createBatchScanner_args, createBatchScanner_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class createBatchScanner_args implements org.apache.thrift.TBase<createBatchScanner_args, createBatchScanner_args._Fields>, java.io.Serializable, Cloneable, Comparable<createBatchScanner_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("createBatchScanner_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -77034,40 +81852,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(createBatchScanner_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      createBatchScanner_args typedOther = (createBatchScanner_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOptions()).compareTo(typedOther.isSetOptions());
++      lastComparison = Boolean.valueOf(isSetOptions()).compareTo(other.isSetOptions());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOptions()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.options, typedOther.options);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.options, other.options);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -77277,7 +82095,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class createBatchScanner_result implements org.apache.thrift.TBase<createBatchScanner_result, createBatchScanner_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class createBatchScanner_result implements org.apache.thrift.TBase<createBatchScanner_result, createBatchScanner_result._Fields>, java.io.Serializable, Cloneable, Comparable<createBatchScanner_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("createBatchScanner_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRING, (short)0);
+@@ -77652,50 +82470,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(createBatchScanner_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      createBatchScanner_result typedOther = (createBatchScanner_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -77937,7 +82755,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class createScanner_args implements org.apache.thrift.TBase<createScanner_args, createScanner_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class createScanner_args implements org.apache.thrift.TBase<createScanner_args, createScanner_args._Fields>, java.io.Serializable, Cloneable, Comparable<createScanner_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("createScanner_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -78264,40 +83082,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(createScanner_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      createScanner_args typedOther = (createScanner_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOptions()).compareTo(typedOther.isSetOptions());
++      lastComparison = Boolean.valueOf(isSetOptions()).compareTo(other.isSetOptions());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOptions()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.options, typedOther.options);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.options, other.options);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -78507,7 +83325,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class createScanner_result implements org.apache.thrift.TBase<createScanner_result, createScanner_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class createScanner_result implements org.apache.thrift.TBase<createScanner_result, createScanner_result._Fields>, java.io.Serializable, Cloneable, Comparable<createScanner_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("createScanner_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRING, (short)0);
+@@ -78882,50 +83700,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(createScanner_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      createScanner_result typedOther = (createScanner_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -79167,7 +83985,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class hasNext_args implements org.apache.thrift.TBase<hasNext_args, hasNext_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class hasNext_args implements org.apache.thrift.TBase<hasNext_args, hasNext_args._Fields>, java.io.Serializable, Cloneable, Comparable<hasNext_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("hasNext_args");
+ 
+     private static final org.apache.thrift.protocol.TField SCANNER_FIELD_DESC = new org.apache.thrift.protocol.TField("scanner", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -79365,20 +84183,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(hasNext_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      hasNext_args typedOther = (hasNext_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetScanner()).compareTo(typedOther.isSetScanner());
++      lastComparison = Boolean.valueOf(isSetScanner()).compareTo(other.isSetScanner());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetScanner()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanner, typedOther.scanner);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanner, other.scanner);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -79521,7 +84339,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class hasNext_result implements org.apache.thrift.TBase<hasNext_result, hasNext_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class hasNext_result implements org.apache.thrift.TBase<hasNext_result, hasNext_result._Fields>, java.io.Serializable, Cloneable, Comparable<hasNext_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("hasNext_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -79780,30 +84598,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(hasNext_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      hasNext_result typedOther = (hasNext_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -79977,7 +84795,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class nextEntry_args implements org.apache.thrift.TBase<nextEntry_args, nextEntry_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class nextEntry_args implements org.apache.thrift.TBase<nextEntry_args, nextEntry_args._Fields>, java.io.Serializable, Cloneable, Comparable<nextEntry_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("nextEntry_args");
+ 
+     private static final org.apache.thrift.protocol.TField SCANNER_FIELD_DESC = new org.apache.thrift.protocol.TField("scanner", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -80175,20 +84993,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(nextEntry_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      nextEntry_args typedOther = (nextEntry_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetScanner()).compareTo(typedOther.isSetScanner());
++      lastComparison = Boolean.valueOf(isSetScanner()).compareTo(other.isSetScanner());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetScanner()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanner, typedOther.scanner);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanner, other.scanner);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -80331,7 +85149,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class nextEntry_result implements org.apache.thrift.TBase<nextEntry_result, nextEntry_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class nextEntry_result implements org.apache.thrift.TBase<nextEntry_result, nextEntry_result._Fields>, java.io.Serializable, Cloneable, Comparable<nextEntry_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("nextEntry_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRUCT, (short)0);
+@@ -80706,50 +85524,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(nextEntry_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      nextEntry_result typedOther = (nextEntry_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -80996,7 +85814,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class nextK_args implements org.apache.thrift.TBase<nextK_args, nextK_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class nextK_args implements org.apache.thrift.TBase<nextK_args, nextK_args._Fields>, java.io.Serializable, Cloneable, Comparable<nextK_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("nextK_args");
+ 
+     private static final org.apache.thrift.protocol.TField SCANNER_FIELD_DESC = new org.apache.thrift.protocol.TField("scanner", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -81255,30 +86073,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(nextK_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      nextK_args typedOther = (nextK_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetScanner()).compareTo(typedOther.isSetScanner());
++      lastComparison = Boolean.valueOf(isSetScanner()).compareTo(other.isSetScanner());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetScanner()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanner, typedOther.scanner);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanner, other.scanner);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetK()).compareTo(typedOther.isSetK());
++      lastComparison = Boolean.valueOf(isSetK()).compareTo(other.isSetK());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetK()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.k, typedOther.k);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.k, other.k);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -81448,7 +86266,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class nextK_result implements org.apache.thrift.TBase<nextK_result, nextK_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class nextK_result implements org.apache.thrift.TBase<nextK_result, nextK_result._Fields>, java.io.Serializable, Cloneable, Comparable<nextK_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("nextK_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRUCT, (short)0);
+@@ -81823,50 +86641,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(nextK_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      nextK_result typedOther = (nextK_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -82113,7 +86931,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class closeScanner_args implements org.apache.thrift.TBase<closeScanner_args, closeScanner_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class closeScanner_args implements org.apache.thrift.TBase<closeScanner_args, closeScanner_args._Fields>, java.io.Serializable, Cloneable, Comparable<closeScanner_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("closeScanner_args");
+ 
+     private static final org.apache.thrift.protocol.TField SCANNER_FIELD_DESC = new org.apache.thrift.protocol.TField("scanner", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -82311,20 +87129,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(closeScanner_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      closeScanner_args typedOther = (closeScanner_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetScanner()).compareTo(typedOther.isSetScanner());
++      lastComparison = Boolean.valueOf(isSetScanner()).compareTo(other.isSetScanner());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetScanner()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanner, typedOther.scanner);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanner, other.scanner);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -82467,7 +87285,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class closeScanner_result implements org.apache.thrift.TBase<closeScanner_result, closeScanner_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class closeScanner_result implements org.apache.thrift.TBase<closeScanner_result, closeScanner_result._Fields>, java.io.Serializable, Cloneable, Comparable<closeScanner_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("closeScanner_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -82665,20 +87483,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(closeScanner_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      closeScanner_result typedOther = (closeScanner_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -82823,7 +87641,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class updateAndFlush_args implements org.apache.thrift.TBase<updateAndFlush_args, updateAndFlush_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class updateAndFlush_args implements org.apache.thrift.TBase<updateAndFlush_args, updateAndFlush_args._Fields>, java.io.Serializable, Cloneable, Comparable<updateAndFlush_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("updateAndFlush_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -82947,7 +87765,7 @@ import org.slf4j.LoggerFactory;
+         this.tableName = other.tableName;
+       }
+       if (other.isSetCells()) {
+-        Map<ByteBuffer,List<ColumnUpdate>> __this__cells = new HashMap<ByteBuffer,List<ColumnUpdate>>();
++        Map<ByteBuffer,List<ColumnUpdate>> __this__cells = new HashMap<ByteBuffer,List<ColumnUpdate>>(other.cells.size());
+         for (Map.Entry<ByteBuffer, List<ColumnUpdate>> other_element : other.cells.entrySet()) {
+ 
+           ByteBuffer other_element_key = other_element.getKey();
+@@ -82956,7 +87774,7 @@ import org.slf4j.LoggerFactory;
+           ByteBuffer __this__cells_copy_key = org.apache.thrift.TBaseHelper.copyBinary(other_element_key);
+ ;
+ 
+-          List<ColumnUpdate> __this__cells_copy_value = new ArrayList<ColumnUpdate>();
++          List<ColumnUpdate> __this__cells_copy_value = new ArrayList<ColumnUpdate>(other_element_value.size());
+           for (ColumnUpdate other_element_value_element : other_element_value) {
+             __this__cells_copy_value.add(new ColumnUpdate(other_element_value_element));
+           }
+@@ -83180,40 +87998,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(updateAndFlush_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      updateAndFlush_args typedOther = (updateAndFlush_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCells()).compareTo(typedOther.isSetCells());
++      lastComparison = Boolean.valueOf(isSetCells()).compareTo(other.isSetCells());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCells()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cells, typedOther.cells);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cells, other.cells);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -83327,15 +88145,15 @@ import org.slf4j.LoggerFactory;
+                   struct.cells = new HashMap<ByteBuffer,List<ColumnUpdate>>(2*_map432.size);
+                   for (int _i433 = 0; _i433 < _map432.size; ++_i433)
+                   {
+-                    ByteBuffer _key434; // required
+-                    List<ColumnUpdate> _val435; // required
++                    ByteBuffer _key434;
++                    List<ColumnUpdate> _val435;
+                     _key434 = iprot.readBinary();
+                     {
+                       org.apache.thrift.protocol.TList _list436 = iprot.readListBegin();
+                       _val435 = new ArrayList<ColumnUpdate>(_list436.size);
+                       for (int _i437 = 0; _i437 < _list436.size; ++_i437)
+                       {
+-                        ColumnUpdate _elem438; // required
++                        ColumnUpdate _elem438;
+                         _elem438 = new ColumnUpdate();
+                         _elem438.read(iprot);
+                         _val435.add(_elem438);
+@@ -83466,15 +88284,15 @@ import org.slf4j.LoggerFactory;
+             struct.cells = new HashMap<ByteBuffer,List<ColumnUpdate>>(2*_map443.size);
+             for (int _i444 = 0; _i444 < _map443.size; ++_i444)
+             {
+-              ByteBuffer _key445; // required
+-              List<ColumnUpdate> _val446; // required
++              ByteBuffer _key445;
++              List<ColumnUpdate> _val446;
+               _key445 = iprot.readBinary();
+               {
+                 org.apache.thrift.protocol.TList _list447 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+                 _val446 = new ArrayList<ColumnUpdate>(_list447.size);
+                 for (int _i448 = 0; _i448 < _list447.size; ++_i448)
+                 {
+-                  ColumnUpdate _elem449; // required
++                  ColumnUpdate _elem449;
+                   _elem449 = new ColumnUpdate();
+                   _elem449.read(iprot);
+                   _val446.add(_elem449);
+@@ -83490,7 +88308,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class updateAndFlush_result implements org.apache.thrift.TBase<updateAndFlush_result, updateAndFlush_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class updateAndFlush_result implements org.apache.thrift.TBase<updateAndFlush_result, updateAndFlush_result._Fields>, java.io.Serializable, Cloneable, Comparable<updateAndFlush_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("updateAndFlush_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUTCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("outch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -83865,50 +88683,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(updateAndFlush_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      updateAndFlush_result typedOther = (updateAndFlush_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOutch1()).compareTo(typedOther.isSetOutch1());
++      lastComparison = Boolean.valueOf(isSetOutch1()).compareTo(other.isSetOutch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOutch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.outch1, typedOther.outch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.outch1, other.outch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch4()).compareTo(typedOther.isSetOuch4());
++      lastComparison = Boolean.valueOf(isSetOuch4()).compareTo(other.isSetOuch4());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch4()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch4, typedOther.ouch4);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch4, other.ouch4);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -84152,7 +88970,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class createWriter_args implements org.apache.thrift.TBase<createWriter_args, createWriter_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class createWriter_args implements org.apache.thrift.TBase<createWriter_args, createWriter_args._Fields>, java.io.Serializable, Cloneable, Comparable<createWriter_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("createWriter_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -84479,40 +89297,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(createWriter_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      createWriter_args typedOther = (createWriter_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOpts()).compareTo(typedOther.isSetOpts());
++      lastComparison = Boolean.valueOf(isSetOpts()).compareTo(other.isSetOpts());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOpts()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.opts, typedOther.opts);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.opts, other.opts);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -84722,7 +89540,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class createWriter_result implements org.apache.thrift.TBase<createWriter_result, createWriter_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class createWriter_result implements org.apache.thrift.TBase<createWriter_result, createWriter_result._Fields>, java.io.Serializable, Cloneable, Comparable<createWriter_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("createWriter_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRING, (short)0);
+@@ -85097,50 +89915,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(createWriter_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      createWriter_result typedOther = (createWriter_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOutch1()).compareTo(typedOther.isSetOutch1());
++      lastComparison = Boolean.valueOf(isSetOutch1()).compareTo(other.isSetOutch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOutch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.outch1, typedOther.outch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.outch1, other.outch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -85382,7 +90200,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class update_args implements org.apache.thrift.TBase<update_args, update_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class update_args implements org.apache.thrift.TBase<update_args, update_args._Fields>, java.io.Serializable, Cloneable, Comparable<update_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("update_args");
+ 
+     private static final org.apache.thrift.protocol.TField WRITER_FIELD_DESC = new org.apache.thrift.protocol.TField("writer", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -85493,7 +90311,7 @@ import org.slf4j.LoggerFactory;
+         this.writer = other.writer;
+       }
+       if (other.isSetCells()) {
+-        Map<ByteBuffer,List<ColumnUpdate>> __this__cells = new HashMap<ByteBuffer,List<ColumnUpdate>>();
++        Map<ByteBuffer,List<ColumnUpdate>> __this__cells = new HashMap<ByteBuffer,List<ColumnUpdate>>(other.cells.size());
+         for (Map.Entry<ByteBuffer, List<ColumnUpdate>> other_element : other.cells.entrySet()) {
+ 
+           ByteBuffer other_element_key = other_element.getKey();
+@@ -85502,7 +90320,7 @@ import org.slf4j.LoggerFactory;
+           ByteBuffer __this__cells_copy_key = org.apache.thrift.TBaseHelper.copyBinary(other_element_key);
+ ;
+ 
+-          List<ColumnUpdate> __this__cells_copy_value = new ArrayList<ColumnUpdate>();
++          List<ColumnUpdate> __this__cells_copy_value = new ArrayList<ColumnUpdate>(other_element_value.size());
+           for (ColumnUpdate other_element_value_element : other_element_value) {
+             __this__cells_copy_value.add(new ColumnUpdate(other_element_value_element));
+           }
+@@ -85669,30 +90487,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(update_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      update_args typedOther = (update_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetWriter()).compareTo(typedOther.isSetWriter());
++      lastComparison = Boolean.valueOf(isSetWriter()).compareTo(other.isSetWriter());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetWriter()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.writer, typedOther.writer);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.writer, other.writer);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetCells()).compareTo(typedOther.isSetCells());
++      lastComparison = Boolean.valueOf(isSetCells()).compareTo(other.isSetCells());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetCells()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cells, typedOther.cells);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cells, other.cells);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -85790,15 +90608,15 @@ import org.slf4j.LoggerFactory;
+                   struct.cells = new HashMap<ByteBuffer,List<ColumnUpdate>>(2*_map450.size);
+                   for (int _i451 = 0; _i451 < _map450.size; ++_i451)
+                   {
+-                    ByteBuffer _key452; // required
+-                    List<ColumnUpdate> _val453; // required
++                    ByteBuffer _key452;
++                    List<ColumnUpdate> _val453;
+                     _key452 = iprot.readBinary();
+                     {
+                       org.apache.thrift.protocol.TList _list454 = iprot.readListBegin();
+                       _val453 = new ArrayList<ColumnUpdate>(_list454.size);
+                       for (int _i455 = 0; _i455 < _list454.size; ++_i455)
+                       {
+-                        ColumnUpdate _elem456; // required
++                        ColumnUpdate _elem456;
+                         _elem456 = new ColumnUpdate();
+                         _elem456.read(iprot);
+                         _val453.add(_elem456);
+@@ -85914,15 +90732,15 @@ import org.slf4j.LoggerFactory;
+             struct.cells = new HashMap<ByteBuffer,List<ColumnUpdate>>(2*_map461.size);
+             for (int _i462 = 0; _i462 < _map461.size; ++_i462)
+             {
+-              ByteBuffer _key463; // required
+-              List<ColumnUpdate> _val464; // required
++              ByteBuffer _key463;
++              List<ColumnUpdate> _val464;
+               _key463 = iprot.readBinary();
+               {
+                 org.apache.thrift.protocol.TList _list465 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+                 _val464 = new ArrayList<ColumnUpdate>(_list465.size);
+                 for (int _i466 = 0; _i466 < _list465.size; ++_i466)
+                 {
+-                  ColumnUpdate _elem467; // required
++                  ColumnUpdate _elem467;
+                   _elem467 = new ColumnUpdate();
+                   _elem467.read(iprot);
+                   _val464.add(_elem467);
+@@ -85938,7 +90756,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class flush_args implements org.apache.thrift.TBase<flush_args, flush_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class flush_args implements org.apache.thrift.TBase<flush_args, flush_args._Fields>, java.io.Serializable, Cloneable, Comparable<flush_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("flush_args");
+ 
+     private static final org.apache.thrift.protocol.TField WRITER_FIELD_DESC = new org.apache.thrift.protocol.TField("writer", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -86136,20 +90954,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(flush_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      flush_args typedOther = (flush_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetWriter()).compareTo(typedOther.isSetWriter());
++      lastComparison = Boolean.valueOf(isSetWriter()).compareTo(other.isSetWriter());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetWriter()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.writer, typedOther.writer);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.writer, other.writer);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -86292,7 +91110,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class flush_result implements org.apache.thrift.TBase<flush_result, flush_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class flush_result implements org.apache.thrift.TBase<flush_result, flush_result._Fields>, java.io.Serializable, Cloneable, Comparable<flush_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("flush_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -86549,30 +91367,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(flush_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      flush_result typedOther = (flush_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -86750,7 +91568,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class closeWriter_args implements org.apache.thrift.TBase<closeWriter_args, closeWriter_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class closeWriter_args implements org.apache.thrift.TBase<closeWriter_args, closeWriter_args._Fields>, java.io.Serializable, Cloneable, Comparable<closeWriter_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("closeWriter_args");
+ 
+     private static final org.apache.thrift.protocol.TField WRITER_FIELD_DESC = new org.apache.thrift.protocol.TField("writer", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -86948,20 +91766,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(closeWriter_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      closeWriter_args typedOther = (closeWriter_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetWriter()).compareTo(typedOther.isSetWriter());
++      lastComparison = Boolean.valueOf(isSetWriter()).compareTo(other.isSetWriter());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetWriter()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.writer, typedOther.writer);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.writer, other.writer);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -87104,7 +91922,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class closeWriter_result implements org.apache.thrift.TBase<closeWriter_result, closeWriter_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class closeWriter_result implements org.apache.thrift.TBase<closeWriter_result, closeWriter_result._Fields>, java.io.Serializable, Cloneable, Comparable<closeWriter_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("closeWriter_result");
+ 
+     private static final org.apache.thrift.protocol.TField OUCH1_FIELD_DESC = new org.apache.thrift.protocol.TField("ouch1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -87361,30 +92179,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(closeWriter_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      closeWriter_result typedOther = (closeWriter_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -87562,7 +92380,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class updateRowConditionally_args implements org.apache.thrift.TBase<updateRowConditionally_args, updateRowConditionally_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class updateRowConditionally_args implements org.apache.thrift.TBase<updateRowConditionally_args, updateRowConditionally_args._Fields>, java.io.Serializable, Cloneable, Comparable<updateRowConditionally_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("updateRowConditionally_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -87959,50 +92777,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(updateRowConditionally_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      updateRowConditionally_args typedOther = (updateRowConditionally_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetRow()).compareTo(typedOther.isSetRow());
++      lastComparison = Boolean.valueOf(isSetRow()).compareTo(other.isSetRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.row, typedOther.row);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.row, other.row);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetUpdates()).compareTo(typedOther.isSetUpdates());
++      lastComparison = Boolean.valueOf(isSetUpdates()).compareTo(other.isSetUpdates());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetUpdates()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.updates, typedOther.updates);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.updates, other.updates);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -88243,7 +93061,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class updateRowConditionally_result implements org.apache.thrift.TBase<updateRowConditionally_result, updateRowConditionally_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class updateRowConditionally_result implements org.apache.thrift.TBase<updateRowConditionally_result, updateRowConditionally_result._Fields>, java.io.Serializable, Cloneable, Comparable<updateRowConditionally_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("updateRowConditionally_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.I32, (short)0);
+@@ -88634,50 +93452,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(updateRowConditionally_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      updateRowConditionally_result typedOther = (updateRowConditionally_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -88919,7 +93737,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class createConditionalWriter_args implements org.apache.thrift.TBase<createConditionalWriter_args, createConditionalWriter_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class createConditionalWriter_args implements org.apache.thrift.TBase<createConditionalWriter_args, createConditionalWriter_args._Fields>, java.io.Serializable, Cloneable, Comparable<createConditionalWriter_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("createConditionalWriter_args");
+ 
+     private static final org.apache.thrift.protocol.TField LOGIN_FIELD_DESC = new org.apache.thrift.protocol.TField("login", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -89246,40 +94064,40 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(createConditionalWriter_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      createConditionalWriter_args typedOther = (createConditionalWriter_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(typedOther.isSetLogin());
++      lastComparison = Boolean.valueOf(isSetLogin()).compareTo(other.isSetLogin());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetLogin()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, typedOther.login);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.login, other.login);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(typedOther.isSetTableName());
++      lastComparison = Boolean.valueOf(isSetTableName()).compareTo(other.isSetTableName());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTableName()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, typedOther.tableName);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableName, other.tableName);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOptions()).compareTo(typedOther.isSetOptions());
++      lastComparison = Boolean.valueOf(isSetOptions()).compareTo(other.isSetOptions());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOptions()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.options, typedOther.options);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.options, other.options);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -89489,7 +94307,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class createConditionalWriter_result implements org.apache.thrift.TBase<createConditionalWriter_result, createConditionalWriter_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class createConditionalWriter_result implements org.apache.thrift.TBase<createConditionalWriter_result, createConditionalWriter_result._Fields>, java.io.Serializable, Cloneable, Comparable<createConditionalWriter_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("createConditionalWriter_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRING, (short)0);
+@@ -89864,50 +94682,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(createConditionalWriter_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      createConditionalWriter_result typedOther = (createConditionalWriter_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -90149,7 +94967,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class updateRowsConditionally_args implements org.apache.thrift.TBase<updateRowsConditionally_args, updateRowsConditionally_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class updateRowsConditionally_args implements org.apache.thrift.TBase<updateRowsConditionally_args, updateRowsConditionally_args._Fields>, java.io.Serializable, Cloneable, Comparable<updateRowsConditionally_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("updateRowsConditionally_args");
+ 
+     private static final org.apache.thrift.protocol.TField CONDITIONAL_WRITER_FIELD_DESC = new org.apache.thrift.protocol.TField("conditionalWriter", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -90259,7 +95077,7 @@ import org.slf4j.LoggerFactory;
+         this.conditionalWriter = other.conditionalWriter;
+       }
+       if (other.isSetUpdates()) {
+-        Map<ByteBuffer,ConditionalUpdates> __this__updates = new HashMap<ByteBuffer,ConditionalUpdates>();
++        Map<ByteBuffer,ConditionalUpdates> __this__updates = new HashMap<ByteBuffer,ConditionalUpdates>(other.updates.size());
+         for (Map.Entry<ByteBuffer, ConditionalUpdates> other_element : other.updates.entrySet()) {
+ 
+           ByteBuffer other_element_key = other_element.getKey();
+@@ -90432,30 +95250,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(updateRowsConditionally_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      updateRowsConditionally_args typedOther = (updateRowsConditionally_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetConditionalWriter()).compareTo(typedOther.isSetConditionalWriter());
++      lastComparison = Boolean.valueOf(isSetConditionalWriter()).compareTo(other.isSetConditionalWriter());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetConditionalWriter()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.conditionalWriter, typedOther.conditionalWriter);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.conditionalWriter, other.conditionalWriter);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetUpdates()).compareTo(typedOther.isSetUpdates());
++      lastComparison = Boolean.valueOf(isSetUpdates()).compareTo(other.isSetUpdates());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetUpdates()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.updates, typedOther.updates);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.updates, other.updates);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -90553,8 +95371,8 @@ import org.slf4j.LoggerFactory;
+                   struct.updates = new HashMap<ByteBuffer,ConditionalUpdates>(2*_map468.size);
+                   for (int _i469 = 0; _i469 < _map468.size; ++_i469)
+                   {
+-                    ByteBuffer _key470; // required
+-                    ConditionalUpdates _val471; // required
++                    ByteBuffer _key470;
++                    ConditionalUpdates _val471;
+                     _key470 = iprot.readBinary();
+                     _val471 = new ConditionalUpdates();
+                     _val471.read(iprot);
+@@ -90654,8 +95472,8 @@ import org.slf4j.LoggerFactory;
+             struct.updates = new HashMap<ByteBuffer,ConditionalUpdates>(2*_map474.size);
+             for (int _i475 = 0; _i475 < _map474.size; ++_i475)
+             {
+-              ByteBuffer _key476; // required
+-              ConditionalUpdates _val477; // required
++              ByteBuffer _key476;
++              ConditionalUpdates _val477;
+               _key476 = iprot.readBinary();
+               _val477 = new ConditionalUpdates();
+               _val477.read(iprot);
+@@ -90669,7 +95487,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class updateRowsConditionally_result implements org.apache.thrift.TBase<updateRowsConditionally_result, updateRowsConditionally_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class updateRowsConditionally_result implements org.apache.thrift.TBase<updateRowsConditionally_result, updateRowsConditionally_result._Fields>, java.io.Serializable, Cloneable, Comparable<updateRowsConditionally_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("updateRowsConditionally_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.MAP, (short)0);
+@@ -90794,7 +95612,7 @@ import org.slf4j.LoggerFactory;
+      */
+     public updateRowsConditionally_result(updateRowsConditionally_result other) {
+       if (other.isSetSuccess()) {
+-        Map<ByteBuffer,ConditionalStatus> __this__success = new HashMap<ByteBuffer,ConditionalStatus>();
++        Map<ByteBuffer,ConditionalStatus> __this__success = new HashMap<ByteBuffer,ConditionalStatus>(other.success.size());
+         for (Map.Entry<ByteBuffer, ConditionalStatus> other_element : other.success.entrySet()) {
+ 
+           ByteBuffer other_element_key = other_element.getKey();
+@@ -91070,50 +95888,50 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(updateRowsConditionally_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      updateRowsConditionally_result typedOther = (updateRowsConditionally_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(typedOther.isSetOuch1());
++      lastComparison = Boolean.valueOf(isSetOuch1()).compareTo(other.isSetOuch1());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch1()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, typedOther.ouch1);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch1, other.ouch1);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(typedOther.isSetOuch2());
++      lastComparison = Boolean.valueOf(isSetOuch2()).compareTo(other.isSetOuch2());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch2()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, typedOther.ouch2);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch2, other.ouch2);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(typedOther.isSetOuch3());
++      lastComparison = Boolean.valueOf(isSetOuch3()).compareTo(other.isSetOuch3());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetOuch3()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, typedOther.ouch3);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ouch3, other.ouch3);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -91219,8 +96037,8 @@ import org.slf4j.LoggerFactory;
+                   struct.success = new HashMap<ByteBuffer,ConditionalStatus>(2*_map478.size);
+                   for (int _i479 = 0; _i479 < _map478.size; ++_i479)
+                   {
+-                    ByteBuffer _key480; // required
+-                    ConditionalStatus _val481; // required
++                    ByteBuffer _key480;
++                    ConditionalStatus _val481;
+                     _key480 = iprot.readBinary();
+                     _val481 = ConditionalStatus.findByValue(iprot.readI32());
+                     struct.success.put(_key480, _val481);
+@@ -91364,8 +96182,8 @@ import org.slf4j.LoggerFactory;
+             struct.success = new HashMap<ByteBuffer,ConditionalStatus>(2*_map484.size);
+             for (int _i485 = 0; _i485 < _map484.size; ++_i485)
+             {
+-              ByteBuffer _key486; // required
+-              ConditionalStatus _val487; // required
++              ByteBuffer _key486;
++              ConditionalStatus _val487;
+               _key486 = iprot.readBinary();
+               _val487 = ConditionalStatus.findByValue(iprot.readI32());
+               struct.success.put(_key486, _val487);
+@@ -91393,7 +96211,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class closeConditionalWriter_args implements org.apache.thrift.TBase<closeConditionalWriter_args, closeConditionalWriter_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class closeConditionalWriter_args implements org.apache.thrift.TBase<closeConditionalWriter_args, closeConditionalWriter_args._Fields>, java.io.Serializable, Cloneable, Comparable<closeConditionalWriter_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("closeConditionalWriter_args");
+ 
+     private static final org.apache.thrift.protocol.TField CONDITIONAL_WRITER_FIELD_DESC = new org.apache.thrift.protocol.TField("conditionalWriter", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -91591,20 +96409,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(closeConditionalWriter_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      closeConditionalWriter_args typedOther = (closeConditionalWriter_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetConditionalWriter()).compareTo(typedOther.isSetConditionalWriter());
++      lastComparison = Boolean.valueOf(isSetConditionalWriter()).compareTo(other.isSetConditionalWriter());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetConditionalWriter()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.conditionalWriter, typedOther.conditionalWriter);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.conditionalWriter, other.conditionalWriter);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -91747,7 +96565,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class closeConditionalWriter_result implements org.apache.thrift.TBase<closeConditionalWriter_result, closeConditionalWriter_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class closeConditionalWriter_result implements org.apache.thrift.TBase<closeConditionalWriter_result, closeConditionalWriter_result._Fields>, java.io.Serializable, Cloneable, Comparable<closeConditionalWriter_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("closeConditionalWriter_result");
+ 
+ 
+@@ -91880,13 +96698,13 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(closeConditionalWriter_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      closeConditionalWriter_result typedOther = (closeConditionalWriter_result)other;
+ 
+       return 0;
+     }
+@@ -91993,7 +96811,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getRowRange_args implements org.apache.thrift.TBase<getRowRange_args, getRowRange_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getRowRange_args implements org.apache.thrift.TBase<getRowRange_args, getRowRange_args._Fields>, java.io.Serializable, Cloneable, Comparable<getRowRange_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getRowRange_args");
+ 
+     private static final org.apache.thrift.protocol.TField ROW_FIELD_DESC = new org.apache.thrift.protocol.TField("row", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -92202,20 +97020,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getRowRange_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getRowRange_args typedOther = (getRowRange_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetRow()).compareTo(typedOther.isSetRow());
++      lastComparison = Boolean.valueOf(isSetRow()).compareTo(other.isSetRow());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetRow()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.row, typedOther.row);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.row, other.row);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -92358,7 +97176,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getRowRange_result implements org.apache.thrift.TBase<getRowRange_result, getRowRange_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getRowRange_result implements org.apache.thrift.TBase<getRowRange_result, getRowRange_result._Fields>, java.io.Serializable, Cloneable, Comparable<getRowRange_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getRowRange_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRUCT, (short)0);
+@@ -92556,20 +97374,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getRowRange_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getRowRange_result typedOther = (getRowRange_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -92717,7 +97535,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getFollowing_args implements org.apache.thrift.TBase<getFollowing_args, getFollowing_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class getFollowing_args implements org.apache.thrift.TBase<getFollowing_args, getFollowing_args._Fields>, java.io.Serializable, Cloneable, Comparable<getFollowing_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getFollowing_args");
+ 
+     private static final org.apache.thrift.protocol.TField KEY_FIELD_DESC = new org.apache.thrift.protocol.TField("key", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -92990,30 +97808,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getFollowing_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getFollowing_args typedOther = (getFollowing_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetKey()).compareTo(typedOther.isSetKey());
++      lastComparison = Boolean.valueOf(isSetKey()).compareTo(other.isSetKey());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetKey()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.key, typedOther.key);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.key, other.key);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetPart()).compareTo(typedOther.isSetPart());
++      lastComparison = Boolean.valueOf(isSetPart()).compareTo(other.isSetPart());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetPart()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.part, typedOther.part);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.part, other.part);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -93192,7 +98010,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class getFollowing_result implements org.apache.thrift.TBase<getFollowing_result, getFollowing_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class getFollowing_result implements org.apache.thrift.TBase<getFollowing_result, getFollowing_result._Fields>, java.io.Serializable, Cloneable, Comparable<getFollowing_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getFollowing_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRUCT, (short)0);
+@@ -93390,20 +98208,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(getFollowing_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      getFollowing_result typedOther = (getFollowing_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/AccumuloSecurityException.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/AccumuloSecurityException.java
+index f92ea06..55e074b 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/AccumuloSecurityException.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/AccumuloSecurityException.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class AccumuloSecurityException extends TException implements org.apache.thrift.TBase<AccumuloSecurityException, AccumuloSecurityException._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class AccumuloSecurityException extends TException implements org.apache.thrift.TBase<AccumuloSecurityException, AccumuloSecurityException._Fields>, java.io.Serializable, Cloneable, Comparable<AccumuloSecurityException> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("AccumuloSecurityException");
+ 
+   private static final org.apache.thrift.protocol.TField MSG_FIELD_DESC = new org.apache.thrift.protocol.TField("msg", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -244,20 +246,20 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(AccumuloSecurityException other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    AccumuloSecurityException typedOther = (AccumuloSecurityException)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetMsg()).compareTo(typedOther.isSetMsg());
++    lastComparison = Boolean.valueOf(isSetMsg()).compareTo(other.isSetMsg());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMsg()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.msg, typedOther.msg);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.msg, other.msg);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ActiveCompaction.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ActiveCompaction.java
+index cc53871..05de413 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ActiveCompaction.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ActiveCompaction.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class ActiveCompaction implements org.apache.thrift.TBase<ActiveCompaction, ActiveCompaction._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class ActiveCompaction implements org.apache.thrift.TBase<ActiveCompaction, ActiveCompaction._Fields>, java.io.Serializable, Cloneable, Comparable<ActiveCompaction> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ActiveCompaction");
+ 
+   private static final org.apache.thrift.protocol.TField EXTENT_FIELD_DESC = new org.apache.thrift.protocol.TField("extent", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -253,10 +255,7 @@ import org.slf4j.LoggerFactory;
+     }
+     this.age = other.age;
+     if (other.isSetInputFiles()) {
+-      List<String> __this__inputFiles = new ArrayList<String>();
+-      for (String other_element : other.inputFiles) {
+-        __this__inputFiles.add(other_element);
+-      }
++      List<String> __this__inputFiles = new ArrayList<String>(other.inputFiles);
+       this.inputFiles = __this__inputFiles;
+     }
+     if (other.isSetOutputFile()) {
+@@ -274,7 +273,7 @@ import org.slf4j.LoggerFactory;
+     this.entriesRead = other.entriesRead;
+     this.entriesWritten = other.entriesWritten;
+     if (other.isSetIterators()) {
+-      List<IteratorSetting> __this__iterators = new ArrayList<IteratorSetting>();
++      List<IteratorSetting> __this__iterators = new ArrayList<IteratorSetting>(other.iterators.size());
+       for (IteratorSetting other_element : other.iterators) {
+         __this__iterators.add(new IteratorSetting(other_element));
+       }
+@@ -849,110 +848,110 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(ActiveCompaction other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    ActiveCompaction typedOther = (ActiveCompaction)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetExtent()).compareTo(typedOther.isSetExtent());
++    lastComparison = Boolean.valueOf(isSetExtent()).compareTo(other.isSetExtent());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetExtent()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, typedOther.extent);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, other.extent);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetAge()).compareTo(typedOther.isSetAge());
++    lastComparison = Boolean.valueOf(isSetAge()).compareTo(other.isSetAge());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetAge()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.age, typedOther.age);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.age, other.age);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetInputFiles()).compareTo(typedOther.isSetInputFiles());
++    lastComparison = Boolean.valueOf(isSetInputFiles()).compareTo(other.isSetInputFiles());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetInputFiles()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.inputFiles, typedOther.inputFiles);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.inputFiles, other.inputFiles);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetOutputFile()).compareTo(typedOther.isSetOutputFile());
++    lastComparison = Boolean.valueOf(isSetOutputFile()).compareTo(other.isSetOutputFile());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetOutputFile()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.outputFile, typedOther.outputFile);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.outputFile, other.outputFile);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetType()).compareTo(typedOther.isSetType());
++    lastComparison = Boolean.valueOf(isSetType()).compareTo(other.isSetType());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetType()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.type, typedOther.type);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.type, other.type);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetReason()).compareTo(typedOther.isSetReason());
++    lastComparison = Boolean.valueOf(isSetReason()).compareTo(other.isSetReason());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetReason()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.reason, typedOther.reason);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.reason, other.reason);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetLocalityGroup()).compareTo(typedOther.isSetLocalityGroup());
++    lastComparison = Boolean.valueOf(isSetLocalityGroup()).compareTo(other.isSetLocalityGroup());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetLocalityGroup()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.localityGroup, typedOther.localityGroup);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.localityGroup, other.localityGroup);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetEntriesRead()).compareTo(typedOther.isSetEntriesRead());
++    lastComparison = Boolean.valueOf(isSetEntriesRead()).compareTo(other.isSetEntriesRead());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetEntriesRead()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.entriesRead, typedOther.entriesRead);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.entriesRead, other.entriesRead);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetEntriesWritten()).compareTo(typedOther.isSetEntriesWritten());
++    lastComparison = Boolean.valueOf(isSetEntriesWritten()).compareTo(other.isSetEntriesWritten());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetEntriesWritten()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.entriesWritten, typedOther.entriesWritten);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.entriesWritten, other.entriesWritten);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetIterators()).compareTo(typedOther.isSetIterators());
++    lastComparison = Boolean.valueOf(isSetIterators()).compareTo(other.isSetIterators());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIterators()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterators, typedOther.iterators);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterators, other.iterators);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -1116,7 +1115,7 @@ import org.slf4j.LoggerFactory;
+                 struct.inputFiles = new ArrayList<String>(_list138.size);
+                 for (int _i139 = 0; _i139 < _list138.size; ++_i139)
+                 {
+-                  String _elem140; // required
++                  String _elem140;
+                   _elem140 = iprot.readString();
+                   struct.inputFiles.add(_elem140);
+                 }
+@@ -1182,7 +1181,7 @@ import org.slf4j.LoggerFactory;
+                 struct.iterators = new ArrayList<IteratorSetting>(_list141.size);
+                 for (int _i142 = 0; _i142 < _list141.size; ++_i142)
+                 {
+-                  IteratorSetting _elem143; // required
++                  IteratorSetting _elem143;
+                   _elem143 = new IteratorSetting();
+                   _elem143.read(iprot);
+                   struct.iterators.add(_elem143);
+@@ -1379,7 +1378,7 @@ import org.slf4j.LoggerFactory;
+           struct.inputFiles = new ArrayList<String>(_list148.size);
+           for (int _i149 = 0; _i149 < _list148.size; ++_i149)
+           {
+-            String _elem150; // required
++            String _elem150;
+             _elem150 = iprot.readString();
+             struct.inputFiles.add(_elem150);
+           }
+@@ -1416,7 +1415,7 @@ import org.slf4j.LoggerFactory;
+           struct.iterators = new ArrayList<IteratorSetting>(_list151.size);
+           for (int _i152 = 0; _i152 < _list151.size; ++_i152)
+           {
+-            IteratorSetting _elem153; // required
++            IteratorSetting _elem153;
+             _elem153 = new IteratorSetting();
+             _elem153.read(iprot);
+             struct.iterators.add(_elem153);
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ActiveScan.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ActiveScan.java
+index 48adb7c..a34e57f 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ActiveScan.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ActiveScan.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class ActiveScan implements org.apache.thrift.TBase<ActiveScan, ActiveScan._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class ActiveScan implements org.apache.thrift.TBase<ActiveScan, ActiveScan._Fields>, java.io.Serializable, Cloneable, Comparable<ActiveScan> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ActiveScan");
+ 
+   private static final org.apache.thrift.protocol.TField CLIENT_FIELD_DESC = new org.apache.thrift.protocol.TField("client", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -277,26 +279,21 @@ import org.slf4j.LoggerFactory;
+       this.extent = new KeyExtent(other.extent);
+     }
+     if (other.isSetColumns()) {
+-      List<Column> __this__columns = new ArrayList<Column>();
++      List<Column> __this__columns = new ArrayList<Column>(other.columns.size());
+       for (Column other_element : other.columns) {
+         __this__columns.add(new Column(other_element));
+       }
+       this.columns = __this__columns;
+     }
+     if (other.isSetIterators()) {
+-      List<IteratorSetting> __this__iterators = new ArrayList<IteratorSetting>();
++      List<IteratorSetting> __this__iterators = new ArrayList<IteratorSetting>(other.iterators.size());
+       for (IteratorSetting other_element : other.iterators) {
+         __this__iterators.add(new IteratorSetting(other_element));
+       }
+       this.iterators = __this__iterators;
+     }
+     if (other.isSetAuthorizations()) {
+-      List<ByteBuffer> __this__authorizations = new ArrayList<ByteBuffer>();
+-      for (ByteBuffer other_element : other.authorizations) {
+-        ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-        __this__authorizations.add(temp_binary_element);
+-      }
++      List<ByteBuffer> __this__authorizations = new ArrayList<ByteBuffer>(other.authorizations);
+       this.authorizations = __this__authorizations;
+     }
+   }
+@@ -930,120 +927,120 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(ActiveScan other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    ActiveScan typedOther = (ActiveScan)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetClient()).compareTo(typedOther.isSetClient());
++    lastComparison = Boolean.valueOf(isSetClient()).compareTo(other.isSetClient());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetClient()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.client, typedOther.client);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.client, other.client);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetUser()).compareTo(typedOther.isSetUser());
++    lastComparison = Boolean.valueOf(isSetUser()).compareTo(other.isSetUser());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetUser()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, typedOther.user);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.user, other.user);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetTable()).compareTo(typedOther.isSetTable());
++    lastComparison = Boolean.valueOf(isSetTable()).compareTo(other.isSetTable());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTable()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.table, typedOther.table);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.table, other.table);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetAge()).compareTo(typedOther.isSetAge());
++    lastComparison = Boolean.valueOf(isSetAge()).compareTo(other.isSetAge());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetAge()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.age, typedOther.age);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.age, other.age);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetIdleTime()).compareTo(typedOther.isSetIdleTime());
++    lastComparison = Boolean.valueOf(isSetIdleTime()).compareTo(other.isSetIdleTime());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIdleTime()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.idleTime, typedOther.idleTime);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.idleTime, other.idleTime);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetType()).compareTo(typedOther.isSetType());
++    lastComparison = Boolean.valueOf(isSetType()).compareTo(other.isSetType());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetType()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.type, typedOther.type);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.type, other.type);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetState()).compareTo(typedOther.isSetState());
++    lastComparison = Boolean.valueOf(isSetState()).compareTo(other.isSetState());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetState()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.state, typedOther.state);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.state, other.state);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetExtent()).compareTo(typedOther.isSetExtent());
++    lastComparison = Boolean.valueOf(isSetExtent()).compareTo(other.isSetExtent());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetExtent()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, typedOther.extent);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.extent, other.extent);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColumns()).compareTo(typedOther.isSetColumns());
++    lastComparison = Boolean.valueOf(isSetColumns()).compareTo(other.isSetColumns());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColumns()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columns, typedOther.columns);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columns, other.columns);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetIterators()).compareTo(typedOther.isSetIterators());
++    lastComparison = Boolean.valueOf(isSetIterators()).compareTo(other.isSetIterators());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIterators()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterators, typedOther.iterators);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterators, other.iterators);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(typedOther.isSetAuthorizations());
++    lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(other.isSetAuthorizations());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetAuthorizations()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, typedOther.authorizations);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, other.authorizations);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -1267,7 +1264,7 @@ import org.slf4j.LoggerFactory;
+                 struct.columns = new ArrayList<Column>(_list114.size);
+                 for (int _i115 = 0; _i115 < _list114.size; ++_i115)
+                 {
+-                  Column _elem116; // required
++                  Column _elem116;
+                   _elem116 = new Column();
+                   _elem116.read(iprot);
+                   struct.columns.add(_elem116);
+@@ -1286,7 +1283,7 @@ import org.slf4j.LoggerFactory;
+                 struct.iterators = new ArrayList<IteratorSetting>(_list117.size);
+                 for (int _i118 = 0; _i118 < _list117.size; ++_i118)
+                 {
+-                  IteratorSetting _elem119; // required
++                  IteratorSetting _elem119;
+                   _elem119 = new IteratorSetting();
+                   _elem119.read(iprot);
+                   struct.iterators.add(_elem119);
+@@ -1305,7 +1302,7 @@ import org.slf4j.LoggerFactory;
+                 struct.authorizations = new ArrayList<ByteBuffer>(_list120.size);
+                 for (int _i121 = 0; _i121 < _list120.size; ++_i121)
+                 {
+-                  ByteBuffer _elem122; // required
++                  ByteBuffer _elem122;
+                   _elem122 = iprot.readBinary();
+                   struct.authorizations.add(_elem122);
+                 }
+@@ -1551,7 +1548,7 @@ import org.slf4j.LoggerFactory;
+           struct.columns = new ArrayList<Column>(_list129.size);
+           for (int _i130 = 0; _i130 < _list129.size; ++_i130)
+           {
+-            Column _elem131; // required
++            Column _elem131;
+             _elem131 = new Column();
+             _elem131.read(iprot);
+             struct.columns.add(_elem131);
+@@ -1565,7 +1562,7 @@ import org.slf4j.LoggerFactory;
+           struct.iterators = new ArrayList<IteratorSetting>(_list132.size);
+           for (int _i133 = 0; _i133 < _list132.size; ++_i133)
+           {
+-            IteratorSetting _elem134; // required
++            IteratorSetting _elem134;
+             _elem134 = new IteratorSetting();
+             _elem134.read(iprot);
+             struct.iterators.add(_elem134);
+@@ -1579,7 +1576,7 @@ import org.slf4j.LoggerFactory;
+           struct.authorizations = new ArrayList<ByteBuffer>(_list135.size);
+           for (int _i136 = 0; _i136 < _list135.size; ++_i136)
+           {
+-            ByteBuffer _elem137; // required
++            ByteBuffer _elem137;
+             _elem137 = iprot.readBinary();
+             struct.authorizations.add(_elem137);
+           }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/BatchScanOptions.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/BatchScanOptions.java
+index d09a290..e749ac4 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/BatchScanOptions.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/BatchScanOptions.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class BatchScanOptions implements org.apache.thrift.TBase<BatchScanOptions, BatchScanOptions._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class BatchScanOptions implements org.apache.thrift.TBase<BatchScanOptions, BatchScanOptions._Fields>, java.io.Serializable, Cloneable, Comparable<BatchScanOptions> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("BatchScanOptions");
+ 
+   private static final org.apache.thrift.protocol.TField AUTHORIZATIONS_FIELD_DESC = new org.apache.thrift.protocol.TField("authorizations", org.apache.thrift.protocol.TType.SET, (short)1);
+@@ -171,30 +173,25 @@ import org.slf4j.LoggerFactory;
+   public BatchScanOptions(BatchScanOptions other) {
+     __isset_bitfield = other.__isset_bitfield;
+     if (other.isSetAuthorizations()) {
+-      Set<ByteBuffer> __this__authorizations = new HashSet<ByteBuffer>();
+-      for (ByteBuffer other_element : other.authorizations) {
+-        ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-        __this__authorizations.add(temp_binary_element);
+-      }
++      Set<ByteBuffer> __this__authorizations = new HashSet<ByteBuffer>(other.authorizations);
+       this.authorizations = __this__authorizations;
+     }
+     if (other.isSetRanges()) {
+-      List<Range> __this__ranges = new ArrayList<Range>();
++      List<Range> __this__ranges = new ArrayList<Range>(other.ranges.size());
+       for (Range other_element : other.ranges) {
+         __this__ranges.add(new Range(other_element));
+       }
+       this.ranges = __this__ranges;
+     }
+     if (other.isSetColumns()) {
+-      List<ScanColumn> __this__columns = new ArrayList<ScanColumn>();
++      List<ScanColumn> __this__columns = new ArrayList<ScanColumn>(other.columns.size());
+       for (ScanColumn other_element : other.columns) {
+         __this__columns.add(new ScanColumn(other_element));
+       }
+       this.columns = __this__columns;
+     }
+     if (other.isSetIterators()) {
+-      List<IteratorSetting> __this__iterators = new ArrayList<IteratorSetting>();
++      List<IteratorSetting> __this__iterators = new ArrayList<IteratorSetting>(other.iterators.size());
+       for (IteratorSetting other_element : other.iterators) {
+         __this__iterators.add(new IteratorSetting(other_element));
+       }
+@@ -549,60 +546,60 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(BatchScanOptions other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    BatchScanOptions typedOther = (BatchScanOptions)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(typedOther.isSetAuthorizations());
++    lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(other.isSetAuthorizations());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetAuthorizations()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, typedOther.authorizations);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, other.authorizations);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetRanges()).compareTo(typedOther.isSetRanges());
++    lastComparison = Boolean.valueOf(isSetRanges()).compareTo(other.isSetRanges());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetRanges()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ranges, typedOther.ranges);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ranges, other.ranges);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColumns()).compareTo(typedOther.isSetColumns());
++    lastComparison = Boolean.valueOf(isSetColumns()).compareTo(other.isSetColumns());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColumns()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columns, typedOther.columns);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columns, other.columns);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetIterators()).compareTo(typedOther.isSetIterators());
++    lastComparison = Boolean.valueOf(isSetIterators()).compareTo(other.isSetIterators());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIterators()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterators, typedOther.iterators);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterators, other.iterators);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetThreads()).compareTo(typedOther.isSetThreads());
++    lastComparison = Boolean.valueOf(isSetThreads()).compareTo(other.isSetThreads());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetThreads()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.threads, typedOther.threads);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.threads, other.threads);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -724,7 +721,7 @@ import org.slf4j.LoggerFactory;
+                 struct.authorizations = new HashSet<ByteBuffer>(2*_set50.size);
+                 for (int _i51 = 0; _i51 < _set50.size; ++_i51)
+                 {
+-                  ByteBuffer _elem52; // required
++                  ByteBuffer _elem52;
+                   _elem52 = iprot.readBinary();
+                   struct.authorizations.add(_elem52);
+                 }
+@@ -742,7 +739,7 @@ import org.slf4j.LoggerFactory;
+                 struct.ranges = new ArrayList<Range>(_list53.size);
+                 for (int _i54 = 0; _i54 < _list53.size; ++_i54)
+                 {
+-                  Range _elem55; // required
++                  Range _elem55;
+                   _elem55 = new Range();
+                   _elem55.read(iprot);
+                   struct.ranges.add(_elem55);
+@@ -761,7 +758,7 @@ import org.slf4j.LoggerFactory;
+                 struct.columns = new ArrayList<ScanColumn>(_list56.size);
+                 for (int _i57 = 0; _i57 < _list56.size; ++_i57)
+                 {
+-                  ScanColumn _elem58; // required
++                  ScanColumn _elem58;
+                   _elem58 = new ScanColumn();
+                   _elem58.read(iprot);
+                   struct.columns.add(_elem58);
+@@ -780,7 +777,7 @@ import org.slf4j.LoggerFactory;
+                 struct.iterators = new ArrayList<IteratorSetting>(_list59.size);
+                 for (int _i60 = 0; _i60 < _list59.size; ++_i60)
+                 {
+-                  IteratorSetting _elem61; // required
++                  IteratorSetting _elem61;
+                   _elem61 = new IteratorSetting();
+                   _elem61.read(iprot);
+                   struct.iterators.add(_elem61);
+@@ -961,7 +958,7 @@ import org.slf4j.LoggerFactory;
+           struct.authorizations = new HashSet<ByteBuffer>(2*_set70.size);
+           for (int _i71 = 0; _i71 < _set70.size; ++_i71)
+           {
+-            ByteBuffer _elem72; // required
++            ByteBuffer _elem72;
+             _elem72 = iprot.readBinary();
+             struct.authorizations.add(_elem72);
+           }
+@@ -974,7 +971,7 @@ import org.slf4j.LoggerFactory;
+           struct.ranges = new ArrayList<Range>(_list73.size);
+           for (int _i74 = 0; _i74 < _list73.size; ++_i74)
+           {
+-            Range _elem75; // required
++            Range _elem75;
+             _elem75 = new Range();
+             _elem75.read(iprot);
+             struct.ranges.add(_elem75);
+@@ -988,7 +985,7 @@ import org.slf4j.LoggerFactory;
+           struct.columns = new ArrayList<ScanColumn>(_list76.size);
+           for (int _i77 = 0; _i77 < _list76.size; ++_i77)
+           {
+-            ScanColumn _elem78; // required
++            ScanColumn _elem78;
+             _elem78 = new ScanColumn();
+             _elem78.read(iprot);
+             struct.columns.add(_elem78);
+@@ -1002,7 +999,7 @@ import org.slf4j.LoggerFactory;
+           struct.iterators = new ArrayList<IteratorSetting>(_list79.size);
+           for (int _i80 = 0; _i80 < _list79.size; ++_i80)
+           {
+-            IteratorSetting _elem81; // required
++            IteratorSetting _elem81;
+             _elem81 = new IteratorSetting();
+             _elem81.read(iprot);
+             struct.iterators.add(_elem81);
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/Column.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/Column.java
+index 7dfbaa5..3c20017 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/Column.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/Column.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class Column implements org.apache.thrift.TBase<Column, Column._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class Column implements org.apache.thrift.TBase<Column, Column._Fields>, java.io.Serializable, Cloneable, Comparable<Column> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Column");
+ 
+   private static final org.apache.thrift.protocol.TField COL_FAMILY_FIELD_DESC = new org.apache.thrift.protocol.TField("colFamily", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -395,40 +397,40 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(Column other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    Column typedOther = (Column)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetColFamily()).compareTo(typedOther.isSetColFamily());
++    lastComparison = Boolean.valueOf(isSetColFamily()).compareTo(other.isSetColFamily());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColFamily()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colFamily, typedOther.colFamily);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colFamily, other.colFamily);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColQualifier()).compareTo(typedOther.isSetColQualifier());
++    lastComparison = Boolean.valueOf(isSetColQualifier()).compareTo(other.isSetColQualifier());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColQualifier()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colQualifier, typedOther.colQualifier);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colQualifier, other.colQualifier);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColVisibility()).compareTo(typedOther.isSetColVisibility());
++    lastComparison = Boolean.valueOf(isSetColVisibility()).compareTo(other.isSetColVisibility());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColVisibility()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colVisibility, typedOther.colVisibility);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colVisibility, other.colVisibility);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ColumnUpdate.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ColumnUpdate.java
+index 523a8bd..a3b040e 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ColumnUpdate.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ColumnUpdate.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class ColumnUpdate implements org.apache.thrift.TBase<ColumnUpdate, ColumnUpdate._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class ColumnUpdate implements org.apache.thrift.TBase<ColumnUpdate, ColumnUpdate._Fields>, java.io.Serializable, Cloneable, Comparable<ColumnUpdate> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ColumnUpdate");
+ 
+   private static final org.apache.thrift.protocol.TField COL_FAMILY_FIELD_DESC = new org.apache.thrift.protocol.TField("colFamily", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -576,70 +578,70 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(ColumnUpdate other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    ColumnUpdate typedOther = (ColumnUpdate)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetColFamily()).compareTo(typedOther.isSetColFamily());
++    lastComparison = Boolean.valueOf(isSetColFamily()).compareTo(other.isSetColFamily());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColFamily()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colFamily, typedOther.colFamily);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colFamily, other.colFamily);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColQualifier()).compareTo(typedOther.isSetColQualifier());
++    lastComparison = Boolean.valueOf(isSetColQualifier()).compareTo(other.isSetColQualifier());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColQualifier()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colQualifier, typedOther.colQualifier);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colQualifier, other.colQualifier);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColVisibility()).compareTo(typedOther.isSetColVisibility());
++    lastComparison = Boolean.valueOf(isSetColVisibility()).compareTo(other.isSetColVisibility());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColVisibility()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colVisibility, typedOther.colVisibility);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colVisibility, other.colVisibility);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetTimestamp()).compareTo(typedOther.isSetTimestamp());
++    lastComparison = Boolean.valueOf(isSetTimestamp()).compareTo(other.isSetTimestamp());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTimestamp()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.timestamp, typedOther.timestamp);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.timestamp, other.timestamp);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetValue()).compareTo(typedOther.isSetValue());
++    lastComparison = Boolean.valueOf(isSetValue()).compareTo(other.isSetValue());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetValue()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, typedOther.value);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, other.value);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetDeleteCell()).compareTo(typedOther.isSetDeleteCell());
++    lastComparison = Boolean.valueOf(isSetDeleteCell()).compareTo(other.isSetDeleteCell());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetDeleteCell()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.deleteCell, typedOther.deleteCell);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.deleteCell, other.deleteCell);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/CompactionReason.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/CompactionReason.java
+index 3e08d68..36bc32a 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/CompactionReason.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/CompactionReason.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/CompactionType.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/CompactionType.java
+index 615720b..c0a5171 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/CompactionType.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/CompactionType.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/Condition.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/Condition.java
+index 6dec4b3..8dd28cf 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/Condition.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/Condition.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class Condition implements org.apache.thrift.TBase<Condition, Condition._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class Condition implements org.apache.thrift.TBase<Condition, Condition._Fields>, java.io.Serializable, Cloneable, Comparable<Condition> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Condition");
+ 
+   private static final org.apache.thrift.protocol.TField COLUMN_FIELD_DESC = new org.apache.thrift.protocol.TField("column", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -176,7 +178,7 @@ import org.slf4j.LoggerFactory;
+ ;
+     }
+     if (other.isSetIterators()) {
+-      List<IteratorSetting> __this__iterators = new ArrayList<IteratorSetting>();
++      List<IteratorSetting> __this__iterators = new ArrayList<IteratorSetting>(other.iterators.size());
+       for (IteratorSetting other_element : other.iterators) {
+         __this__iterators.add(new IteratorSetting(other_element));
+       }
+@@ -448,50 +450,50 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(Condition other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    Condition typedOther = (Condition)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetColumn()).compareTo(typedOther.isSetColumn());
++    lastComparison = Boolean.valueOf(isSetColumn()).compareTo(other.isSetColumn());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColumn()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.column, typedOther.column);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.column, other.column);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetTimestamp()).compareTo(typedOther.isSetTimestamp());
++    lastComparison = Boolean.valueOf(isSetTimestamp()).compareTo(other.isSetTimestamp());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTimestamp()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.timestamp, typedOther.timestamp);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.timestamp, other.timestamp);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetValue()).compareTo(typedOther.isSetValue());
++    lastComparison = Boolean.valueOf(isSetValue()).compareTo(other.isSetValue());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetValue()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, typedOther.value);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, other.value);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetIterators()).compareTo(typedOther.isSetIterators());
++    lastComparison = Boolean.valueOf(isSetIterators()).compareTo(other.isSetIterators());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIterators()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterators, typedOther.iterators);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterators, other.iterators);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -629,7 +631,7 @@ import org.slf4j.LoggerFactory;
+                 struct.iterators = new ArrayList<IteratorSetting>(_list82.size);
+                 for (int _i83 = 0; _i83 < _list82.size; ++_i83)
+                 {
+-                  IteratorSetting _elem84; // required
++                  IteratorSetting _elem84;
+                   _elem84 = new IteratorSetting();
+                   _elem84.read(iprot);
+                   struct.iterators.add(_elem84);
+@@ -761,7 +763,7 @@ import org.slf4j.LoggerFactory;
+           struct.iterators = new ArrayList<IteratorSetting>(_list87.size);
+           for (int _i88 = 0; _i88 < _list87.size; ++_i88)
+           {
+-            IteratorSetting _elem89; // required
++            IteratorSetting _elem89;
+             _elem89 = new IteratorSetting();
+             _elem89.read(iprot);
+             struct.iterators.add(_elem89);
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ConditionalStatus.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ConditionalStatus.java
+index 74e2d71..55f0e62 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ConditionalStatus.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ConditionalStatus.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ConditionalUpdates.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ConditionalUpdates.java
+index 13e88de..71806fe 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ConditionalUpdates.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ConditionalUpdates.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class ConditionalUpdates implements org.apache.thrift.TBase<ConditionalUpdates, ConditionalUpdates._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class ConditionalUpdates implements org.apache.thrift.TBase<ConditionalUpdates, ConditionalUpdates._Fields>, java.io.Serializable, Cloneable, Comparable<ConditionalUpdates> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ConditionalUpdates");
+ 
+   private static final org.apache.thrift.protocol.TField CONDITIONS_FIELD_DESC = new org.apache.thrift.protocol.TField("conditions", org.apache.thrift.protocol.TType.LIST, (short)2);
+@@ -153,14 +155,14 @@ import org.slf4j.LoggerFactory;
+    */
+   public ConditionalUpdates(ConditionalUpdates other) {
+     if (other.isSetConditions()) {
+-      List<Condition> __this__conditions = new ArrayList<Condition>();
++      List<Condition> __this__conditions = new ArrayList<Condition>(other.conditions.size());
+       for (Condition other_element : other.conditions) {
+         __this__conditions.add(new Condition(other_element));
+       }
+       this.conditions = __this__conditions;
+     }
+     if (other.isSetUpdates()) {
+-      List<ColumnUpdate> __this__updates = new ArrayList<ColumnUpdate>();
++      List<ColumnUpdate> __this__updates = new ArrayList<ColumnUpdate>(other.updates.size());
+       for (ColumnUpdate other_element : other.updates) {
+         __this__updates.add(new ColumnUpdate(other_element));
+       }
+@@ -343,30 +345,30 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(ConditionalUpdates other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    ConditionalUpdates typedOther = (ConditionalUpdates)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetConditions()).compareTo(typedOther.isSetConditions());
++    lastComparison = Boolean.valueOf(isSetConditions()).compareTo(other.isSetConditions());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetConditions()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.conditions, typedOther.conditions);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.conditions, other.conditions);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetUpdates()).compareTo(typedOther.isSetUpdates());
++    lastComparison = Boolean.valueOf(isSetUpdates()).compareTo(other.isSetUpdates());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetUpdates()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.updates, typedOther.updates);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.updates, other.updates);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -456,7 +458,7 @@ import org.slf4j.LoggerFactory;
+                 struct.conditions = new ArrayList<Condition>(_list90.size);
+                 for (int _i91 = 0; _i91 < _list90.size; ++_i91)
+                 {
+-                  Condition _elem92; // required
++                  Condition _elem92;
+                   _elem92 = new Condition();
+                   _elem92.read(iprot);
+                   struct.conditions.add(_elem92);
+@@ -475,7 +477,7 @@ import org.slf4j.LoggerFactory;
+                 struct.updates = new ArrayList<ColumnUpdate>(_list93.size);
+                 for (int _i94 = 0; _i94 < _list93.size; ++_i94)
+                 {
+-                  ColumnUpdate _elem95; // required
++                  ColumnUpdate _elem95;
+                   _elem95 = new ColumnUpdate();
+                   _elem95.read(iprot);
+                   struct.updates.add(_elem95);
+@@ -581,7 +583,7 @@ import org.slf4j.LoggerFactory;
+           struct.conditions = new ArrayList<Condition>(_list100.size);
+           for (int _i101 = 0; _i101 < _list100.size; ++_i101)
+           {
+-            Condition _elem102; // required
++            Condition _elem102;
+             _elem102 = new Condition();
+             _elem102.read(iprot);
+             struct.conditions.add(_elem102);
+@@ -595,7 +597,7 @@ import org.slf4j.LoggerFactory;
+           struct.updates = new ArrayList<ColumnUpdate>(_list103.size);
+           for (int _i104 = 0; _i104 < _list103.size; ++_i104)
+           {
+-            ColumnUpdate _elem105; // required
++            ColumnUpdate _elem105;
+             _elem105 = new ColumnUpdate();
+             _elem105.read(iprot);
+             struct.updates.add(_elem105);
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ConditionalWriterOptions.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ConditionalWriterOptions.java
+index 8a045f1..bb4ad51 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ConditionalWriterOptions.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ConditionalWriterOptions.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class ConditionalWriterOptions implements org.apache.thrift.TBase<ConditionalWriterOptions, ConditionalWriterOptions._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class ConditionalWriterOptions implements org.apache.thrift.TBase<ConditionalWriterOptions, ConditionalWriterOptions._Fields>, java.io.Serializable, Cloneable, Comparable<ConditionalWriterOptions> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ConditionalWriterOptions");
+ 
+   private static final org.apache.thrift.protocol.TField MAX_MEMORY_FIELD_DESC = new org.apache.thrift.protocol.TField("maxMemory", org.apache.thrift.protocol.TType.I64, (short)1);
+@@ -166,12 +168,7 @@ import org.slf4j.LoggerFactory;
+     this.timeoutMs = other.timeoutMs;
+     this.threads = other.threads;
+     if (other.isSetAuthorizations()) {
+-      Set<ByteBuffer> __this__authorizations = new HashSet<ByteBuffer>();
+-      for (ByteBuffer other_element : other.authorizations) {
+-        ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-        __this__authorizations.add(temp_binary_element);
+-      }
++      Set<ByteBuffer> __this__authorizations = new HashSet<ByteBuffer>(other.authorizations);
+       this.authorizations = __this__authorizations;
+     }
+   }
+@@ -430,50 +427,50 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(ConditionalWriterOptions other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    ConditionalWriterOptions typedOther = (ConditionalWriterOptions)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetMaxMemory()).compareTo(typedOther.isSetMaxMemory());
++    lastComparison = Boolean.valueOf(isSetMaxMemory()).compareTo(other.isSetMaxMemory());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMaxMemory()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxMemory, typedOther.maxMemory);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxMemory, other.maxMemory);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetTimeoutMs()).compareTo(typedOther.isSetTimeoutMs());
++    lastComparison = Boolean.valueOf(isSetTimeoutMs()).compareTo(other.isSetTimeoutMs());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTimeoutMs()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.timeoutMs, typedOther.timeoutMs);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.timeoutMs, other.timeoutMs);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetThreads()).compareTo(typedOther.isSetThreads());
++    lastComparison = Boolean.valueOf(isSetThreads()).compareTo(other.isSetThreads());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetThreads()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.threads, typedOther.threads);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.threads, other.threads);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(typedOther.isSetAuthorizations());
++    lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(other.isSetAuthorizations());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetAuthorizations()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, typedOther.authorizations);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, other.authorizations);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -601,7 +598,7 @@ import org.slf4j.LoggerFactory;
+                 struct.authorizations = new HashSet<ByteBuffer>(2*_set106.size);
+                 for (int _i107 = 0; _i107 < _set106.size; ++_i107)
+                 {
+-                  ByteBuffer _elem108; // required
++                  ByteBuffer _elem108;
+                   _elem108 = iprot.readBinary();
+                   struct.authorizations.add(_elem108);
+                 }
+@@ -729,7 +726,7 @@ import org.slf4j.LoggerFactory;
+           struct.authorizations = new HashSet<ByteBuffer>(2*_set111.size);
+           for (int _i112 = 0; _i112 < _set111.size; ++_i112)
+           {
+-            ByteBuffer _elem113; // required
++            ByteBuffer _elem113;
+             _elem113 = iprot.readBinary();
+             struct.authorizations.add(_elem113);
+           }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/DiskUsage.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/DiskUsage.java
+index b82d185..36080ed 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/DiskUsage.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/DiskUsage.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class DiskUsage implements org.apache.thrift.TBase<DiskUsage, DiskUsage._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class DiskUsage implements org.apache.thrift.TBase<DiskUsage, DiskUsage._Fields>, java.io.Serializable, Cloneable, Comparable<DiskUsage> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("DiskUsage");
+ 
+   private static final org.apache.thrift.protocol.TField TABLES_FIELD_DESC = new org.apache.thrift.protocol.TField("tables", org.apache.thrift.protocol.TType.LIST, (short)1);
+@@ -156,10 +158,7 @@ import org.slf4j.LoggerFactory;
+   public DiskUsage(DiskUsage other) {
+     __isset_bitfield = other.__isset_bitfield;
+     if (other.isSetTables()) {
+-      List<String> __this__tables = new ArrayList<String>();
+-      for (String other_element : other.tables) {
+-        __this__tables.add(other_element);
+-      }
++      List<String> __this__tables = new ArrayList<String>(other.tables);
+       this.tables = __this__tables;
+     }
+     this.usage = other.usage;
+@@ -325,30 +324,30 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(DiskUsage other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    DiskUsage typedOther = (DiskUsage)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetTables()).compareTo(typedOther.isSetTables());
++    lastComparison = Boolean.valueOf(isSetTables()).compareTo(other.isSetTables());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTables()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tables, typedOther.tables);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tables, other.tables);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetUsage()).compareTo(typedOther.isSetUsage());
++    lastComparison = Boolean.valueOf(isSetUsage()).compareTo(other.isSetUsage());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetUsage()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.usage, typedOther.usage);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.usage, other.usage);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -436,7 +435,7 @@ import org.slf4j.LoggerFactory;
+                 struct.tables = new ArrayList<String>(_list0.size);
+                 for (int _i1 = 0; _i1 < _list0.size; ++_i1)
+                 {
+-                  String _elem2; // required
++                  String _elem2;
+                   _elem2 = iprot.readString();
+                   struct.tables.add(_elem2);
+                 }
+@@ -534,7 +533,7 @@ import org.slf4j.LoggerFactory;
+           struct.tables = new ArrayList<String>(_list5.size);
+           for (int _i6 = 0; _i6 < _list5.size; ++_i6)
+           {
+-            String _elem7; // required
++            String _elem7;
+             _elem7 = iprot.readString();
+             struct.tables.add(_elem7);
+           }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/IteratorScope.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/IteratorScope.java
+index e3eaaef..bafd525 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/IteratorScope.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/IteratorScope.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/IteratorSetting.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/IteratorSetting.java
+index c0342eb..1956b9a 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/IteratorSetting.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/IteratorSetting.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class IteratorSetting implements org.apache.thrift.TBase<IteratorSetting, IteratorSetting._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class IteratorSetting implements org.apache.thrift.TBase<IteratorSetting, IteratorSetting._Fields>, java.io.Serializable, Cloneable, Comparable<IteratorSetting> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("IteratorSetting");
+ 
+   private static final org.apache.thrift.protocol.TField PRIORITY_FIELD_DESC = new org.apache.thrift.protocol.TField("priority", org.apache.thrift.protocol.TType.I32, (short)1);
+@@ -182,18 +184,7 @@ import org.slf4j.LoggerFactory;
+       this.iteratorClass = other.iteratorClass;
+     }
+     if (other.isSetProperties()) {
+-      Map<String,String> __this__properties = new HashMap<String,String>();
+-      for (Map.Entry<String, String> other_element : other.properties.entrySet()) {
+-
+-        String other_element_key = other_element.getKey();
+-        String other_element_value = other_element.getValue();
+-
+-        String __this__properties_copy_key = other_element_key;
+-
+-        String __this__properties_copy_value = other_element_value;
+-
+-        __this__properties.put(__this__properties_copy_key, __this__properties_copy_value);
+-      }
++      Map<String,String> __this__properties = new HashMap<String,String>(other.properties);
+       this.properties = __this__properties;
+     }
+   }
+@@ -448,50 +439,50 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(IteratorSetting other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    IteratorSetting typedOther = (IteratorSetting)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetPriority()).compareTo(typedOther.isSetPriority());
++    lastComparison = Boolean.valueOf(isSetPriority()).compareTo(other.isSetPriority());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetPriority()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.priority, typedOther.priority);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.priority, other.priority);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetName()).compareTo(typedOther.isSetName());
++    lastComparison = Boolean.valueOf(isSetName()).compareTo(other.isSetName());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetName()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.name, typedOther.name);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.name, other.name);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetIteratorClass()).compareTo(typedOther.isSetIteratorClass());
++    lastComparison = Boolean.valueOf(isSetIteratorClass()).compareTo(other.isSetIteratorClass());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIteratorClass()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iteratorClass, typedOther.iteratorClass);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iteratorClass, other.iteratorClass);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetProperties()).compareTo(typedOther.isSetProperties());
++    lastComparison = Boolean.valueOf(isSetProperties()).compareTo(other.isSetProperties());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetProperties()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.properties, typedOther.properties);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.properties, other.properties);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -619,8 +610,8 @@ import org.slf4j.LoggerFactory;
+                 struct.properties = new HashMap<String,String>(2*_map16.size);
+                 for (int _i17 = 0; _i17 < _map16.size; ++_i17)
+                 {
+-                  String _key18; // required
+-                  String _val19; // required
++                  String _key18;
++                  String _val19;
+                   _key18 = iprot.readString();
+                   _val19 = iprot.readString();
+                   struct.properties.put(_key18, _val19);
+@@ -747,8 +738,8 @@ import org.slf4j.LoggerFactory;
+           struct.properties = new HashMap<String,String>(2*_map22.size);
+           for (int _i23 = 0; _i23 < _map22.size; ++_i23)
+           {
+-            String _key24; // required
+-            String _val25; // required
++            String _key24;
++            String _val25;
+             _key24 = iprot.readString();
+             _val25 = iprot.readString();
+             struct.properties.put(_key24, _val25);
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/Key.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/Key.java
+index 80f2ecd..ecba9d1 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/Key.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/Key.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class Key implements org.apache.thrift.TBase<Key, Key._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class Key implements org.apache.thrift.TBase<Key, Key._Fields>, java.io.Serializable, Cloneable, Comparable<Key> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Key");
+ 
+   private static final org.apache.thrift.protocol.TField ROW_FIELD_DESC = new org.apache.thrift.protocol.TField("row", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -526,60 +528,60 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(Key other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    Key typedOther = (Key)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetRow()).compareTo(typedOther.isSetRow());
++    lastComparison = Boolean.valueOf(isSetRow()).compareTo(other.isSetRow());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetRow()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.row, typedOther.row);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.row, other.row);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColFamily()).compareTo(typedOther.isSetColFamily());
++    lastComparison = Boolean.valueOf(isSetColFamily()).compareTo(other.isSetColFamily());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColFamily()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colFamily, typedOther.colFamily);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colFamily, other.colFamily);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColQualifier()).compareTo(typedOther.isSetColQualifier());
++    lastComparison = Boolean.valueOf(isSetColQualifier()).compareTo(other.isSetColQualifier());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColQualifier()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colQualifier, typedOther.colQualifier);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colQualifier, other.colQualifier);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColVisibility()).compareTo(typedOther.isSetColVisibility());
++    lastComparison = Boolean.valueOf(isSetColVisibility()).compareTo(other.isSetColVisibility());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColVisibility()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colVisibility, typedOther.colVisibility);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colVisibility, other.colVisibility);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetTimestamp()).compareTo(typedOther.isSetTimestamp());
++    lastComparison = Boolean.valueOf(isSetTimestamp()).compareTo(other.isSetTimestamp());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTimestamp()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.timestamp, typedOther.timestamp);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.timestamp, other.timestamp);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/KeyExtent.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/KeyExtent.java
+index 026f456..f9c9e4c 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/KeyExtent.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/KeyExtent.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class KeyExtent implements org.apache.thrift.TBase<KeyExtent, KeyExtent._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class KeyExtent implements org.apache.thrift.TBase<KeyExtent, KeyExtent._Fields>, java.io.Serializable, Cloneable, Comparable<KeyExtent> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("KeyExtent");
+ 
+   private static final org.apache.thrift.protocol.TField TABLE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("tableId", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -384,40 +386,40 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(KeyExtent other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    KeyExtent typedOther = (KeyExtent)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetTableId()).compareTo(typedOther.isSetTableId());
++    lastComparison = Boolean.valueOf(isSetTableId()).compareTo(other.isSetTableId());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTableId()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableId, typedOther.tableId);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tableId, other.tableId);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(typedOther.isSetEndRow());
++    lastComparison = Boolean.valueOf(isSetEndRow()).compareTo(other.isSetEndRow());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetEndRow()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, typedOther.endRow);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endRow, other.endRow);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetPrevEndRow()).compareTo(typedOther.isSetPrevEndRow());
++    lastComparison = Boolean.valueOf(isSetPrevEndRow()).compareTo(other.isSetPrevEndRow());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetPrevEndRow()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.prevEndRow, typedOther.prevEndRow);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.prevEndRow, other.prevEndRow);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/KeyValue.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/KeyValue.java
+index 8f53983..52bfbd1 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/KeyValue.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/KeyValue.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class KeyValue implements org.apache.thrift.TBase<KeyValue, KeyValue._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class KeyValue implements org.apache.thrift.TBase<KeyValue, KeyValue._Fields>, java.io.Serializable, Cloneable, Comparable<KeyValue> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("KeyValue");
+ 
+   private static final org.apache.thrift.protocol.TField KEY_FIELD_DESC = new org.apache.thrift.protocol.TField("key", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -314,30 +316,30 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(KeyValue other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    KeyValue typedOther = (KeyValue)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetKey()).compareTo(typedOther.isSetKey());
++    lastComparison = Boolean.valueOf(isSetKey()).compareTo(other.isSetKey());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetKey()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.key, typedOther.key);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.key, other.key);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetValue()).compareTo(typedOther.isSetValue());
++    lastComparison = Boolean.valueOf(isSetValue()).compareTo(other.isSetValue());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetValue()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, typedOther.value);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, other.value);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/KeyValueAndPeek.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/KeyValueAndPeek.java
+index daea6d3..1993d01 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/KeyValueAndPeek.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/KeyValueAndPeek.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class KeyValueAndPeek implements org.apache.thrift.TBase<KeyValueAndPeek, KeyValueAndPeek._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class KeyValueAndPeek implements org.apache.thrift.TBase<KeyValueAndPeek, KeyValueAndPeek._Fields>, java.io.Serializable, Cloneable, Comparable<KeyValueAndPeek> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("KeyValueAndPeek");
+ 
+   private static final org.apache.thrift.protocol.TField KEY_VALUE_FIELD_DESC = new org.apache.thrift.protocol.TField("keyValue", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -305,30 +307,30 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(KeyValueAndPeek other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    KeyValueAndPeek typedOther = (KeyValueAndPeek)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetKeyValue()).compareTo(typedOther.isSetKeyValue());
++    lastComparison = Boolean.valueOf(isSetKeyValue()).compareTo(other.isSetKeyValue());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetKeyValue()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.keyValue, typedOther.keyValue);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.keyValue, other.keyValue);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetHasNext()).compareTo(typedOther.isSetHasNext());
++    lastComparison = Boolean.valueOf(isSetHasNext()).compareTo(other.isSetHasNext());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetHasNext()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.hasNext, typedOther.hasNext);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.hasNext, other.hasNext);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/MutationsRejectedException.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/MutationsRejectedException.java
+index c4fb010..c0f8740 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/MutationsRejectedException.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/MutationsRejectedException.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class MutationsRejectedException extends TException implements org.apache.thrift.TBase<MutationsRejectedException, MutationsRejectedException._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class MutationsRejectedException extends TException implements org.apache.thrift.TBase<MutationsRejectedException, MutationsRejectedException._Fields>, java.io.Serializable, Cloneable, Comparable<MutationsRejectedException> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("MutationsRejectedException");
+ 
+   private static final org.apache.thrift.protocol.TField MSG_FIELD_DESC = new org.apache.thrift.protocol.TField("msg", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -244,20 +246,20 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(MutationsRejectedException other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    MutationsRejectedException typedOther = (MutationsRejectedException)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetMsg()).compareTo(typedOther.isSetMsg());
++    lastComparison = Boolean.valueOf(isSetMsg()).compareTo(other.isSetMsg());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMsg()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.msg, typedOther.msg);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.msg, other.msg);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/NoMoreEntriesException.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/NoMoreEntriesException.java
+index 555d5f3..b0a543a 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/NoMoreEntriesException.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/NoMoreEntriesException.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class NoMoreEntriesException extends TException implements org.apache.thrift.TBase<NoMoreEntriesException, NoMoreEntriesException._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class NoMoreEntriesException extends TException implements org.apache.thrift.TBase<NoMoreEntriesException, NoMoreEntriesException._Fields>, java.io.Serializable, Cloneable, Comparable<NoMoreEntriesException> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("NoMoreEntriesException");
+ 
+   private static final org.apache.thrift.protocol.TField MSG_FIELD_DESC = new org.apache.thrift.protocol.TField("msg", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -244,20 +246,20 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(NoMoreEntriesException other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    NoMoreEntriesException typedOther = (NoMoreEntriesException)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetMsg()).compareTo(typedOther.isSetMsg());
++    lastComparison = Boolean.valueOf(isSetMsg()).compareTo(other.isSetMsg());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMsg()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.msg, typedOther.msg);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.msg, other.msg);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/PartialKey.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/PartialKey.java
+index 0922a39..1c9bfc4 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/PartialKey.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/PartialKey.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/Range.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/Range.java
+index 70b4a32..b1f505f 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/Range.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/Range.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class Range implements org.apache.thrift.TBase<Range, Range._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class Range implements org.apache.thrift.TBase<Range, Range._Fields>, java.io.Serializable, Cloneable, Comparable<Range> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Range");
+ 
+   private static final org.apache.thrift.protocol.TField START_FIELD_DESC = new org.apache.thrift.protocol.TField("start", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -423,50 +425,50 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(Range other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    Range typedOther = (Range)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetStart()).compareTo(typedOther.isSetStart());
++    lastComparison = Boolean.valueOf(isSetStart()).compareTo(other.isSetStart());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetStart()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.start, typedOther.start);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.start, other.start);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetStartInclusive()).compareTo(typedOther.isSetStartInclusive());
++    lastComparison = Boolean.valueOf(isSetStartInclusive()).compareTo(other.isSetStartInclusive());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetStartInclusive()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startInclusive, typedOther.startInclusive);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.startInclusive, other.startInclusive);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetStop()).compareTo(typedOther.isSetStop());
++    lastComparison = Boolean.valueOf(isSetStop()).compareTo(other.isSetStop());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetStop()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.stop, typedOther.stop);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.stop, other.stop);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetStopInclusive()).compareTo(typedOther.isSetStopInclusive());
++    lastComparison = Boolean.valueOf(isSetStopInclusive()).compareTo(other.isSetStopInclusive());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetStopInclusive()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.stopInclusive, typedOther.stopInclusive);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.stopInclusive, other.stopInclusive);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanColumn.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanColumn.java
+index 532414b..101d720 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanColumn.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanColumn.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class ScanColumn implements org.apache.thrift.TBase<ScanColumn, ScanColumn._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class ScanColumn implements org.apache.thrift.TBase<ScanColumn, ScanColumn._Fields>, java.io.Serializable, Cloneable, Comparable<ScanColumn> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ScanColumn");
+ 
+   private static final org.apache.thrift.protocol.TField COL_FAMILY_FIELD_DESC = new org.apache.thrift.protocol.TField("colFamily", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -324,30 +326,30 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(ScanColumn other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    ScanColumn typedOther = (ScanColumn)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetColFamily()).compareTo(typedOther.isSetColFamily());
++    lastComparison = Boolean.valueOf(isSetColFamily()).compareTo(other.isSetColFamily());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColFamily()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colFamily, typedOther.colFamily);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colFamily, other.colFamily);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColQualifier()).compareTo(typedOther.isSetColQualifier());
++    lastComparison = Boolean.valueOf(isSetColQualifier()).compareTo(other.isSetColQualifier());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColQualifier()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colQualifier, typedOther.colQualifier);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.colQualifier, other.colQualifier);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanOptions.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanOptions.java
+index 34ce213..1e025ba 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanOptions.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanOptions.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class ScanOptions implements org.apache.thrift.TBase<ScanOptions, ScanOptions._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class ScanOptions implements org.apache.thrift.TBase<ScanOptions, ScanOptions._Fields>, java.io.Serializable, Cloneable, Comparable<ScanOptions> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ScanOptions");
+ 
+   private static final org.apache.thrift.protocol.TField AUTHORIZATIONS_FIELD_DESC = new org.apache.thrift.protocol.TField("authorizations", org.apache.thrift.protocol.TType.SET, (short)1);
+@@ -170,26 +172,21 @@ import org.slf4j.LoggerFactory;
+   public ScanOptions(ScanOptions other) {
+     __isset_bitfield = other.__isset_bitfield;
+     if (other.isSetAuthorizations()) {
+-      Set<ByteBuffer> __this__authorizations = new HashSet<ByteBuffer>();
+-      for (ByteBuffer other_element : other.authorizations) {
+-        ByteBuffer temp_binary_element = org.apache.thrift.TBaseHelper.copyBinary(other_element);
+-;
+-        __this__authorizations.add(temp_binary_element);
+-      }
++      Set<ByteBuffer> __this__authorizations = new HashSet<ByteBuffer>(other.authorizations);
+       this.authorizations = __this__authorizations;
+     }
+     if (other.isSetRange()) {
+       this.range = new Range(other.range);
+     }
+     if (other.isSetColumns()) {
+-      List<ScanColumn> __this__columns = new ArrayList<ScanColumn>();
++      List<ScanColumn> __this__columns = new ArrayList<ScanColumn>(other.columns.size());
+       for (ScanColumn other_element : other.columns) {
+         __this__columns.add(new ScanColumn(other_element));
+       }
+       this.columns = __this__columns;
+     }
+     if (other.isSetIterators()) {
+-      List<IteratorSetting> __this__iterators = new ArrayList<IteratorSetting>();
++      List<IteratorSetting> __this__iterators = new ArrayList<IteratorSetting>(other.iterators.size());
+       for (IteratorSetting other_element : other.iterators) {
+         __this__iterators.add(new IteratorSetting(other_element));
+       }
+@@ -529,60 +526,60 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(ScanOptions other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    ScanOptions typedOther = (ScanOptions)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(typedOther.isSetAuthorizations());
++    lastComparison = Boolean.valueOf(isSetAuthorizations()).compareTo(other.isSetAuthorizations());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetAuthorizations()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, typedOther.authorizations);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authorizations, other.authorizations);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetRange()).compareTo(typedOther.isSetRange());
++    lastComparison = Boolean.valueOf(isSetRange()).compareTo(other.isSetRange());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetRange()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.range, typedOther.range);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.range, other.range);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetColumns()).compareTo(typedOther.isSetColumns());
++    lastComparison = Boolean.valueOf(isSetColumns()).compareTo(other.isSetColumns());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetColumns()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columns, typedOther.columns);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columns, other.columns);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetIterators()).compareTo(typedOther.isSetIterators());
++    lastComparison = Boolean.valueOf(isSetIterators()).compareTo(other.isSetIterators());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetIterators()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterators, typedOther.iterators);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.iterators, other.iterators);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetBufferSize()).compareTo(typedOther.isSetBufferSize());
++    lastComparison = Boolean.valueOf(isSetBufferSize()).compareTo(other.isSetBufferSize());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetBufferSize()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.bufferSize, typedOther.bufferSize);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.bufferSize, other.bufferSize);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -707,7 +704,7 @@ import org.slf4j.LoggerFactory;
+                 struct.authorizations = new HashSet<ByteBuffer>(2*_set26.size);
+                 for (int _i27 = 0; _i27 < _set26.size; ++_i27)
+                 {
+-                  ByteBuffer _elem28; // required
++                  ByteBuffer _elem28;
+                   _elem28 = iprot.readBinary();
+                   struct.authorizations.add(_elem28);
+                 }
+@@ -734,7 +731,7 @@ import org.slf4j.LoggerFactory;
+                 struct.columns = new ArrayList<ScanColumn>(_list29.size);
+                 for (int _i30 = 0; _i30 < _list29.size; ++_i30)
+                 {
+-                  ScanColumn _elem31; // required
++                  ScanColumn _elem31;
+                   _elem31 = new ScanColumn();
+                   _elem31.read(iprot);
+                   struct.columns.add(_elem31);
+@@ -753,7 +750,7 @@ import org.slf4j.LoggerFactory;
+                 struct.iterators = new ArrayList<IteratorSetting>(_list32.size);
+                 for (int _i33 = 0; _i33 < _list32.size; ++_i33)
+                 {
+-                  IteratorSetting _elem34; // required
++                  IteratorSetting _elem34;
+                   _elem34 = new IteratorSetting();
+                   _elem34.read(iprot);
+                   struct.iterators.add(_elem34);
+@@ -921,7 +918,7 @@ import org.slf4j.LoggerFactory;
+           struct.authorizations = new HashSet<ByteBuffer>(2*_set41.size);
+           for (int _i42 = 0; _i42 < _set41.size; ++_i42)
+           {
+-            ByteBuffer _elem43; // required
++            ByteBuffer _elem43;
+             _elem43 = iprot.readBinary();
+             struct.authorizations.add(_elem43);
+           }
+@@ -939,7 +936,7 @@ import org.slf4j.LoggerFactory;
+           struct.columns = new ArrayList<ScanColumn>(_list44.size);
+           for (int _i45 = 0; _i45 < _list44.size; ++_i45)
+           {
+-            ScanColumn _elem46; // required
++            ScanColumn _elem46;
+             _elem46 = new ScanColumn();
+             _elem46.read(iprot);
+             struct.columns.add(_elem46);
+@@ -953,7 +950,7 @@ import org.slf4j.LoggerFactory;
+           struct.iterators = new ArrayList<IteratorSetting>(_list47.size);
+           for (int _i48 = 0; _i48 < _list47.size; ++_i48)
+           {
+-            IteratorSetting _elem49; // required
++            IteratorSetting _elem49;
+             _elem49 = new IteratorSetting();
+             _elem49.read(iprot);
+             struct.iterators.add(_elem49);
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanResult.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanResult.java
+index 4402910..02e1fe0 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanResult.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanResult.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class ScanResult implements org.apache.thrift.TBase<ScanResult, ScanResult._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class ScanResult implements org.apache.thrift.TBase<ScanResult, ScanResult._Fields>, java.io.Serializable, Cloneable, Comparable<ScanResult> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ScanResult");
+ 
+   private static final org.apache.thrift.protocol.TField RESULTS_FIELD_DESC = new org.apache.thrift.protocol.TField("results", org.apache.thrift.protocol.TType.LIST, (short)1);
+@@ -156,7 +158,7 @@ import org.slf4j.LoggerFactory;
+   public ScanResult(ScanResult other) {
+     __isset_bitfield = other.__isset_bitfield;
+     if (other.isSetResults()) {
+-      List<KeyValue> __this__results = new ArrayList<KeyValue>();
++      List<KeyValue> __this__results = new ArrayList<KeyValue>(other.results.size());
+       for (KeyValue other_element : other.results) {
+         __this__results.add(new KeyValue(other_element));
+       }
+@@ -325,30 +327,30 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(ScanResult other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    ScanResult typedOther = (ScanResult)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetResults()).compareTo(typedOther.isSetResults());
++    lastComparison = Boolean.valueOf(isSetResults()).compareTo(other.isSetResults());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetResults()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.results, typedOther.results);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.results, other.results);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetMore()).compareTo(typedOther.isSetMore());
++    lastComparison = Boolean.valueOf(isSetMore()).compareTo(other.isSetMore());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMore()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.more, typedOther.more);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.more, other.more);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -436,7 +438,7 @@ import org.slf4j.LoggerFactory;
+                 struct.results = new ArrayList<KeyValue>(_list8.size);
+                 for (int _i9 = 0; _i9 < _list8.size; ++_i9)
+                 {
+-                  KeyValue _elem10; // required
++                  KeyValue _elem10;
+                   _elem10 = new KeyValue();
+                   _elem10.read(iprot);
+                   struct.results.add(_elem10);
+@@ -535,7 +537,7 @@ import org.slf4j.LoggerFactory;
+           struct.results = new ArrayList<KeyValue>(_list13.size);
+           for (int _i14 = 0; _i14 < _list13.size; ++_i14)
+           {
+-            KeyValue _elem15; // required
++            KeyValue _elem15;
+             _elem15 = new KeyValue();
+             _elem15.read(iprot);
+             struct.results.add(_elem15);
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanState.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanState.java
+index add74bc..46608d1 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanState.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanState.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanType.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanType.java
+index 4f2266f..e153997 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanType.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/ScanType.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/SystemPermission.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/SystemPermission.java
+index f03c781..40e61d0 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/SystemPermission.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/SystemPermission.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/TableExistsException.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/TableExistsException.java
+index 1432b98..031de3a 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/TableExistsException.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/TableExistsException.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TableExistsException extends TException implements org.apache.thrift.TBase<TableExistsException, TableExistsException._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TableExistsException extends TException implements org.apache.thrift.TBase<TableExistsException, TableExistsException._Fields>, java.io.Serializable, Cloneable, Comparable<TableExistsException> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TableExistsException");
+ 
+   private static final org.apache.thrift.protocol.TField MSG_FIELD_DESC = new org.apache.thrift.protocol.TField("msg", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -244,20 +246,20 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TableExistsException other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TableExistsException typedOther = (TableExistsException)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetMsg()).compareTo(typedOther.isSetMsg());
++    lastComparison = Boolean.valueOf(isSetMsg()).compareTo(other.isSetMsg());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMsg()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.msg, typedOther.msg);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.msg, other.msg);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/TableNotFoundException.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/TableNotFoundException.java
+index 36bc35a..6e8ec11 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/TableNotFoundException.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/TableNotFoundException.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TableNotFoundException extends TException implements org.apache.thrift.TBase<TableNotFoundException, TableNotFoundException._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TableNotFoundException extends TException implements org.apache.thrift.TBase<TableNotFoundException, TableNotFoundException._Fields>, java.io.Serializable, Cloneable, Comparable<TableNotFoundException> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TableNotFoundException");
+ 
+   private static final org.apache.thrift.protocol.TField MSG_FIELD_DESC = new org.apache.thrift.protocol.TField("msg", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -244,20 +246,20 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TableNotFoundException other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TableNotFoundException typedOther = (TableNotFoundException)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetMsg()).compareTo(typedOther.isSetMsg());
++    lastComparison = Boolean.valueOf(isSetMsg()).compareTo(other.isSetMsg());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMsg()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.msg, typedOther.msg);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.msg, other.msg);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/TablePermission.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/TablePermission.java
+index 7c45d45..f36d933 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/TablePermission.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/TablePermission.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/TimeType.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/TimeType.java
+index 2aaf9df..b497ecc 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/TimeType.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/TimeType.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/UnknownScanner.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/UnknownScanner.java
+index a9958d7..a324af8 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/UnknownScanner.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/UnknownScanner.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class UnknownScanner extends TException implements org.apache.thrift.TBase<UnknownScanner, UnknownScanner._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class UnknownScanner extends TException implements org.apache.thrift.TBase<UnknownScanner, UnknownScanner._Fields>, java.io.Serializable, Cloneable, Comparable<UnknownScanner> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("UnknownScanner");
+ 
+   private static final org.apache.thrift.protocol.TField MSG_FIELD_DESC = new org.apache.thrift.protocol.TField("msg", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -244,20 +246,20 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(UnknownScanner other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    UnknownScanner typedOther = (UnknownScanner)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetMsg()).compareTo(typedOther.isSetMsg());
++    lastComparison = Boolean.valueOf(isSetMsg()).compareTo(other.isSetMsg());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMsg()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.msg, typedOther.msg);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.msg, other.msg);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/UnknownWriter.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/UnknownWriter.java
+index 0c45a02..5b83ae5 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/UnknownWriter.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/UnknownWriter.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class UnknownWriter extends TException implements org.apache.thrift.TBase<UnknownWriter, UnknownWriter._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class UnknownWriter extends TException implements org.apache.thrift.TBase<UnknownWriter, UnknownWriter._Fields>, java.io.Serializable, Cloneable, Comparable<UnknownWriter> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("UnknownWriter");
+ 
+   private static final org.apache.thrift.protocol.TField MSG_FIELD_DESC = new org.apache.thrift.protocol.TField("msg", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -244,20 +246,20 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(UnknownWriter other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    UnknownWriter typedOther = (UnknownWriter)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetMsg()).compareTo(typedOther.isSetMsg());
++    lastComparison = Boolean.valueOf(isSetMsg()).compareTo(other.isSetMsg());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMsg()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.msg, typedOther.msg);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.msg, other.msg);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/WriterOptions.java b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/WriterOptions.java
+index 4007ac9..5f000a8 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/thrift/WriterOptions.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/thrift/WriterOptions.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class WriterOptions implements org.apache.thrift.TBase<WriterOptions, WriterOptions._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class WriterOptions implements org.apache.thrift.TBase<WriterOptions, WriterOptions._Fields>, java.io.Serializable, Cloneable, Comparable<WriterOptions> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("WriterOptions");
+ 
+   private static final org.apache.thrift.protocol.TField MAX_MEMORY_FIELD_DESC = new org.apache.thrift.protocol.TField("maxMemory", org.apache.thrift.protocol.TType.I64, (short)1);
+@@ -423,50 +425,50 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(WriterOptions other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    WriterOptions typedOther = (WriterOptions)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetMaxMemory()).compareTo(typedOther.isSetMaxMemory());
++    lastComparison = Boolean.valueOf(isSetMaxMemory()).compareTo(other.isSetMaxMemory());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetMaxMemory()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxMemory, typedOther.maxMemory);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxMemory, other.maxMemory);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetLatencyMs()).compareTo(typedOther.isSetLatencyMs());
++    lastComparison = Boolean.valueOf(isSetLatencyMs()).compareTo(other.isSetLatencyMs());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetLatencyMs()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.latencyMs, typedOther.latencyMs);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.latencyMs, other.latencyMs);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetTimeoutMs()).compareTo(typedOther.isSetTimeoutMs());
++    lastComparison = Boolean.valueOf(isSetTimeoutMs()).compareTo(other.isSetTimeoutMs());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTimeoutMs()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.timeoutMs, typedOther.timeoutMs);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.timeoutMs, other.timeoutMs);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetThreads()).compareTo(typedOther.isSetThreads());
++    lastComparison = Boolean.valueOf(isSetThreads()).compareTo(other.isSetThreads());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetThreads()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.threads, typedOther.threads);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.threads, other.threads);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/proxy/src/main/python/AccumuloProxy-remote b/proxy/src/main/python/AccumuloProxy-remote
+index b7056c8..b4292a2 100644
+--- a/proxy/src/main/python/AccumuloProxy-remote
++++ b/proxy/src/main/python/AccumuloProxy-remote
+@@ -14,7 +14,7 @@
+ # limitations under the License.
+ #!/usr/bin/env python
+ #
+-# Autogenerated by Thrift Compiler (0.9.0)
++# Autogenerated by Thrift Compiler (0.9.1)
+ #
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ #
+@@ -29,8 +29,8 @@ from thrift.transport import TSocket
+ from thrift.transport import THttpClient
+ from thrift.protocol import TBinaryProtocol
+ 
+-import AccumuloProxy
+-from ttypes import *
++from accumulo import AccumuloProxy
++from accumulo.ttypes import *
+ 
+ if len(sys.argv) <= 1 or sys.argv[1] == '--help':
+   print ''
+diff --git a/proxy/src/main/python/AccumuloProxy.py b/proxy/src/main/python/AccumuloProxy.py
+index c74ee96..37dda0f 100644
+--- a/proxy/src/main/python/AccumuloProxy.py
++++ b/proxy/src/main/python/AccumuloProxy.py
+@@ -13,7 +13,7 @@
+ # See the License for the specific language governing permissions and
+ # limitations under the License.
+ #
+-# Autogenerated by Thrift Compiler (0.9.0)
++# Autogenerated by Thrift Compiler (0.9.1)
+ #
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ #
+@@ -734,7 +734,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_login(self, ):
++  def recv_login(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -770,7 +770,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_addConstraint(self, ):
++  def recv_addConstraint(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -810,7 +810,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_addSplits(self, ):
++  def recv_addSplits(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -850,7 +850,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_attachIterator(self, ):
++  def recv_attachIterator(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -890,7 +890,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_checkIteratorConflicts(self, ):
++  def recv_checkIteratorConflicts(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -926,7 +926,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_clearLocatorCache(self, ):
++  def recv_clearLocatorCache(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -966,7 +966,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_cloneTable(self, ):
++  def recv_cloneTable(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1014,7 +1014,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_compactTable(self, ):
++  def recv_compactTable(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1050,7 +1050,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_cancelCompaction(self, ):
++  def recv_cancelCompaction(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1090,7 +1090,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_createTable(self, ):
++  def recv_createTable(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1126,7 +1126,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_deleteTable(self, ):
++  def recv_deleteTable(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1166,7 +1166,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_deleteRows(self, ):
++  def recv_deleteRows(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1204,7 +1204,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_exportTable(self, ):
++  def recv_exportTable(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1246,7 +1246,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_flushTable(self, ):
++  def recv_flushTable(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1282,7 +1282,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_getDiskUsage(self, ):
++  def recv_getDiskUsage(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1320,7 +1320,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_getLocalityGroups(self, ):
++  def recv_getLocalityGroups(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1362,7 +1362,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_getIteratorSetting(self, ):
++  def recv_getIteratorSetting(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1410,7 +1410,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_getMaxRow(self, ):
++  def recv_getMaxRow(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1448,7 +1448,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_getTableProperties(self, ):
++  def recv_getTableProperties(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1492,7 +1492,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_importDirectory(self, ):
++  def recv_importDirectory(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1530,7 +1530,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_importTable(self, ):
++  def recv_importTable(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1568,7 +1568,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_listSplits(self, ):
++  def recv_listSplits(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1604,7 +1604,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_listTables(self, ):
++  def recv_listTables(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1636,7 +1636,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_listIterators(self, ):
++  def recv_listIterators(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1674,7 +1674,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_listConstraints(self, ):
++  def recv_listConstraints(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1716,7 +1716,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_mergeTablets(self, ):
++  def recv_mergeTablets(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1754,7 +1754,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_offlineTable(self, ):
++  def recv_offlineTable(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1792,7 +1792,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_onlineTable(self, ):
++  def recv_onlineTable(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1830,7 +1830,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_removeConstraint(self, ):
++  def recv_removeConstraint(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1870,7 +1870,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_removeIterator(self, ):
++  def recv_removeIterator(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1908,7 +1908,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_removeTableProperty(self, ):
++  def recv_removeTableProperty(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1946,7 +1946,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_renameTable(self, ):
++  def recv_renameTable(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -1986,7 +1986,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_setLocalityGroups(self, ):
++  def recv_setLocalityGroups(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2026,7 +2026,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_setTableProperty(self, ):
++  def recv_setTableProperty(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2066,7 +2066,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_splitRangeByTablets(self, ):
++  def recv_splitRangeByTablets(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2104,7 +2104,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_tableExists(self, ):
++  def recv_tableExists(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2134,7 +2134,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_tableIdMap(self, ):
++  def recv_tableIdMap(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2170,7 +2170,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_testTableClassLoad(self, ):
++  def recv_testTableClassLoad(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2208,7 +2208,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_pingTabletServer(self, ):
++  def recv_pingTabletServer(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2242,7 +2242,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_getActiveScans(self, ):
++  def recv_getActiveScans(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2278,7 +2278,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_getActiveCompactions(self, ):
++  def recv_getActiveCompactions(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2312,7 +2312,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_getSiteConfiguration(self, ):
++  def recv_getSiteConfiguration(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2346,7 +2346,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_getSystemConfiguration(self, ):
++  def recv_getSystemConfiguration(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2380,7 +2380,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_getTabletServers(self, ):
++  def recv_getTabletServers(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2412,7 +2412,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_removeProperty(self, ):
++  def recv_removeProperty(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2448,7 +2448,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_setProperty(self, ):
++  def recv_setProperty(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2484,7 +2484,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_testClassLoad(self, ):
++  def recv_testClassLoad(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2522,7 +2522,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_authenticateUser(self, ):
++  def recv_authenticateUser(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2560,7 +2560,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_changeUserAuthorizations(self, ):
++  def recv_changeUserAuthorizations(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2596,7 +2596,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_changeLocalUserPassword(self, ):
++  def recv_changeLocalUserPassword(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2632,7 +2632,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_createLocalUser(self, ):
++  def recv_createLocalUser(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2666,7 +2666,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_dropLocalUser(self, ):
++  def recv_dropLocalUser(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2700,7 +2700,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_getUserAuthorizations(self, ):
++  def recv_getUserAuthorizations(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2738,7 +2738,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_grantSystemPermission(self, ):
++  def recv_grantSystemPermission(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2776,7 +2776,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_grantTablePermission(self, ):
++  def recv_grantTablePermission(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2814,7 +2814,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_hasSystemPermission(self, ):
++  def recv_hasSystemPermission(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2854,7 +2854,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_hasTablePermission(self, ):
++  def recv_hasTablePermission(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2890,7 +2890,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_listLocalUsers(self, ):
++  def recv_listLocalUsers(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2930,7 +2930,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_revokeSystemPermission(self, ):
++  def recv_revokeSystemPermission(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -2968,7 +2968,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_revokeTablePermission(self, ):
++  def recv_revokeTablePermission(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3006,7 +3006,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_createBatchScanner(self, ):
++  def recv_createBatchScanner(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3046,7 +3046,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_createScanner(self, ):
++  def recv_createScanner(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3082,7 +3082,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_hasNext(self, ):
++  def recv_hasNext(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3114,7 +3114,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_nextEntry(self, ):
++  def recv_nextEntry(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3152,7 +3152,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_nextK(self, ):
++  def recv_nextK(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3188,7 +3188,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_closeScanner(self, ):
++  def recv_closeScanner(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3222,7 +3222,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_updateAndFlush(self, ):
++  def recv_updateAndFlush(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3262,7 +3262,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_createWriter(self, ):
++  def recv_createWriter(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3314,7 +3314,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_flush(self, ):
++  def recv_flush(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3346,7 +3346,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_closeWriter(self, ):
++  def recv_closeWriter(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3384,7 +3384,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_updateRowConditionally(self, ):
++  def recv_updateRowConditionally(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3424,7 +3424,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_createConditionalWriter(self, ):
++  def recv_createConditionalWriter(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3462,7 +3462,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_updateRowsConditionally(self, ):
++  def recv_updateRowsConditionally(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3498,7 +3498,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_closeConditionalWriter(self, ):
++  def recv_closeConditionalWriter(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3526,7 +3526,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_getRowRange(self, ):
++  def recv_getRowRange(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3558,7 +3558,7 @@ class Client(Iface):
+     self._oprot.writeMessageEnd()
+     self._oprot.trans.flush()
+ 
+-  def recv_getFollowing(self, ):
++  def recv_getFollowing(self):
+     (fname, mtype, rseqid) = self._iprot.readMessageBegin()
+     if mtype == TMessageType.EXCEPTION:
+       x = TApplicationException()
+@@ -3677,7 +3677,7 @@ class Processor(Iface, TProcessor):
+     result = login_result()
+     try:
+       result.success = self._handler.login(args.principal, args.loginProperties)
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("login", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3691,11 +3691,11 @@ class Processor(Iface, TProcessor):
+     result = addConstraint_result()
+     try:
+       result.success = self._handler.addConstraint(args.login, args.tableName, args.constraintClassName)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("addConstraint", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3709,11 +3709,11 @@ class Processor(Iface, TProcessor):
+     result = addSplits_result()
+     try:
+       self._handler.addSplits(args.login, args.tableName, args.splits)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("addSplits", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3727,11 +3727,11 @@ class Processor(Iface, TProcessor):
+     result = attachIterator_result()
+     try:
+       self._handler.attachIterator(args.login, args.tableName, args.setting, args.scopes)
+-    except AccumuloSecurityException as ouch1:
++    except AccumuloSecurityException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloException as ouch2:
++    except AccumuloException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("attachIterator", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3745,11 +3745,11 @@ class Processor(Iface, TProcessor):
+     result = checkIteratorConflicts_result()
+     try:
+       self._handler.checkIteratorConflicts(args.login, args.tableName, args.setting, args.scopes)
+-    except AccumuloSecurityException as ouch1:
++    except AccumuloSecurityException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloException as ouch2:
++    except AccumuloException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("checkIteratorConflicts", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3763,7 +3763,7 @@ class Processor(Iface, TProcessor):
+     result = clearLocatorCache_result()
+     try:
+       self._handler.clearLocatorCache(args.login, args.tableName)
+-    except TableNotFoundException as ouch1:
++    except TableNotFoundException, ouch1:
+       result.ouch1 = ouch1
+     oprot.writeMessageBegin("clearLocatorCache", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3777,13 +3777,13 @@ class Processor(Iface, TProcessor):
+     result = cloneTable_result()
+     try:
+       self._handler.cloneTable(args.login, args.tableName, args.newTableName, args.flush, args.propertiesToSet, args.propertiesToExclude)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+-    except TableExistsException as ouch4:
++    except TableExistsException, ouch4:
+       result.ouch4 = ouch4
+     oprot.writeMessageBegin("cloneTable", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3797,11 +3797,11 @@ class Processor(Iface, TProcessor):
+     result = compactTable_result()
+     try:
+       self._handler.compactTable(args.login, args.tableName, args.startRow, args.endRow, args.iterators, args.flush, args.wait)
+-    except AccumuloSecurityException as ouch1:
++    except AccumuloSecurityException, ouch1:
+       result.ouch1 = ouch1
+-    except TableNotFoundException as ouch2:
++    except TableNotFoundException, ouch2:
+       result.ouch2 = ouch2
+-    except AccumuloException as ouch3:
++    except AccumuloException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("compactTable", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3815,11 +3815,11 @@ class Processor(Iface, TProcessor):
+     result = cancelCompaction_result()
+     try:
+       self._handler.cancelCompaction(args.login, args.tableName)
+-    except AccumuloSecurityException as ouch1:
++    except AccumuloSecurityException, ouch1:
+       result.ouch1 = ouch1
+-    except TableNotFoundException as ouch2:
++    except TableNotFoundException, ouch2:
+       result.ouch2 = ouch2
+-    except AccumuloException as ouch3:
++    except AccumuloException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("cancelCompaction", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3833,11 +3833,11 @@ class Processor(Iface, TProcessor):
+     result = createTable_result()
+     try:
+       self._handler.createTable(args.login, args.tableName, args.versioningIter, args.type)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableExistsException as ouch3:
++    except TableExistsException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("createTable", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3851,11 +3851,11 @@ class Processor(Iface, TProcessor):
+     result = deleteTable_result()
+     try:
+       self._handler.deleteTable(args.login, args.tableName)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("deleteTable", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3869,11 +3869,11 @@ class Processor(Iface, TProcessor):
+     result = deleteRows_result()
+     try:
+       self._handler.deleteRows(args.login, args.tableName, args.startRow, args.endRow)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("deleteRows", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3887,11 +3887,11 @@ class Processor(Iface, TProcessor):
+     result = exportTable_result()
+     try:
+       self._handler.exportTable(args.login, args.tableName, args.exportDir)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("exportTable", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3905,11 +3905,11 @@ class Processor(Iface, TProcessor):
+     result = flushTable_result()
+     try:
+       self._handler.flushTable(args.login, args.tableName, args.startRow, args.endRow, args.wait)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("flushTable", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3923,11 +3923,11 @@ class Processor(Iface, TProcessor):
+     result = getDiskUsage_result()
+     try:
+       result.success = self._handler.getDiskUsage(args.login, args.tables)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("getDiskUsage", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3941,11 +3941,11 @@ class Processor(Iface, TProcessor):
+     result = getLocalityGroups_result()
+     try:
+       result.success = self._handler.getLocalityGroups(args.login, args.tableName)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("getLocalityGroups", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3959,11 +3959,11 @@ class Processor(Iface, TProcessor):
+     result = getIteratorSetting_result()
+     try:
+       result.success = self._handler.getIteratorSetting(args.login, args.tableName, args.iteratorName, args.scope)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("getIteratorSetting", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3977,11 +3977,11 @@ class Processor(Iface, TProcessor):
+     result = getMaxRow_result()
+     try:
+       result.success = self._handler.getMaxRow(args.login, args.tableName, args.auths, args.startRow, args.startInclusive, args.endRow, args.endInclusive)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("getMaxRow", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -3995,11 +3995,11 @@ class Processor(Iface, TProcessor):
+     result = getTableProperties_result()
+     try:
+       result.success = self._handler.getTableProperties(args.login, args.tableName)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("getTableProperties", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4013,11 +4013,11 @@ class Processor(Iface, TProcessor):
+     result = importDirectory_result()
+     try:
+       self._handler.importDirectory(args.login, args.tableName, args.importDir, args.failureDir, args.setTime)
+-    except TableNotFoundException as ouch1:
++    except TableNotFoundException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloException as ouch3:
++    except AccumuloException, ouch3:
+       result.ouch3 = ouch3
+-    except AccumuloSecurityException as ouch4:
++    except AccumuloSecurityException, ouch4:
+       result.ouch4 = ouch4
+     oprot.writeMessageBegin("importDirectory", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4031,11 +4031,11 @@ class Processor(Iface, TProcessor):
+     result = importTable_result()
+     try:
+       self._handler.importTable(args.login, args.tableName, args.importDir)
+-    except TableExistsException as ouch1:
++    except TableExistsException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloException as ouch2:
++    except AccumuloException, ouch2:
+       result.ouch2 = ouch2
+-    except AccumuloSecurityException as ouch3:
++    except AccumuloSecurityException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("importTable", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4049,11 +4049,11 @@ class Processor(Iface, TProcessor):
+     result = listSplits_result()
+     try:
+       result.success = self._handler.listSplits(args.login, args.tableName, args.maxSplits)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("listSplits", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4078,11 +4078,11 @@ class Processor(Iface, TProcessor):
+     result = listIterators_result()
+     try:
+       result.success = self._handler.listIterators(args.login, args.tableName)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("listIterators", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4096,11 +4096,11 @@ class Processor(Iface, TProcessor):
+     result = listConstraints_result()
+     try:
+       result.success = self._handler.listConstraints(args.login, args.tableName)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("listConstraints", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4114,11 +4114,11 @@ class Processor(Iface, TProcessor):
+     result = mergeTablets_result()
+     try:
+       self._handler.mergeTablets(args.login, args.tableName, args.startRow, args.endRow)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("mergeTablets", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4132,11 +4132,11 @@ class Processor(Iface, TProcessor):
+     result = offlineTable_result()
+     try:
+       self._handler.offlineTable(args.login, args.tableName, args.wait)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("offlineTable", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4150,11 +4150,11 @@ class Processor(Iface, TProcessor):
+     result = onlineTable_result()
+     try:
+       self._handler.onlineTable(args.login, args.tableName, args.wait)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("onlineTable", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4168,11 +4168,11 @@ class Processor(Iface, TProcessor):
+     result = removeConstraint_result()
+     try:
+       self._handler.removeConstraint(args.login, args.tableName, args.constraint)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("removeConstraint", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4186,11 +4186,11 @@ class Processor(Iface, TProcessor):
+     result = removeIterator_result()
+     try:
+       self._handler.removeIterator(args.login, args.tableName, args.iterName, args.scopes)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("removeIterator", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4204,11 +4204,11 @@ class Processor(Iface, TProcessor):
+     result = removeTableProperty_result()
+     try:
+       self._handler.removeTableProperty(args.login, args.tableName, args.property)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("removeTableProperty", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4222,13 +4222,13 @@ class Processor(Iface, TProcessor):
+     result = renameTable_result()
+     try:
+       self._handler.renameTable(args.login, args.oldTableName, args.newTableName)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+-    except TableExistsException as ouch4:
++    except TableExistsException, ouch4:
+       result.ouch4 = ouch4
+     oprot.writeMessageBegin("renameTable", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4242,11 +4242,11 @@ class Processor(Iface, TProcessor):
+     result = setLocalityGroups_result()
+     try:
+       self._handler.setLocalityGroups(args.login, args.tableName, args.groups)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("setLocalityGroups", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4260,11 +4260,11 @@ class Processor(Iface, TProcessor):
+     result = setTableProperty_result()
+     try:
+       self._handler.setTableProperty(args.login, args.tableName, args.property, args.value)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("setTableProperty", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4278,11 +4278,11 @@ class Processor(Iface, TProcessor):
+     result = splitRangeByTablets_result()
+     try:
+       result.success = self._handler.splitRangeByTablets(args.login, args.tableName, args.range, args.maxSplits)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("splitRangeByTablets", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4318,11 +4318,11 @@ class Processor(Iface, TProcessor):
+     result = testTableClassLoad_result()
+     try:
+       result.success = self._handler.testTableClassLoad(args.login, args.tableName, args.className, args.asTypeName)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("testTableClassLoad", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4336,9 +4336,9 @@ class Processor(Iface, TProcessor):
+     result = pingTabletServer_result()
+     try:
+       self._handler.pingTabletServer(args.login, args.tserver)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("pingTabletServer", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4352,9 +4352,9 @@ class Processor(Iface, TProcessor):
+     result = getActiveScans_result()
+     try:
+       result.success = self._handler.getActiveScans(args.login, args.tserver)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("getActiveScans", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4368,9 +4368,9 @@ class Processor(Iface, TProcessor):
+     result = getActiveCompactions_result()
+     try:
+       result.success = self._handler.getActiveCompactions(args.login, args.tserver)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("getActiveCompactions", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4384,9 +4384,9 @@ class Processor(Iface, TProcessor):
+     result = getSiteConfiguration_result()
+     try:
+       result.success = self._handler.getSiteConfiguration(args.login)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("getSiteConfiguration", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4400,9 +4400,9 @@ class Processor(Iface, TProcessor):
+     result = getSystemConfiguration_result()
+     try:
+       result.success = self._handler.getSystemConfiguration(args.login)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("getSystemConfiguration", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4427,9 +4427,9 @@ class Processor(Iface, TProcessor):
+     result = removeProperty_result()
+     try:
+       self._handler.removeProperty(args.login, args.property)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("removeProperty", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4443,9 +4443,9 @@ class Processor(Iface, TProcessor):
+     result = setProperty_result()
+     try:
+       self._handler.setProperty(args.login, args.property, args.value)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("setProperty", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4459,9 +4459,9 @@ class Processor(Iface, TProcessor):
+     result = testClassLoad_result()
+     try:
+       result.success = self._handler.testClassLoad(args.login, args.className, args.asTypeName)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("testClassLoad", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4475,9 +4475,9 @@ class Processor(Iface, TProcessor):
+     result = authenticateUser_result()
+     try:
+       result.success = self._handler.authenticateUser(args.login, args.user, args.properties)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("authenticateUser", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4491,9 +4491,9 @@ class Processor(Iface, TProcessor):
+     result = changeUserAuthorizations_result()
+     try:
+       self._handler.changeUserAuthorizations(args.login, args.user, args.authorizations)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("changeUserAuthorizations", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4507,9 +4507,9 @@ class Processor(Iface, TProcessor):
+     result = changeLocalUserPassword_result()
+     try:
+       self._handler.changeLocalUserPassword(args.login, args.user, args.password)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("changeLocalUserPassword", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4523,9 +4523,9 @@ class Processor(Iface, TProcessor):
+     result = createLocalUser_result()
+     try:
+       self._handler.createLocalUser(args.login, args.user, args.password)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("createLocalUser", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4539,9 +4539,9 @@ class Processor(Iface, TProcessor):
+     result = dropLocalUser_result()
+     try:
+       self._handler.dropLocalUser(args.login, args.user)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("dropLocalUser", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4555,9 +4555,9 @@ class Processor(Iface, TProcessor):
+     result = getUserAuthorizations_result()
+     try:
+       result.success = self._handler.getUserAuthorizations(args.login, args.user)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("getUserAuthorizations", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4571,9 +4571,9 @@ class Processor(Iface, TProcessor):
+     result = grantSystemPermission_result()
+     try:
+       self._handler.grantSystemPermission(args.login, args.user, args.perm)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("grantSystemPermission", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4587,11 +4587,11 @@ class Processor(Iface, TProcessor):
+     result = grantTablePermission_result()
+     try:
+       self._handler.grantTablePermission(args.login, args.user, args.table, args.perm)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("grantTablePermission", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4605,9 +4605,9 @@ class Processor(Iface, TProcessor):
+     result = hasSystemPermission_result()
+     try:
+       result.success = self._handler.hasSystemPermission(args.login, args.user, args.perm)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("hasSystemPermission", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4621,11 +4621,11 @@ class Processor(Iface, TProcessor):
+     result = hasTablePermission_result()
+     try:
+       result.success = self._handler.hasTablePermission(args.login, args.user, args.table, args.perm)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("hasTablePermission", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4639,11 +4639,11 @@ class Processor(Iface, TProcessor):
+     result = listLocalUsers_result()
+     try:
+       result.success = self._handler.listLocalUsers(args.login)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("listLocalUsers", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4657,9 +4657,9 @@ class Processor(Iface, TProcessor):
+     result = revokeSystemPermission_result()
+     try:
+       self._handler.revokeSystemPermission(args.login, args.user, args.perm)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("revokeSystemPermission", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4673,11 +4673,11 @@ class Processor(Iface, TProcessor):
+     result = revokeTablePermission_result()
+     try:
+       self._handler.revokeTablePermission(args.login, args.user, args.table, args.perm)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("revokeTablePermission", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4691,11 +4691,11 @@ class Processor(Iface, TProcessor):
+     result = createBatchScanner_result()
+     try:
+       result.success = self._handler.createBatchScanner(args.login, args.tableName, args.options)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("createBatchScanner", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4709,11 +4709,11 @@ class Processor(Iface, TProcessor):
+     result = createScanner_result()
+     try:
+       result.success = self._handler.createScanner(args.login, args.tableName, args.options)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("createScanner", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4727,7 +4727,7 @@ class Processor(Iface, TProcessor):
+     result = hasNext_result()
+     try:
+       result.success = self._handler.hasNext(args.scanner)
+-    except UnknownScanner as ouch1:
++    except UnknownScanner, ouch1:
+       result.ouch1 = ouch1
+     oprot.writeMessageBegin("hasNext", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4741,11 +4741,11 @@ class Processor(Iface, TProcessor):
+     result = nextEntry_result()
+     try:
+       result.success = self._handler.nextEntry(args.scanner)
+-    except NoMoreEntriesException as ouch1:
++    except NoMoreEntriesException, ouch1:
+       result.ouch1 = ouch1
+-    except UnknownScanner as ouch2:
++    except UnknownScanner, ouch2:
+       result.ouch2 = ouch2
+-    except AccumuloSecurityException as ouch3:
++    except AccumuloSecurityException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("nextEntry", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4759,11 +4759,11 @@ class Processor(Iface, TProcessor):
+     result = nextK_result()
+     try:
+       result.success = self._handler.nextK(args.scanner, args.k)
+-    except NoMoreEntriesException as ouch1:
++    except NoMoreEntriesException, ouch1:
+       result.ouch1 = ouch1
+-    except UnknownScanner as ouch2:
++    except UnknownScanner, ouch2:
+       result.ouch2 = ouch2
+-    except AccumuloSecurityException as ouch3:
++    except AccumuloSecurityException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("nextK", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4777,7 +4777,7 @@ class Processor(Iface, TProcessor):
+     result = closeScanner_result()
+     try:
+       self._handler.closeScanner(args.scanner)
+-    except UnknownScanner as ouch1:
++    except UnknownScanner, ouch1:
+       result.ouch1 = ouch1
+     oprot.writeMessageBegin("closeScanner", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4791,13 +4791,13 @@ class Processor(Iface, TProcessor):
+     result = updateAndFlush_result()
+     try:
+       self._handler.updateAndFlush(args.login, args.tableName, args.cells)
+-    except AccumuloException as outch1:
++    except AccumuloException, outch1:
+       result.outch1 = outch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+-    except MutationsRejectedException as ouch4:
++    except MutationsRejectedException, ouch4:
+       result.ouch4 = ouch4
+     oprot.writeMessageBegin("updateAndFlush", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4811,11 +4811,11 @@ class Processor(Iface, TProcessor):
+     result = createWriter_result()
+     try:
+       result.success = self._handler.createWriter(args.login, args.tableName, args.opts)
+-    except AccumuloException as outch1:
++    except AccumuloException, outch1:
+       result.outch1 = outch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("createWriter", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4836,9 +4836,9 @@ class Processor(Iface, TProcessor):
+     result = flush_result()
+     try:
+       self._handler.flush(args.writer)
+-    except UnknownWriter as ouch1:
++    except UnknownWriter, ouch1:
+       result.ouch1 = ouch1
+-    except MutationsRejectedException as ouch2:
++    except MutationsRejectedException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("flush", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4852,9 +4852,9 @@ class Processor(Iface, TProcessor):
+     result = closeWriter_result()
+     try:
+       self._handler.closeWriter(args.writer)
+-    except UnknownWriter as ouch1:
++    except UnknownWriter, ouch1:
+       result.ouch1 = ouch1
+-    except MutationsRejectedException as ouch2:
++    except MutationsRejectedException, ouch2:
+       result.ouch2 = ouch2
+     oprot.writeMessageBegin("closeWriter", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4868,11 +4868,11 @@ class Processor(Iface, TProcessor):
+     result = updateRowConditionally_result()
+     try:
+       result.success = self._handler.updateRowConditionally(args.login, args.tableName, args.row, args.updates)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("updateRowConditionally", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4886,11 +4886,11 @@ class Processor(Iface, TProcessor):
+     result = createConditionalWriter_result()
+     try:
+       result.success = self._handler.createConditionalWriter(args.login, args.tableName, args.options)
+-    except AccumuloException as ouch1:
++    except AccumuloException, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloSecurityException as ouch2:
++    except AccumuloSecurityException, ouch2:
+       result.ouch2 = ouch2
+-    except TableNotFoundException as ouch3:
++    except TableNotFoundException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("createConditionalWriter", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4904,11 +4904,11 @@ class Processor(Iface, TProcessor):
+     result = updateRowsConditionally_result()
+     try:
+       result.success = self._handler.updateRowsConditionally(args.conditionalWriter, args.updates)
+-    except UnknownWriter as ouch1:
++    except UnknownWriter, ouch1:
+       result.ouch1 = ouch1
+-    except AccumuloException as ouch2:
++    except AccumuloException, ouch2:
+       result.ouch2 = ouch2
+-    except AccumuloSecurityException as ouch3:
++    except AccumuloSecurityException, ouch3:
+       result.ouch3 = ouch3
+     oprot.writeMessageBegin("updateRowsConditionally", TMessageType.REPLY, seqid)
+     result.write(oprot)
+@@ -4985,7 +4985,7 @@ class login_args:
+       elif fid == 2:
+         if ftype == TType.MAP:
+           self.loginProperties = {}
+-          (_ktype136, _vtype137, _size135 ) = iprot.readMapBegin() 
++          (_ktype136, _vtype137, _size135 ) = iprot.readMapBegin()
+           for _i139 in xrange(_size135):
+             _key140 = iprot.readString();
+             _val141 = iprot.readString();
+@@ -6044,7 +6044,7 @@ class cloneTable_args:
+       elif fid == 5:
+         if ftype == TType.MAP:
+           self.propertiesToSet = {}
+-          (_ktype166, _vtype167, _size165 ) = iprot.readMapBegin() 
++          (_ktype166, _vtype167, _size165 ) = iprot.readMapBegin()
+           for _i169 in xrange(_size165):
+             _key170 = iprot.readString();
+             _val171 = iprot.readString();
+@@ -7792,7 +7792,7 @@ class getLocalityGroups_result:
+       if fid == 0:
+         if ftype == TType.MAP:
+           self.success = {}
+-          (_ktype203, _vtype204, _size202 ) = iprot.readMapBegin() 
++          (_ktype203, _vtype204, _size202 ) = iprot.readMapBegin()
+           for _i206 in xrange(_size202):
+             _key207 = iprot.readString();
+             _val208 = set()
+@@ -8413,7 +8413,7 @@ class getTableProperties_result:
+       if fid == 0:
+         if ftype == TType.MAP:
+           self.success = {}
+-          (_ktype226, _vtype227, _size225 ) = iprot.readMapBegin() 
++          (_ktype226, _vtype227, _size225 ) = iprot.readMapBegin()
+           for _i229 in xrange(_size225):
+             _key230 = iprot.readString();
+             _val231 = iprot.readString();
+@@ -9276,7 +9276,7 @@ class listIterators_result:
+       if fid == 0:
+         if ftype == TType.MAP:
+           self.success = {}
+-          (_ktype249, _vtype250, _size248 ) = iprot.readMapBegin() 
++          (_ktype249, _vtype250, _size248 ) = iprot.readMapBegin()
+           for _i252 in xrange(_size248):
+             _key253 = iprot.readString();
+             _val254 = set()
+@@ -9464,7 +9464,7 @@ class listConstraints_result:
+       if fid == 0:
+         if ftype == TType.MAP:
+           self.success = {}
+-          (_ktype265, _vtype266, _size264 ) = iprot.readMapBegin() 
++          (_ktype265, _vtype266, _size264 ) = iprot.readMapBegin()
+           for _i268 in xrange(_size264):
+             _key269 = iprot.readString();
+             _val270 = iprot.readI32();
+@@ -10822,7 +10822,7 @@ class setLocalityGroups_args:
+       elif fid == 3:
+         if ftype == TType.MAP:
+           self.groups = {}
+-          (_ktype281, _vtype282, _size280 ) = iprot.readMapBegin() 
++          (_ktype281, _vtype282, _size280 ) = iprot.readMapBegin()
+           for _i284 in xrange(_size280):
+             _key285 = iprot.readString();
+             _val286 = set()
+@@ -11572,7 +11572,7 @@ class tableIdMap_result:
+       if fid == 0:
+         if ftype == TType.MAP:
+           self.success = {}
+-          (_ktype304, _vtype305, _size303 ) = iprot.readMapBegin() 
++          (_ktype304, _vtype305, _size303 ) = iprot.readMapBegin()
+           for _i307 in xrange(_size303):
+             _key308 = iprot.readString();
+             _val309 = iprot.readString();
+@@ -12379,7 +12379,7 @@ class getSiteConfiguration_result:
+       if fid == 0:
+         if ftype == TType.MAP:
+           self.success = {}
+-          (_ktype327, _vtype328, _size326 ) = iprot.readMapBegin() 
++          (_ktype327, _vtype328, _size326 ) = iprot.readMapBegin()
+           for _i330 in xrange(_size326):
+             _key331 = iprot.readString();
+             _val332 = iprot.readString();
+@@ -12534,7 +12534,7 @@ class getSystemConfiguration_result:
+       if fid == 0:
+         if ftype == TType.MAP:
+           self.success = {}
+-          (_ktype336, _vtype337, _size335 ) = iprot.readMapBegin() 
++          (_ktype336, _vtype337, _size335 ) = iprot.readMapBegin()
+           for _i339 in xrange(_size335):
+             _key340 = iprot.readString();
+             _val341 = iprot.readString();
+@@ -13240,7 +13240,7 @@ class authenticateUser_args:
+       elif fid == 3:
+         if ftype == TType.MAP:
+           self.properties = {}
+-          (_ktype352, _vtype353, _size351 ) = iprot.readMapBegin() 
++          (_ktype352, _vtype353, _size351 ) = iprot.readMapBegin()
+           for _i355 in xrange(_size351):
+             _key356 = iprot.readString();
+             _val357 = iprot.readString();
+@@ -16372,7 +16372,7 @@ class updateAndFlush_args:
+       elif fid == 3:
+         if ftype == TType.MAP:
+           self.cells = {}
+-          (_ktype382, _vtype383, _size381 ) = iprot.readMapBegin() 
++          (_ktype382, _vtype383, _size381 ) = iprot.readMapBegin()
+           for _i385 in xrange(_size381):
+             _key386 = iprot.readString();
+             _val387 = []
+@@ -16750,7 +16750,7 @@ class update_args:
+       elif fid == 2:
+         if ftype == TType.MAP:
+           self.cells = {}
+-          (_ktype398, _vtype399, _size397 ) = iprot.readMapBegin() 
++          (_ktype398, _vtype399, _size397 ) = iprot.readMapBegin()
+           for _i401 in xrange(_size397):
+             _key402 = iprot.readString();
+             _val403 = []
+@@ -17487,7 +17487,7 @@ class updateRowsConditionally_args:
+       elif fid == 2:
+         if ftype == TType.MAP:
+           self.updates = {}
+-          (_ktype414, _vtype415, _size413 ) = iprot.readMapBegin() 
++          (_ktype414, _vtype415, _size413 ) = iprot.readMapBegin()
+           for _i417 in xrange(_size413):
+             _key418 = iprot.readString();
+             _val419 = ConditionalUpdates()
+@@ -17570,7 +17570,7 @@ class updateRowsConditionally_result:
+       if fid == 0:
+         if ftype == TType.MAP:
+           self.success = {}
+-          (_ktype423, _vtype424, _size422 ) = iprot.readMapBegin() 
++          (_ktype423, _vtype424, _size422 ) = iprot.readMapBegin()
+           for _i426 in xrange(_size422):
+             _key427 = iprot.readString();
+             _val428 = iprot.readI32();
+diff --git a/proxy/src/main/python/constants.py b/proxy/src/main/python/constants.py
+index e61382e..aea4826 100644
+--- a/proxy/src/main/python/constants.py
++++ b/proxy/src/main/python/constants.py
+@@ -13,7 +13,7 @@
+ # See the License for the specific language governing permissions and
+ # limitations under the License.
+ #
+-# Autogenerated by Thrift Compiler (0.9.0)
++# Autogenerated by Thrift Compiler (0.9.1)
+ #
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ #
+diff --git a/proxy/src/main/python/ttypes.py b/proxy/src/main/python/ttypes.py
+index 2ec3346..6a1b423 100644
+--- a/proxy/src/main/python/ttypes.py
++++ b/proxy/src/main/python/ttypes.py
+@@ -13,7 +13,7 @@
+ # See the License for the specific language governing permissions and
+ # limitations under the License.
+ #
+-# Autogenerated by Thrift Compiler (0.9.0)
++# Autogenerated by Thrift Compiler (0.9.1)
+ #
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ #
+@@ -925,7 +925,7 @@ class IteratorSetting:
+       elif fid == 4:
+         if ftype == TType.MAP:
+           self.properties = {}
+-          (_ktype15, _vtype16, _size14 ) = iprot.readMapBegin() 
++          (_ktype15, _vtype16, _size14 ) = iprot.readMapBegin()
+           for _i18 in xrange(_size14):
+             _key19 = iprot.readString();
+             _val20 = iprot.readString();
+diff --git a/proxy/src/main/ruby/accumulo_proxy.rb b/proxy/src/main/ruby/accumulo_proxy.rb
+index 4c8f484..16f7042 100644
+--- a/proxy/src/main/ruby/accumulo_proxy.rb
++++ b/proxy/src/main/ruby/accumulo_proxy.rb
+@@ -13,7 +13,7 @@
+ # See the License for the specific language governing permissions and
+ # limitations under the License.
+ #
+-# Autogenerated by Thrift Compiler (0.9.0)
++# Autogenerated by Thrift Compiler (0.9.1)
+ #
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ #
+diff --git a/proxy/src/main/ruby/proxy_constants.rb b/proxy/src/main/ruby/proxy_constants.rb
+index 2d676a6..98a589e 100644
+--- a/proxy/src/main/ruby/proxy_constants.rb
++++ b/proxy/src/main/ruby/proxy_constants.rb
+@@ -13,7 +13,7 @@
+ # See the License for the specific language governing permissions and
+ # limitations under the License.
+ #
+-# Autogenerated by Thrift Compiler (0.9.0)
++# Autogenerated by Thrift Compiler (0.9.1)
+ #
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ #
+diff --git a/proxy/src/main/ruby/proxy_types.rb b/proxy/src/main/ruby/proxy_types.rb
+index 8b9cbf0..722e248 100644
+--- a/proxy/src/main/ruby/proxy_types.rb
++++ b/proxy/src/main/ruby/proxy_types.rb
+@@ -13,7 +13,7 @@
+ # See the License for the specific language governing permissions and
+ # limitations under the License.
+ #
+-# Autogenerated by Thrift Compiler (0.9.0)
++# Autogenerated by Thrift Compiler (0.9.1)
+ #
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ #
+diff --git a/trace/src/main/java/org/apache/accumulo/trace/thrift/RemoteSpan.java b/trace/src/main/java/org/apache/accumulo/trace/thrift/RemoteSpan.java
+index 5ac08b7..416ae17 100644
+--- a/trace/src/main/java/org/apache/accumulo/trace/thrift/RemoteSpan.java
++++ b/trace/src/main/java/org/apache/accumulo/trace/thrift/RemoteSpan.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class RemoteSpan implements org.apache.thrift.TBase<RemoteSpan, RemoteSpan._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class RemoteSpan implements org.apache.thrift.TBase<RemoteSpan, RemoteSpan._Fields>, java.io.Serializable, Cloneable, Comparable<RemoteSpan> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("RemoteSpan");
+ 
+   private static final org.apache.thrift.protocol.TField SENDER_FIELD_DESC = new org.apache.thrift.protocol.TField("sender", org.apache.thrift.protocol.TType.STRING, (short)1);
+@@ -242,18 +244,7 @@ import org.slf4j.LoggerFactory;
+       this.description = other.description;
+     }
+     if (other.isSetData()) {
+-      Map<String,String> __this__data = new HashMap<String,String>();
+-      for (Map.Entry<String, String> other_element : other.data.entrySet()) {
+-
+-        String other_element_key = other_element.getKey();
+-        String other_element_value = other_element.getValue();
+-
+-        String __this__data_copy_key = other_element_key;
+-
+-        String __this__data_copy_value = other_element_value;
+-
+-        __this__data.put(__this__data_copy_key, __this__data_copy_value);
+-      }
++      Map<String,String> __this__data = new HashMap<String,String>(other.data);
+       this.data = __this__data;
+     }
+   }
+@@ -743,100 +734,100 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(RemoteSpan other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    RemoteSpan typedOther = (RemoteSpan)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetSender()).compareTo(typedOther.isSetSender());
++    lastComparison = Boolean.valueOf(isSetSender()).compareTo(other.isSetSender());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetSender()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sender, typedOther.sender);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.sender, other.sender);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetSvc()).compareTo(typedOther.isSetSvc());
++    lastComparison = Boolean.valueOf(isSetSvc()).compareTo(other.isSetSvc());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetSvc()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.svc, typedOther.svc);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.svc, other.svc);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetTraceId()).compareTo(typedOther.isSetTraceId());
++    lastComparison = Boolean.valueOf(isSetTraceId()).compareTo(other.isSetTraceId());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTraceId()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.traceId, typedOther.traceId);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.traceId, other.traceId);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetSpanId()).compareTo(typedOther.isSetSpanId());
++    lastComparison = Boolean.valueOf(isSetSpanId()).compareTo(other.isSetSpanId());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetSpanId()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.spanId, typedOther.spanId);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.spanId, other.spanId);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetParentId()).compareTo(typedOther.isSetParentId());
++    lastComparison = Boolean.valueOf(isSetParentId()).compareTo(other.isSetParentId());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetParentId()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.parentId, typedOther.parentId);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.parentId, other.parentId);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetStart()).compareTo(typedOther.isSetStart());
++    lastComparison = Boolean.valueOf(isSetStart()).compareTo(other.isSetStart());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetStart()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.start, typedOther.start);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.start, other.start);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetStop()).compareTo(typedOther.isSetStop());
++    lastComparison = Boolean.valueOf(isSetStop()).compareTo(other.isSetStop());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetStop()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.stop, typedOther.stop);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.stop, other.stop);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetDescription()).compareTo(typedOther.isSetDescription());
++    lastComparison = Boolean.valueOf(isSetDescription()).compareTo(other.isSetDescription());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetDescription()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.description, typedOther.description);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.description, other.description);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetData()).compareTo(typedOther.isSetData());
++    lastComparison = Boolean.valueOf(isSetData()).compareTo(other.isSetData());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetData()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.data, typedOther.data);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.data, other.data);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+@@ -1028,8 +1019,8 @@ import org.slf4j.LoggerFactory;
+                 struct.data = new HashMap<String,String>(2*_map0.size);
+                 for (int _i1 = 0; _i1 < _map0.size; ++_i1)
+                 {
+-                  String _key2; // required
+-                  String _val3; // required
++                  String _key2;
++                  String _val3;
+                   _key2 = iprot.readString();
+                   _val3 = iprot.readString();
+                   struct.data.put(_key2, _val3);
+@@ -1223,8 +1214,8 @@ import org.slf4j.LoggerFactory;
+           struct.data = new HashMap<String,String>(2*_map6.size);
+           for (int _i7 = 0; _i7 < _map6.size; ++_i7)
+           {
+-            String _key8; // required
+-            String _val9; // required
++            String _key8;
++            String _val9;
+             _key8 = iprot.readString();
+             _val9 = iprot.readString();
+             struct.data.put(_key8, _val9);
+diff --git a/trace/src/main/java/org/apache/accumulo/trace/thrift/SpanReceiver.java b/trace/src/main/java/org/apache/accumulo/trace/thrift/SpanReceiver.java
+index b7b57f8..4fe4c38 100644
+--- a/trace/src/main/java/org/apache/accumulo/trace/thrift/SpanReceiver.java
++++ b/trace/src/main/java/org/apache/accumulo/trace/thrift/SpanReceiver.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -56,7 +58,7 @@ import org.slf4j.LoggerFactory;
+ 
+   public interface AsyncIface {
+ 
+-    public void span(RemoteSpan span, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.span_call> resultHandler) throws org.apache.thrift.TException;
++    public void span(RemoteSpan span, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+   }
+ 
+@@ -110,7 +112,7 @@ import org.slf4j.LoggerFactory;
+       super(protocolFactory, clientManager, transport);
+     }
+ 
+-    public void span(RemoteSpan span, org.apache.thrift.async.AsyncMethodCallback<span_call> resultHandler) throws org.apache.thrift.TException {
++    public void span(RemoteSpan span, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       span_call method_call = new span_call(span, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -119,7 +121,7 @@ import org.slf4j.LoggerFactory;
+ 
+     public static class span_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private RemoteSpan span;
+-      public span_call(RemoteSpan span, org.apache.thrift.async.AsyncMethodCallback<span_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public span_call(RemoteSpan span, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, true);
+         this.span = span;
+       }
+@@ -179,7 +181,52 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class span_args implements org.apache.thrift.TBase<span_args, span_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class AsyncProcessor<I extends AsyncIface> extends org.apache.thrift.TBaseAsyncProcessor<I> {
++    private static final Logger LOGGER = LoggerFactory.getLogger(AsyncProcessor.class.getName());
++    public AsyncProcessor(I iface) {
++      super(iface, getProcessMap(new HashMap<String, org.apache.thrift.AsyncProcessFunction<I, ? extends org.apache.thrift.TBase, ?>>()));
++    }
++
++    protected AsyncProcessor(I iface, Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      super(iface, getProcessMap(processMap));
++    }
++
++    private static <I extends AsyncIface> Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase,?>> getProcessMap(Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      processMap.put("span", new span());
++      return processMap;
++    }
++
++    public static class span<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, span_args, Void> {
++      public span() {
++        super("span");
++      }
++
++      public span_args getEmptyArgsInstance() {
++        return new span_args();
++      }
++
++      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Void>() { 
++          public void onComplete(Void o) {
++          }
++          public void onError(Exception e) {
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return true;
++      }
++
++      public void start(I iface, span_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
++        iface.span(args.span,resultHandler);
++      }
++    }
++
++  }
++
++  public static class span_args implements org.apache.thrift.TBase<span_args, span_args._Fields>, java.io.Serializable, Cloneable, Comparable<span_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("span_args");
+ 
+     private static final org.apache.thrift.protocol.TField SPAN_FIELD_DESC = new org.apache.thrift.protocol.TField("span", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -377,20 +424,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(span_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      span_args typedOther = (span_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSpan()).compareTo(typedOther.isSetSpan());
++      lastComparison = Boolean.valueOf(isSetSpan()).compareTo(other.isSetSpan());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSpan()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.span, typedOther.span);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.span, other.span);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+diff --git a/trace/src/main/java/org/apache/accumulo/trace/thrift/TInfo.java b/trace/src/main/java/org/apache/accumulo/trace/thrift/TInfo.java
+index ed4f7c2..9f899bf 100644
+--- a/trace/src/main/java/org/apache/accumulo/trace/thrift/TInfo.java
++++ b/trace/src/main/java/org/apache/accumulo/trace/thrift/TInfo.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -46,7 +48,7 @@ import java.util.Arrays;
+ import org.slf4j.Logger;
+ import org.slf4j.LoggerFactory;
+ 
+- at SuppressWarnings("all") public class TInfo implements org.apache.thrift.TBase<TInfo, TInfo._Fields>, java.io.Serializable, Cloneable {
++ at SuppressWarnings("all") public class TInfo implements org.apache.thrift.TBase<TInfo, TInfo._Fields>, java.io.Serializable, Cloneable, Comparable<TInfo> {
+   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TInfo");
+ 
+   private static final org.apache.thrift.protocol.TField TRACE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("traceId", org.apache.thrift.protocol.TType.I64, (short)1);
+@@ -305,30 +307,30 @@ import org.slf4j.LoggerFactory;
+     return 0;
+   }
+ 
++  @Override
+   public int compareTo(TInfo other) {
+     if (!getClass().equals(other.getClass())) {
+       return getClass().getName().compareTo(other.getClass().getName());
+     }
+ 
+     int lastComparison = 0;
+-    TInfo typedOther = (TInfo)other;
+ 
+-    lastComparison = Boolean.valueOf(isSetTraceId()).compareTo(typedOther.isSetTraceId());
++    lastComparison = Boolean.valueOf(isSetTraceId()).compareTo(other.isSetTraceId());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetTraceId()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.traceId, typedOther.traceId);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.traceId, other.traceId);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+     }
+-    lastComparison = Boolean.valueOf(isSetParentId()).compareTo(typedOther.isSetParentId());
++    lastComparison = Boolean.valueOf(isSetParentId()).compareTo(other.isSetParentId());
+     if (lastComparison != 0) {
+       return lastComparison;
+     }
+     if (isSetParentId()) {
+-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.parentId, typedOther.parentId);
++      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.parentId, other.parentId);
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+diff --git a/trace/src/main/java/org/apache/accumulo/trace/thrift/TestService.java b/trace/src/main/java/org/apache/accumulo/trace/thrift/TestService.java
+index 60263f8..da5d64f 100644
+--- a/trace/src/main/java/org/apache/accumulo/trace/thrift/TestService.java
++++ b/trace/src/main/java/org/apache/accumulo/trace/thrift/TestService.java
+@@ -15,7 +15,7 @@
+  * limitations under the License.
+  */
+ /**
+- * Autogenerated by Thrift Compiler (0.9.0)
++ * Autogenerated by Thrift Compiler (0.9.1)
+  *
+  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+  *  @generated
+@@ -31,6 +31,8 @@ import org.apache.thrift.protocol.TTupleProtocol;
+ import org.apache.thrift.protocol.TProtocolException;
+ import org.apache.thrift.EncodingUtils;
+ import org.apache.thrift.TException;
++import org.apache.thrift.async.AsyncMethodCallback;
++import org.apache.thrift.server.AbstractNonblockingServer.*;
+ import java.util.List;
+ import java.util.ArrayList;
+ import java.util.Map;
+@@ -56,7 +58,7 @@ import org.slf4j.LoggerFactory;
+ 
+   public interface AsyncIface {
+ 
+-    public void checkTrace(TInfo tinfo, String message, org.apache.thrift.async.AsyncMethodCallback<AsyncClient.checkTrace_call> resultHandler) throws org.apache.thrift.TException;
++    public void checkTrace(TInfo tinfo, String message, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ 
+   }
+ 
+@@ -122,7 +124,7 @@ import org.slf4j.LoggerFactory;
+       super(protocolFactory, clientManager, transport);
+     }
+ 
+-    public void checkTrace(TInfo tinfo, String message, org.apache.thrift.async.AsyncMethodCallback<checkTrace_call> resultHandler) throws org.apache.thrift.TException {
++    public void checkTrace(TInfo tinfo, String message, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+       checkReady();
+       checkTrace_call method_call = new checkTrace_call(tinfo, message, resultHandler, this, ___protocolFactory, ___transport);
+       this.___currentMethod = method_call;
+@@ -132,7 +134,7 @@ import org.slf4j.LoggerFactory;
+     public static class checkTrace_call extends org.apache.thrift.async.TAsyncMethodCall {
+       private TInfo tinfo;
+       private String message;
+-      public checkTrace_call(TInfo tinfo, String message, org.apache.thrift.async.AsyncMethodCallback<checkTrace_call> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
++      public checkTrace_call(TInfo tinfo, String message, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+         super(client, protocolFactory, transport, resultHandler, false);
+         this.tinfo = tinfo;
+         this.message = message;
+@@ -197,7 +199,76 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class checkTrace_args implements org.apache.thrift.TBase<checkTrace_args, checkTrace_args._Fields>, java.io.Serializable, Cloneable   {
++  public static class AsyncProcessor<I extends AsyncIface> extends org.apache.thrift.TBaseAsyncProcessor<I> {
++    private static final Logger LOGGER = LoggerFactory.getLogger(AsyncProcessor.class.getName());
++    public AsyncProcessor(I iface) {
++      super(iface, getProcessMap(new HashMap<String, org.apache.thrift.AsyncProcessFunction<I, ? extends org.apache.thrift.TBase, ?>>()));
++    }
++
++    protected AsyncProcessor(I iface, Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      super(iface, getProcessMap(processMap));
++    }
++
++    private static <I extends AsyncIface> Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase,?>> getProcessMap(Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
++      processMap.put("checkTrace", new checkTrace());
++      return processMap;
++    }
++
++    public static class checkTrace<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, checkTrace_args, Boolean> {
++      public checkTrace() {
++        super("checkTrace");
++      }
++
++      public checkTrace_args getEmptyArgsInstance() {
++        return new checkTrace_args();
++      }
++
++      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
++        final org.apache.thrift.AsyncProcessFunction fcall = this;
++        return new AsyncMethodCallback<Boolean>() { 
++          public void onComplete(Boolean o) {
++            checkTrace_result result = new checkTrace_result();
++            result.success = o;
++            result.setSuccessIsSet(true);
++            try {
++              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
++              return;
++            } catch (Exception e) {
++              LOGGER.error("Exception writing to internal frame buffer", e);
++            }
++            fb.close();
++          }
++          public void onError(Exception e) {
++            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
++            org.apache.thrift.TBase msg;
++            checkTrace_result result = new checkTrace_result();
++            {
++              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
++              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
++            }
++            try {
++              fcall.sendResponse(fb,msg,msgType,seqid);
++              return;
++            } catch (Exception ex) {
++              LOGGER.error("Exception writing to internal frame buffer", ex);
++            }
++            fb.close();
++          }
++        };
++      }
++
++      protected boolean isOneway() {
++        return false;
++      }
++
++      public void start(I iface, checkTrace_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
++        iface.checkTrace(args.tinfo, args.message,resultHandler);
++      }
++    }
++
++  }
++
++  public static class checkTrace_args implements org.apache.thrift.TBase<checkTrace_args, checkTrace_args._Fields>, java.io.Serializable, Cloneable, Comparable<checkTrace_args>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("checkTrace_args");
+ 
+     private static final org.apache.thrift.protocol.TField TINFO_FIELD_DESC = new org.apache.thrift.protocol.TField("tinfo", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+@@ -454,30 +525,30 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(checkTrace_args other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      checkTrace_args typedOther = (checkTrace_args)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(typedOther.isSetTinfo());
++      lastComparison = Boolean.valueOf(isSetTinfo()).compareTo(other.isSetTinfo());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetTinfo()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, typedOther.tinfo);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tinfo, other.tinfo);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+       }
+-      lastComparison = Boolean.valueOf(isSetMessage()).compareTo(typedOther.isSetMessage());
++      lastComparison = Boolean.valueOf(isSetMessage()).compareTo(other.isSetMessage());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetMessage()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.message, typedOther.message);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.message, other.message);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+@@ -656,7 +727,7 @@ import org.slf4j.LoggerFactory;
+ 
+   }
+ 
+-  public static class checkTrace_result implements org.apache.thrift.TBase<checkTrace_result, checkTrace_result._Fields>, java.io.Serializable, Cloneable   {
++  public static class checkTrace_result implements org.apache.thrift.TBase<checkTrace_result, checkTrace_result._Fields>, java.io.Serializable, Cloneable, Comparable<checkTrace_result>   {
+     private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("checkTrace_result");
+ 
+     private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+@@ -856,20 +927,20 @@ import org.slf4j.LoggerFactory;
+       return 0;
+     }
+ 
++    @Override
+     public int compareTo(checkTrace_result other) {
+       if (!getClass().equals(other.getClass())) {
+         return getClass().getName().compareTo(other.getClass().getName());
+       }
+ 
+       int lastComparison = 0;
+-      checkTrace_result typedOther = (checkTrace_result)other;
+ 
+-      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(typedOther.isSetSuccess());
++      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+       if (lastComparison != 0) {
+         return lastComparison;
+       }
+       if (isSetSuccess()) {
+-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, typedOther.success);
++        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+         if (lastComparison != 0) {
+           return lastComparison;
+         }
+-- 
+1.8.3.1
+
diff --git a/ACCUMULO-2808.patch b/ACCUMULO-2808.patch
new file mode 100644
index 0000000..2b73ccf
--- /dev/null
+++ b/ACCUMULO-2808.patch
@@ -0,0 +1,406 @@
+From 802314463a82fb35c7a7839949129206cd6d16e0 Mon Sep 17 00:00:00 2001
+From: Christopher Tubbs <ctubbsii at apache.org>
+Date: Thu, 15 May 2014 20:11:44 -0400
+Subject: [PATCH] ACCUMULO-2808 Update to Jetty 9
+
+  Includes packaging improvements for the assembly, so that it will not
+  interfere with hadoop-provided libraries, including bundling jetty and slf4j
+  jars.
+---
+ assemble/pom.xml                                   | 36 ++++++++++++
+ assemble/src/main/assemblies/component.xml         | 13 ++++-
+ conf/templates/accumulo-site.xml                   |  4 +-
+ pom.xml                                            | 38 ++++++++++--
+ server/monitor/pom.xml                             | 36 +++++++++---
+ .../apache/accumulo/monitor/EmbeddedWebServer.java | 67 +++++++++++-----------
+ start/pom.xml                                      |  4 +-
+ test/pom.xml                                       |  4 +-
+ 8 files changed, 148 insertions(+), 54 deletions(-)
+
+diff --git a/assemble/pom.xml b/assemble/pom.xml
+index 9ebd2de..b918bea 100644
+--- a/assemble/pom.xml
++++ b/assemble/pom.xml
+@@ -44,6 +44,10 @@
+       <artifactId>guava</artifactId>
+     </dependency>
+     <dependency>
++      <groupId>javax.servlet</groupId>
++      <artifactId>javax.servlet-api</artifactId>
++    </dependency>
++    <dependency>
+       <groupId>jline</groupId>
+       <artifactId>jline</artifactId>
+     </dependency>
+@@ -120,6 +124,38 @@
+       <groupId>org.apache.thrift</groupId>
+       <artifactId>libthrift</artifactId>
+     </dependency>
++    <dependency>
++      <groupId>org.eclipse.jetty</groupId>
++      <artifactId>jetty-http</artifactId>
++    </dependency>
++    <dependency>
++      <groupId>org.eclipse.jetty</groupId>
++      <artifactId>jetty-io</artifactId>
++    </dependency>
++    <dependency>
++      <groupId>org.eclipse.jetty</groupId>
++      <artifactId>jetty-security</artifactId>
++    </dependency>
++    <dependency>
++      <groupId>org.eclipse.jetty</groupId>
++      <artifactId>jetty-server</artifactId>
++    </dependency>
++    <dependency>
++      <groupId>org.eclipse.jetty</groupId>
++      <artifactId>jetty-servlet</artifactId>
++    </dependency>
++    <dependency>
++      <groupId>org.eclipse.jetty</groupId>
++      <artifactId>jetty-util</artifactId>
++    </dependency>
++    <dependency>
++      <groupId>org.slf4j</groupId>
++      <artifactId>slf4j-api</artifactId>
++    </dependency>
++    <dependency>
++      <groupId>org.slf4j</groupId>
++      <artifactId>slf4j-log4j12</artifactId>
++    </dependency>
+   </dependencies>
+   <profiles>
+     <profile>
+diff --git a/assemble/src/main/assemblies/component.xml b/assemble/src/main/assemblies/component.xml
+index 747444b..7efa48b 100644
+--- a/assemble/src/main/assemblies/component.xml
++++ b/assemble/src/main/assemblies/component.xml
+@@ -27,13 +27,22 @@
+       <useTransitiveDependencies>false</useTransitiveDependencies>
+       <includes>
+         <include>${groupId}:${artifactId}-*</include>
+-        <include>org.apache.commons:commons-math</include>
+-        <include>org.apache.commons:commons-vfs2</include>
+         <include>com.beust:jcommander</include>
+         <include>com.google.code.gson:gson</include>
+         <include>com.google.guava:guava</include>
++        <include>javax.servlet:javax.servlet-api</include>
+         <include>jline:jline</include>
++        <include>org.apache.commons:commons-math</include>
++        <include>org.apache.commons:commons-vfs2</include>
+         <include>org.apache.thrift:libthrift</include>
++        <include>org.eclipse.jetty:jetty-http</include>
++        <include>org.eclipse.jetty:jetty-io</include>
++        <include>org.eclipse.jetty:jetty-security</include>
++        <include>org.eclipse.jetty:jetty-server</include>
++        <include>org.eclipse.jetty:jetty-servlet</include>
++        <include>org.eclipse.jetty:jetty-util</include>
++        <include>org.slf4j:slf4j-api</include>
++        <include>org.slf4j:slf4j-log4j12</include>
+       </includes>
+       <excludes>
+         <exclude>${groupId}:${artifactId}-docs</exclude>
+diff --git a/conf/templates/accumulo-site.xml b/conf/templates/accumulo-site.xml
+index 052ed7e..08c905b 100644
+--- a/conf/templates/accumulo-site.xml
++++ b/conf/templates/accumulo-site.xml
+@@ -110,7 +110,7 @@ ${mvnProjBaseDir}
+ 
+       <!-- Hadoop 2 requirements -->
+       $HADOOP_PREFIX/share/hadoop/common/[^.].*.jar,
+-      $HADOOP_PREFIX/share/hadoop/common/lib/[^.].*.jar,
++      $HADOOP_PREFIX/share/hadoop/common/lib/(?!slf4j)[^.].*.jar,
+       $HADOOP_PREFIX/share/hadoop/hdfs/[^.].*.jar,
+       $HADOOP_PREFIX/share/hadoop/mapreduce/[^.].*.jar,
+       $HADOOP_PREFIX/share/hadoop/yarn/[^.].*.jar,
+@@ -123,7 +123,7 @@ ${mvnProjBaseDir}
+ 
+       <!-- Hadoop 1 requirements -->
+       $HADOOP_PREFIX/[^.].*.jar,
+-      $HADOOP_PREFIX/lib/[^.].*.jar,
++      $HADOOP_PREFIX/lib/(?!slf4j)[^.].*.jar,
+       <!-- End Hadoop 1 requirements -->
+ 
+     </value>
+diff --git a/pom.xml b/pom.xml
+index 43aa5fb..f69273b 100644
+--- a/pom.xml
++++ b/pom.xml
+@@ -123,6 +123,7 @@
+     <!-- overwritten in profiles hadoop-1 or hadoop-2 -->
+     <hadoop.version>2.2.0</hadoop.version>
+     <httpclient.version>3.1</httpclient.version>
++    <jetty.version>9.1.5.v20140505</jetty.version>
+     <!-- the maven-release-plugin makes this recommendation, due to plugin bugs -->
+     <maven.min-version>3.0.4</maven.min-version>
+     <!-- surefire/failsafe plugin option -->
+@@ -195,8 +196,8 @@
+       </dependency>
+       <dependency>
+         <groupId>javax.servlet</groupId>
+-        <artifactId>servlet-api</artifactId>
+-        <version>2.5</version>
++        <artifactId>javax.servlet-api</artifactId>
++        <version>3.1.0</version>
+       </dependency>
+       <dependency>
+         <groupId>javax.ws.rs</groupId>
+@@ -407,9 +408,34 @@
+         <version>3.1</version>
+       </dependency>
+       <dependency>
+-        <groupId>org.mortbay.jetty</groupId>
+-        <artifactId>jetty</artifactId>
+-        <version>6.1.26</version>
++        <groupId>org.eclipse.jetty</groupId>
++        <artifactId>jetty-http</artifactId>
++        <version>${jetty.version}</version>
++      </dependency>
++      <dependency>
++        <groupId>org.eclipse.jetty</groupId>
++        <artifactId>jetty-io</artifactId>
++        <version>${jetty.version}</version>
++      </dependency>
++      <dependency>
++        <groupId>org.eclipse.jetty</groupId>
++        <artifactId>jetty-security</artifactId>
++        <version>${jetty.version}</version>
++      </dependency>
++      <dependency>
++        <groupId>org.eclipse.jetty</groupId>
++        <artifactId>jetty-server</artifactId>
++        <version>${jetty.version}</version>
++      </dependency>
++      <dependency>
++        <groupId>org.eclipse.jetty</groupId>
++        <artifactId>jetty-servlet</artifactId>
++        <version>${jetty.version}</version>
++      </dependency>
++      <dependency>
++        <groupId>org.eclipse.jetty</groupId>
++        <artifactId>jetty-util</artifactId>
++        <version>${jetty.version}</version>
+       </dependency>
+       <dependency>
+         <groupId>org.powermock</groupId>
+@@ -1098,7 +1124,7 @@
+       <properties>
+         <hadoop.version>1.2.1</hadoop.version>
+         <httpclient.version>3.0.1</httpclient.version>
+-        <slf4j.version>1.4.3</slf4j.version>
++        <slf4j.version>1.7.5</slf4j.version>
+       </properties>
+     </profile>
+     <!-- profile for building against Hadoop 2.x
+diff --git a/server/monitor/pom.xml b/server/monitor/pom.xml
+index ccc455e..dba7809 100644
+--- a/server/monitor/pom.xml
++++ b/server/monitor/pom.xml
+@@ -41,7 +41,7 @@
+     </dependency>
+     <dependency>
+       <groupId>javax.servlet</groupId>
+-      <artifactId>servlet-api</artifactId>
++      <artifactId>javax.servlet-api</artifactId>
+     </dependency>
+     <dependency>
+       <groupId>jline</groupId>
+@@ -80,22 +80,44 @@
+       <artifactId>zookeeper</artifactId>
+     </dependency>
+     <dependency>
+-      <groupId>org.mortbay.jetty</groupId>
+-      <artifactId>jetty</artifactId>
++      <groupId>org.eclipse.jetty</groupId>
++      <artifactId>jetty-security</artifactId>
+     </dependency>
+     <dependency>
+-      <groupId>junit</groupId>
+-      <artifactId>junit</artifactId>
+-      <scope>test</scope>
++      <groupId>org.eclipse.jetty</groupId>
++      <artifactId>jetty-server</artifactId>
++    </dependency>
++    <dependency>
++      <groupId>org.eclipse.jetty</groupId>
++      <artifactId>jetty-servlet</artifactId>
++    </dependency>
++    <dependency>
++      <groupId>org.eclipse.jetty</groupId>
++      <artifactId>jetty-util</artifactId>
++    </dependency>
++    <dependency>
++      <groupId>org.eclipse.jetty</groupId>
++      <artifactId>jetty-http</artifactId>
++      <scope>runtime</scope>
++    </dependency>
++    <dependency>
++      <groupId>org.eclipse.jetty</groupId>
++      <artifactId>jetty-io</artifactId>
++      <scope>runtime</scope>
+     </dependency>
+     <dependency>
+       <groupId>org.slf4j</groupId>
+       <artifactId>slf4j-api</artifactId>
+-      <scope>test</scope>
++      <scope>runtime</scope>
+     </dependency>
+     <dependency>
+       <groupId>org.slf4j</groupId>
+       <artifactId>slf4j-log4j12</artifactId>
++      <scope>runtime</scope>
++    </dependency>
++    <dependency>
++      <groupId>junit</groupId>
++      <artifactId>junit</artifactId>
+       <scope>test</scope>
+     </dependency>
+   </dependencies>
+diff --git a/server/monitor/src/main/java/org/apache/accumulo/monitor/EmbeddedWebServer.java b/server/monitor/src/main/java/org/apache/accumulo/monitor/EmbeddedWebServer.java
+index 1eeb04e..c76b4cf 100644
+--- a/server/monitor/src/main/java/org/apache/accumulo/monitor/EmbeddedWebServer.java
++++ b/server/monitor/src/main/java/org/apache/accumulo/monitor/EmbeddedWebServer.java
+@@ -19,60 +19,61 @@ package org.apache.accumulo.monitor;
+ import javax.servlet.http.HttpServlet;
+ 
+ import org.apache.accumulo.core.conf.Property;
+-import org.mortbay.jetty.Server;
+-import org.mortbay.jetty.bio.SocketConnector;
+-import org.mortbay.jetty.handler.ContextHandlerCollection;
+-import org.mortbay.jetty.security.SslSocketConnector;
+-import org.mortbay.jetty.servlet.Context;
+-import org.mortbay.jetty.servlet.SessionHandler;
++import org.eclipse.jetty.server.HttpConnectionFactory;
++import org.eclipse.jetty.server.Server;
++import org.eclipse.jetty.server.ServerConnector;
++import org.eclipse.jetty.server.session.SessionHandler;
++import org.eclipse.jetty.servlet.ServletContextHandler;
++import org.eclipse.jetty.util.ssl.SslContextFactory;
+ 
+ public class EmbeddedWebServer {
+   private static String EMPTY = "";
+-  
++
+   Server server = null;
+-  SocketConnector sock;
+-  ContextHandlerCollection handler;
+-  Context root;
++  ServerConnector connector = null;
++  ServletContextHandler handler;
+   boolean usingSsl;
+-  
++
+   public EmbeddedWebServer() {
+     this("0.0.0.0", 0);
+   }
+-  
++
+   public EmbeddedWebServer(String host, int port) {
+     server = new Server();
+-    handler = new ContextHandlerCollection();
+-    root = new Context(handler, "/", new SessionHandler(), null, null, null);
+-    
+     if (EMPTY.equals(Monitor.getSystemConfiguration().get(Property.MONITOR_SSL_KEYSTORE))
+         || EMPTY.equals(Monitor.getSystemConfiguration().get(Property.MONITOR_SSL_KEYSTOREPASS))
+-        || EMPTY.equals(Monitor.getSystemConfiguration().get(Property.MONITOR_SSL_TRUSTSTORE))
+-        || EMPTY.equals(Monitor.getSystemConfiguration().get(Property.MONITOR_SSL_TRUSTSTOREPASS))) {
+-      sock = new SocketConnector();
++        || EMPTY.equals(Monitor.getSystemConfiguration().get(Property.MONITOR_SSL_TRUSTSTORE)) || EMPTY.equals(Monitor.getSystemConfiguration().get(
++Property.MONITOR_SSL_TRUSTSTOREPASS))) {
++      connector = new ServerConnector(server, new HttpConnectionFactory());
+       usingSsl = false;
+     } else {
+-      sock = new SslSocketConnector();
+-      ((SslSocketConnector) sock).setKeystore(Monitor.getSystemConfiguration().get(Property.MONITOR_SSL_KEYSTORE));
+-      ((SslSocketConnector) sock).setKeyPassword(Monitor.getSystemConfiguration().get(Property.MONITOR_SSL_KEYSTOREPASS));
+-      ((SslSocketConnector) sock).setTruststore(Monitor.getSystemConfiguration().get(Property.MONITOR_SSL_TRUSTSTORE));
+-      ((SslSocketConnector) sock).setTrustPassword(Monitor.getSystemConfiguration().get(Property.MONITOR_SSL_TRUSTSTOREPASS));
++      SslContextFactory sslContextFactory = new SslContextFactory();
++      sslContextFactory.setKeyStorePath(Monitor.getSystemConfiguration().get(Property.MONITOR_SSL_KEYSTORE));
++      sslContextFactory.setKeyStorePassword(Monitor.getSystemConfiguration().get(Property.MONITOR_SSL_KEYSTOREPASS));
++      sslContextFactory.setTrustStorePath(Monitor.getSystemConfiguration().get(Property.MONITOR_SSL_TRUSTSTORE));
++      sslContextFactory.setTrustStorePassword(Monitor.getSystemConfiguration().get(Property.MONITOR_SSL_TRUSTSTOREPASS));
++
++      connector = new ServerConnector(server, sslContextFactory);
+       usingSsl = true;
+     }
+-    sock.setHost(host);
+-    sock.setPort(port);
++
++    connector.setHost(host);
++    connector.setPort(port);
++
++    handler = new ServletContextHandler(server, "/", new SessionHandler(), null, null, null);
+   }
+-  
++
+   public void addServlet(Class<? extends HttpServlet> klass, String where) {
+-    root.addServlet(klass, where);
++    handler.addServlet(klass, where);
+   }
+-  
++
+   public int getPort() {
+-    return sock.getLocalPort();
++    return connector.getLocalPort();
+   }
+-  
++
+   public void start() {
+     try {
+-      server.addConnector(sock);
++      server.addConnector(connector);
+       server.setHandler(handler);
+       server.start();
+     } catch (Exception e) {
+@@ -80,7 +81,7 @@ public class EmbeddedWebServer {
+       throw new RuntimeException(e);
+     }
+   }
+-  
++
+   public void stop() {
+     try {
+       server.stop();
+@@ -88,7 +89,7 @@ public class EmbeddedWebServer {
+       throw new RuntimeException(e);
+     }
+   }
+-  
++
+   public boolean isUsingSsl() {
+     return usingSsl;
+   }
+diff --git a/start/pom.xml b/start/pom.xml
+index ee288a3..6a37f36 100644
+--- a/start/pom.xml
++++ b/start/pom.xml
+@@ -71,8 +71,8 @@
+       <scope>test</scope>
+     </dependency>
+     <dependency>
+-      <groupId>org.mortbay.jetty</groupId>
+-      <artifactId>jetty</artifactId>
++      <groupId>org.eclipse.jetty</groupId>
++      <artifactId>jetty-server</artifactId>
+       <scope>test</scope>
+     </dependency>
+     <dependency>
+diff --git a/test/pom.xml b/test/pom.xml
+index 5d12ba6..01e4aaa 100644
+--- a/test/pom.xml
++++ b/test/pom.xml
+@@ -166,8 +166,8 @@
+       <scope>test</scope>
+     </dependency>
+     <dependency>
+-      <groupId>org.mortbay.jetty</groupId>
+-      <artifactId>jetty</artifactId>
++      <groupId>org.eclipse.jetty</groupId>
++      <artifactId>jetty-server</artifactId>
+       <scope>test</scope>
+     </dependency>
+     <dependency>
+-- 
+1.8.3.1
+
diff --git a/ACCUMULO-2812.patch b/ACCUMULO-2812.patch
new file mode 100644
index 0000000..d78b453
--- /dev/null
+++ b/ACCUMULO-2812.patch
@@ -0,0 +1,60 @@
+From a1c0ef575bade8c1bf55a57bed0088dc038624f5 Mon Sep 17 00:00:00 2001
+From: Christopher Tubbs <ctubbsii at apache.org>
+Date: Thu, 15 May 2014 16:01:07 -0400
+Subject: [PATCH] ACCUMULO-2812 Pass options to compiler for native lib
+
+  Use system default architecture options when compiling, instead of forcing
+  -m64. Allow passing additional arguments (USERFLAGS) to specify additional
+  compiler options. Set USERFLAGS with the build_native_library.sh's
+  command-line arguments.
+---
+ bin/build_native_library.sh               | 1 +
+ server/native/src/main/resources/Makefile | 7 ++++---
+ 2 files changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/bin/build_native_library.sh b/bin/build_native_library.sh
+index 65b2457..907ce2c 100755
+--- a/bin/build_native_library.sh
++++ b/bin/build_native_library.sh
+@@ -56,6 +56,7 @@ native_dir=`find "${TMP_DIR}" -maxdepth 1 -mindepth 1 -type d`
+ cd "${native_dir}"
+ 
+ # Make the native library
++export USERFLAGS=$@
+ make
+ 
+ # Make sure it didn't fail
+diff --git a/server/native/src/main/resources/Makefile b/server/native/src/main/resources/Makefile
+index 33c2fe9..b9211aa 100644
+--- a/server/native/src/main/resources/Makefile
++++ b/server/native/src/main/resources/Makefile
+@@ -18,14 +18,15 @@ HDRS=$(wildcard nativeMap/*.h) $(wildcard javah/*.h)
+ TESTSRCS=$(wildcard testNativeMap/*.cc)
+ CXX=g++
+ MAVERICKFLAGS=
++USERFLAGS=$(shell env | grep "^USERFLAGS=" | cut -d= -f2)
+ 
+ ifeq ($(shell uname),Linux)
+-	JAVA_HOME=$(shell env | fgrep JAVA_HOME | cut -d= -f2)
++	JAVA_HOME=$(shell env | grep "^JAVA_HOME=" | cut -d= -f2)
+ 	ifeq ($(strip $(JAVA_HOME)),)
+ 		JAVA_HOME=$(shell dirname $$(dirname $$(readlink -ef $$(which javah))))
+ 	endif
+ 	NATIVE_LIB := libaccumulo.so
+-	CXXFLAGS=-m64 -g -fPIC -shared -O3 -Wall -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux -Ijavah
++	CXXFLAGS=-g -fPIC -shared -O3 -Wall -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux -Ijavah $(USERFLAGS)
+ endif
+ 
+ ifeq ($(shell uname),Darwin)
+@@ -34,7 +35,7 @@ ifeq ($(shell uname),Darwin)
+ ifneq (,$(findstring 10.9,$(shell sw_vers -productVersion)))
+ 	MAVERICKFLAGS=-stdlib=libstdc++
+ endif
+-	CXXFLAGS=-m64 -dynamiclib -undefined dynamic_lookup -O3 -I/System/Library/Frameworks/JavaVM.framework/Headers -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/darwin -Ijavah $(MAVERICK_FLAGS)
++	CXXFLAGS=-dynamiclib -undefined dynamic_lookup -O3 -I/System/Library/Frameworks/JavaVM.framework/Headers -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/darwin -Ijavah $(USERFLAGS) $(MAVERICK_FLAGS)
+ endif
+ 
+ all : $(NATIVE_LIB)
+-- 
+1.8.3.1
+
diff --git a/ACCUMULO-2950.patch b/ACCUMULO-2950.patch
new file mode 100644
index 0000000..c347ad7
--- /dev/null
+++ b/ACCUMULO-2950.patch
@@ -0,0 +1,456 @@
+From 771d16988099a47dca845d6924335e4bcfd3d213 Mon Sep 17 00:00:00 2001
+From: Christopher Tubbs <ctubbsii at apache.org>
+Date: Fri, 27 Jun 2014 17:02:38 -0400
+Subject: [PATCH] ACCUMULO-2950 Add an RpcWrapper class
+
+  Adds an RpcWrapper class to reintroduce the previous behavior in Thrift 0.9.0
+  that was broken by THRIFT-1805 in Thrift 0.9.1. This is done by extending the
+  InvocationHandler that was already being used to incorporate Trace information
+  into the RPC calls, but now also translates exceptions to one that Thrift
+  0.9.1 will expose to the client as a TApplicationException.INTERNAL_ERROR
+---
+ .../main/java/org/apache/accumulo/proxy/Proxy.java |  4 +-
+ server/base/pom.xml                                | 19 +++---
+ .../apache/accumulo/server/util/RpcWrapper.java    | 62 ++++++++++++++++++++
+ .../apache/accumulo/gc/SimpleGarbageCollector.java |  4 +-
+ .../java/org/apache/accumulo/master/Master.java    |  4 +-
+ .../org/apache/accumulo/tserver/TabletServer.java  |  4 +-
+ .../thrift/RpcClientInvocationHandler.java         | 54 +++++++++++++++++
+ .../thrift/RpcServerInvocationHandler.java         | 53 +++++++++++++++++
+ .../trace/instrument/thrift/TraceWrap.java         | 68 +++++-----------------
+ 9 files changed, 200 insertions(+), 72 deletions(-)
+ create mode 100644 server/base/src/main/java/org/apache/accumulo/server/util/RpcWrapper.java
+ create mode 100644 trace/src/main/java/org/apache/accumulo/trace/instrument/thrift/RpcClientInvocationHandler.java
+ create mode 100644 trace/src/main/java/org/apache/accumulo/trace/instrument/thrift/RpcServerInvocationHandler.java
+
+diff --git a/proxy/src/main/java/org/apache/accumulo/proxy/Proxy.java b/proxy/src/main/java/org/apache/accumulo/proxy/Proxy.java
+index 3e404b1..8130631 100644
+--- a/proxy/src/main/java/org/apache/accumulo/proxy/Proxy.java
++++ b/proxy/src/main/java/org/apache/accumulo/proxy/Proxy.java
+@@ -27,6 +27,7 @@ import org.apache.accumulo.core.cli.Help;
+ import org.apache.accumulo.core.conf.AccumuloConfiguration;
+ import org.apache.accumulo.minicluster.MiniAccumuloCluster;
+ import org.apache.accumulo.proxy.thrift.AccumuloProxy;
++import org.apache.accumulo.server.util.RpcWrapper;
+ import org.apache.log4j.Logger;
+ import org.apache.thrift.TProcessor;
+ import org.apache.thrift.protocol.TCompactProtocol;
+@@ -100,6 +101,7 @@ public class Proxy {
+       opts.prop.setProperty("instance", accumulo.getConfig().getInstanceName());
+       opts.prop.setProperty("zookeepers", accumulo.getZooKeepers());
+       Runtime.getRuntime().addShutdownHook(new Thread() {
++        @Override
+         public void start() {
+           try {
+             accumulo.stop();
+@@ -133,7 +135,7 @@ public class Proxy {
+     @SuppressWarnings("unchecked")
+     Constructor<? extends TProcessor> proxyProcConstructor = (Constructor<? extends TProcessor>) proxyProcClass.getConstructor(proxyIfaceClass);
+     
+-    final TProcessor processor = proxyProcConstructor.newInstance(impl);
++    final TProcessor processor = proxyProcConstructor.newInstance(RpcWrapper.service(impl));
+     
+     THsHaServer.Args args = new THsHaServer.Args(socket);
+     args.processor(processor);
+diff --git a/server/base/pom.xml b/server/base/pom.xml
+index 758a40e..1f15d32 100644
+--- a/server/base/pom.xml
++++ b/server/base/pom.xml
+@@ -92,23 +92,22 @@
+       <artifactId>zookeeper</artifactId>
+     </dependency>
+     <dependency>
+-      <groupId>junit</groupId>
+-      <artifactId>junit</artifactId>
+-      <scope>test</scope>
++      <groupId>org.slf4j</groupId>
++      <artifactId>slf4j-api</artifactId>
+     </dependency>
+     <dependency>
+-      <groupId>org.easymock</groupId>
+-      <artifactId>easymock</artifactId>
+-      <scope>test</scope>
++      <groupId>org.slf4j</groupId>
++      <artifactId>slf4j-log4j12</artifactId>
++      <scope>runtime</scope>
+     </dependency>
+     <dependency>
+-      <groupId>org.slf4j</groupId>
+-      <artifactId>slf4j-api</artifactId>
++      <groupId>junit</groupId>
++      <artifactId>junit</artifactId>
+       <scope>test</scope>
+     </dependency>
+     <dependency>
+-      <groupId>org.slf4j</groupId>
+-      <artifactId>slf4j-log4j12</artifactId>
++      <groupId>org.easymock</groupId>
++      <artifactId>easymock</artifactId>
+       <scope>test</scope>
+     </dependency>
+   </dependencies>
+diff --git a/server/base/src/main/java/org/apache/accumulo/server/util/RpcWrapper.java b/server/base/src/main/java/org/apache/accumulo/server/util/RpcWrapper.java
+new file mode 100644
+index 0000000..02bd1ef
+--- /dev/null
++++ b/server/base/src/main/java/org/apache/accumulo/server/util/RpcWrapper.java
+@@ -0,0 +1,62 @@
++/*
++ * Licensed to the Apache Software Foundation (ASF) under one or more
++ * contributor license agreements.  See the NOTICE file distributed with
++ * this work for additional information regarding copyright ownership.
++ * The ASF licenses this file to You under the Apache License, Version 2.0
++ * (the "License"); you may not use this file except in compliance with
++ * the License.  You may obtain a copy of the License at
++ *
++ *     http://www.apache.org/licenses/LICENSE-2.0
++ *
++ * Unless required by applicable law or agreed to in writing, software
++ * distributed under the License is distributed on an "AS IS" BASIS,
++ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
++ * See the License for the specific language governing permissions and
++ * limitations under the License.
++ */
++package org.apache.accumulo.server.util;
++
++import java.lang.reflect.InvocationHandler;
++import java.lang.reflect.Method;
++import java.lang.reflect.Proxy;
++
++import org.apache.accumulo.trace.instrument.thrift.RpcServerInvocationHandler;
++import org.apache.accumulo.trace.instrument.thrift.TraceWrap;
++import org.apache.thrift.TApplicationException;
++import org.apache.thrift.TException;
++import org.slf4j.LoggerFactory;
++
++/**
++ * This class accommodates the changes in THRIFT-1805, which appeared in Thrift 0.9.1 and restricts client-side notification of server-side errors to
++ * {@link TException} only, by wrapping {@link RuntimeException} and {@link Error} as {@link TException}, so it doesn't just close the connection and look like
++ * a network issue, but informs the client that a {@link TApplicationException} had occurred, as it did in Thrift 0.9.0. This performs similar functions as
++ * {@link TraceWrap}, but with the additional action of translating exceptions. See also ACCUMULO-1691 and ACCUMULO-2950.
++ * 
++ * @since 1.6.1
++ */
++public class RpcWrapper {
++
++  public static <T> T service(final T instance) {
++    InvocationHandler handler = new RpcServerInvocationHandler<T>(instance) {
++      @Override
++      public Object invoke(Object obj, Method method, Object[] args) throws Throwable {
++        try {
++          return super.invoke(obj, method, args);
++        } catch (RuntimeException e) {
++          String msg = e.getMessage();
++          LoggerFactory.getLogger(instance.getClass()).error(msg, e);
++          throw new TException(msg);
++        } catch (Error e) {
++          String msg = e.getMessage();
++          LoggerFactory.getLogger(instance.getClass()).error(msg, e);
++          throw new TException(msg);
++        }
++      }
++    };
++
++    @SuppressWarnings("unchecked")
++    T proxiedInstance = (T) Proxy.newProxyInstance(instance.getClass().getClassLoader(), instance.getClass().getInterfaces(), handler);
++    return proxiedInstance;
++  }
++
++}
+diff --git a/server/gc/src/main/java/org/apache/accumulo/gc/SimpleGarbageCollector.java b/server/gc/src/main/java/org/apache/accumulo/gc/SimpleGarbageCollector.java
+index 39716eb..62641a0 100644
+--- a/server/gc/src/main/java/org/apache/accumulo/gc/SimpleGarbageCollector.java
++++ b/server/gc/src/main/java/org/apache/accumulo/gc/SimpleGarbageCollector.java
+@@ -85,6 +85,7 @@ import org.apache.accumulo.server.fs.VolumeUtil;
+ import org.apache.accumulo.server.security.SystemCredentials;
+ import org.apache.accumulo.server.tables.TableManager;
+ import org.apache.accumulo.server.util.Halt;
++import org.apache.accumulo.server.util.RpcWrapper;
+ import org.apache.accumulo.server.util.TServerUtils;
+ import org.apache.accumulo.server.util.TabletIterator;
+ import org.apache.accumulo.server.zookeeper.ZooLock;
+@@ -92,7 +93,6 @@ import org.apache.accumulo.trace.instrument.CountSampler;
+ import org.apache.accumulo.trace.instrument.Sampler;
+ import org.apache.accumulo.trace.instrument.Span;
+ import org.apache.accumulo.trace.instrument.Trace;
+-import org.apache.accumulo.trace.instrument.thrift.TraceWrap;
+ import org.apache.accumulo.trace.thrift.TInfo;
+ import org.apache.hadoop.fs.FileStatus;
+ import org.apache.hadoop.fs.Path;
+@@ -645,7 +645,7 @@ public class SimpleGarbageCollector implements Iface {
+   }
+ 
+   private HostAndPort startStatsService() throws UnknownHostException {
+-    Processor<Iface> processor = new Processor<Iface>(TraceWrap.service(this));
++    Processor<Iface> processor = new Processor<Iface>(RpcWrapper.service(this));
+     AccumuloConfiguration conf = ServerConfiguration.getSystemConfiguration(instance);
+     int port = conf.getPort(Property.GC_PORT);
+     long maxMessageSize = conf.getMemoryInBytes(Property.GENERAL_MAX_MESSAGE_SIZE);
+diff --git a/server/master/src/main/java/org/apache/accumulo/master/Master.java b/server/master/src/main/java/org/apache/accumulo/master/Master.java
+index 2440ee4..feb3839 100644
+--- a/server/master/src/main/java/org/apache/accumulo/master/Master.java
++++ b/server/master/src/main/java/org/apache/accumulo/master/Master.java
+@@ -110,12 +110,12 @@ import org.apache.accumulo.server.tables.TableObserver;
+ import org.apache.accumulo.server.util.DefaultMap;
+ import org.apache.accumulo.server.util.Halt;
+ import org.apache.accumulo.server.util.MetadataTableUtil;
++import org.apache.accumulo.server.util.RpcWrapper;
+ import org.apache.accumulo.server.util.TServerUtils;
+ import org.apache.accumulo.server.util.TServerUtils.ServerAddress;
+ import org.apache.accumulo.server.util.time.SimpleTimer;
+ import org.apache.accumulo.server.zookeeper.ZooLock;
+ import org.apache.accumulo.server.zookeeper.ZooReaderWriter;
+-import org.apache.accumulo.trace.instrument.thrift.TraceWrap;
+ import org.apache.hadoop.fs.Path;
+ import org.apache.hadoop.io.DataInputBuffer;
+ import org.apache.hadoop.io.DataOutputBuffer;
+@@ -959,7 +959,7 @@ public class Master implements LiveTServerSet.Listener, TableObserver, CurrentSt
+       throw new IOException(e);
+     }
+ 
+-    Processor<Iface> processor = new Processor<Iface>(TraceWrap.service(new MasterClientServiceHandler(this)));
++    Processor<Iface> processor = new Processor<Iface>(RpcWrapper.service(new MasterClientServiceHandler(this)));
+     ServerAddress sa = TServerUtils.startServer(getSystemConfiguration(), hostname, Property.MASTER_CLIENTPORT, processor, "Master",
+         "Master Client Service Handler", null, Property.MASTER_MINTHREADS, Property.MASTER_THREADCHECK, Property.GENERAL_MAX_MESSAGE_SIZE);
+     clientService = sa.server;
+diff --git a/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java b/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
+index e2510d7..57415bd 100644
+--- a/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
++++ b/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
+@@ -179,6 +179,7 @@ import org.apache.accumulo.server.util.FileSystemMonitor;
+ import org.apache.accumulo.server.util.Halt;
+ import org.apache.accumulo.server.util.MasterMetadataUtil;
+ import org.apache.accumulo.server.util.MetadataTableUtil;
++import org.apache.accumulo.server.util.RpcWrapper;
+ import org.apache.accumulo.server.util.TServerUtils;
+ import org.apache.accumulo.server.util.TServerUtils.ServerAddress;
+ import org.apache.accumulo.server.util.time.RelativeTime;
+@@ -192,7 +193,6 @@ import org.apache.accumulo.start.classloader.vfs.AccumuloVFSClassLoader;
+ import org.apache.accumulo.start.classloader.vfs.ContextManager;
+ import org.apache.accumulo.trace.instrument.Span;
+ import org.apache.accumulo.trace.instrument.Trace;
+-import org.apache.accumulo.trace.instrument.thrift.TraceWrap;
+ import org.apache.accumulo.trace.thrift.TInfo;
+ import org.apache.accumulo.tserver.Compactor.CompactionInfo;
+ import org.apache.accumulo.tserver.RowLocks.RowLock;
+@@ -3085,7 +3085,7 @@ public class TabletServer extends AbstractMetricsImpl implements org.apache.accu
+ 
+   private HostAndPort startTabletClientService() throws UnknownHostException {
+     // start listening for client connection last
+-    Iface tch = TraceWrap.service(new ThriftClientHandler());
++    Iface tch = RpcWrapper.service(new ThriftClientHandler());
+     Processor<Iface> processor = new Processor<Iface>(tch);
+     HostAndPort address = startServer(getSystemConfiguration(), clientAddress.getHostText(), Property.TSERV_CLIENTPORT, processor, "Thrift Client Server");
+     log.info("address = " + address);
+diff --git a/trace/src/main/java/org/apache/accumulo/trace/instrument/thrift/RpcClientInvocationHandler.java b/trace/src/main/java/org/apache/accumulo/trace/instrument/thrift/RpcClientInvocationHandler.java
+new file mode 100644
+index 0000000..ea57fe7
+--- /dev/null
++++ b/trace/src/main/java/org/apache/accumulo/trace/instrument/thrift/RpcClientInvocationHandler.java
+@@ -0,0 +1,54 @@
++/*
++ * Licensed to the Apache Software Foundation (ASF) under one or more
++ * contributor license agreements.  See the NOTICE file distributed with
++ * this work for additional information regarding copyright ownership.
++ * The ASF licenses this file to You under the Apache License, Version 2.0
++ * (the "License"); you may not use this file except in compliance with
++ * the License.  You may obtain a copy of the License at
++ *
++ *     http://www.apache.org/licenses/LICENSE-2.0
++ *
++ * Unless required by applicable law or agreed to in writing, software
++ * distributed under the License is distributed on an "AS IS" BASIS,
++ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
++ * See the License for the specific language governing permissions and
++ * limitations under the License.
++ */
++package org.apache.accumulo.trace.instrument.thrift;
++
++import java.lang.reflect.InvocationHandler;
++import java.lang.reflect.InvocationTargetException;
++import java.lang.reflect.Method;
++
++import org.apache.accumulo.trace.instrument.Span;
++import org.apache.accumulo.trace.instrument.Trace;
++import org.apache.accumulo.trace.instrument.Tracer;
++import org.apache.accumulo.trace.thrift.TInfo;
++
++public class RpcClientInvocationHandler<I> implements InvocationHandler {
++
++  private final I instance;
++
++  protected RpcClientInvocationHandler(final I clientInstance) {
++    instance = clientInstance;
++  }
++
++  @Override
++  public Object invoke(Object obj, Method method, Object[] args) throws Throwable {
++    if (args == null || args.length < 1 || args[0] != null) {
++      return method.invoke(instance, args);
++    }
++    Class<?> klass = method.getParameterTypes()[0];
++    if (TInfo.class.isAssignableFrom(klass)) {
++      args[0] = Tracer.traceInfo();
++    }
++    Span span = Trace.start("client:" + method.getName());
++    try {
++      return method.invoke(instance, args);
++    } catch (InvocationTargetException ex) {
++      throw ex.getCause();
++    } finally {
++      span.stop();
++    }
++  }
++}
+diff --git a/trace/src/main/java/org/apache/accumulo/trace/instrument/thrift/RpcServerInvocationHandler.java b/trace/src/main/java/org/apache/accumulo/trace/instrument/thrift/RpcServerInvocationHandler.java
+new file mode 100644
+index 0000000..4188bf4
+--- /dev/null
++++ b/trace/src/main/java/org/apache/accumulo/trace/instrument/thrift/RpcServerInvocationHandler.java
+@@ -0,0 +1,53 @@
++/*
++ * Licensed to the Apache Software Foundation (ASF) under one or more
++ * contributor license agreements.  See the NOTICE file distributed with
++ * this work for additional information regarding copyright ownership.
++ * The ASF licenses this file to You under the Apache License, Version 2.0
++ * (the "License"); you may not use this file except in compliance with
++ * the License.  You may obtain a copy of the License at
++ *
++ *     http://www.apache.org/licenses/LICENSE-2.0
++ *
++ * Unless required by applicable law or agreed to in writing, software
++ * distributed under the License is distributed on an "AS IS" BASIS,
++ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
++ * See the License for the specific language governing permissions and
++ * limitations under the License.
++ */
++package org.apache.accumulo.trace.instrument.thrift;
++
++import java.lang.reflect.InvocationHandler;
++import java.lang.reflect.InvocationTargetException;
++import java.lang.reflect.Method;
++
++import org.apache.accumulo.trace.instrument.Span;
++import org.apache.accumulo.trace.instrument.Trace;
++import org.apache.accumulo.trace.thrift.TInfo;
++
++public class RpcServerInvocationHandler<I> implements InvocationHandler {
++
++  private final I instance;
++
++  protected RpcServerInvocationHandler(final I serverInstance) {
++    instance = serverInstance;
++  }
++
++  @Override
++  public Object invoke(Object obj, Method method, Object[] args) throws Throwable {
++    if (args == null || args.length < 1 || args[0] == null || !(args[0] instanceof TInfo)) {
++      try {
++        return method.invoke(instance, args);
++      } catch (InvocationTargetException ex) {
++        throw ex.getCause();
++      }
++    }
++    Span span = Trace.trace((TInfo) args[0], method.getName());
++    try {
++      return method.invoke(instance, args);
++    } catch (InvocationTargetException ex) {
++      throw ex.getCause();
++    } finally {
++      span.stop();
++    }
++  }
++}
+diff --git a/trace/src/main/java/org/apache/accumulo/trace/instrument/thrift/TraceWrap.java b/trace/src/main/java/org/apache/accumulo/trace/instrument/thrift/TraceWrap.java
+index 49fa4b2..ed91042 100644
+--- a/trace/src/main/java/org/apache/accumulo/trace/instrument/thrift/TraceWrap.java
++++ b/trace/src/main/java/org/apache/accumulo/trace/instrument/thrift/TraceWrap.java
+@@ -17,16 +17,8 @@
+ package org.apache.accumulo.trace.instrument.thrift;
+ 
+ import java.lang.reflect.InvocationHandler;
+-import java.lang.reflect.InvocationTargetException;
+-import java.lang.reflect.Method;
+ import java.lang.reflect.Proxy;
+ 
+-import org.apache.accumulo.trace.instrument.Span;
+-import org.apache.accumulo.trace.instrument.Trace;
+-import org.apache.accumulo.trace.instrument.Tracer;
+-import org.apache.accumulo.trace.thrift.TInfo;
+-
+-
+ /**
+  * To move trace data from client to server, the RPC call must be annotated to take a TInfo object as its first argument. The user can simply pass null, so long
+  * as they wrap their Client and Service objects with these functions.
+@@ -45,55 +37,21 @@ import org.apache.accumulo.trace.thrift.TInfo;
+  * 
+  */
+ public class TraceWrap {
+-  
+-  @SuppressWarnings("unchecked")
++
+   public static <T> T service(final T instance) {
+-    InvocationHandler handler = new InvocationHandler() {
+-      @Override
+-      public Object invoke(Object obj, Method method, Object[] args) throws Throwable {
+-        if (args == null || args.length < 1 || args[0] == null || !(args[0] instanceof TInfo)) {
+-          try {
+-            return method.invoke(instance, args);
+-          } catch (InvocationTargetException ex) {
+-            throw ex.getCause();
+-          }
+-        }
+-        Span span = Trace.trace((TInfo) args[0], method.getName());
+-        try {
+-          return method.invoke(instance, args);
+-        } catch (InvocationTargetException ex) {
+-          throw ex.getCause();
+-        } finally {
+-          span.stop();
+-        }
+-      }
+-    };
+-    return (T) Proxy.newProxyInstance(instance.getClass().getClassLoader(), instance.getClass().getInterfaces(), handler);
++    InvocationHandler handler = new RpcServerInvocationHandler<T>(instance);
++    return wrappedInstance(handler, instance);
+   }
+-  
+-  @SuppressWarnings("unchecked")
++
+   public static <T> T client(final T instance) {
+-    InvocationHandler handler = new InvocationHandler() {
+-      @Override
+-      public Object invoke(Object obj, Method method, Object[] args) throws Throwable {
+-        if (args == null || args.length < 1 || args[0] != null) {
+-          return method.invoke(instance, args);
+-        }
+-        Class<?> klass = method.getParameterTypes()[0];
+-        if (TInfo.class.isAssignableFrom(klass)) {
+-          args[0] = Tracer.traceInfo();
+-        }
+-        Span span = Trace.start("client:" + method.getName());
+-        try {
+-          return method.invoke(instance, args);
+-        } catch (InvocationTargetException ex) {
+-          throw ex.getCause();
+-        } finally {
+-          span.stop();
+-        }
+-      }
+-    };
+-    return (T) Proxy.newProxyInstance(instance.getClass().getClassLoader(), instance.getClass().getInterfaces(), handler);
++    InvocationHandler handler = new RpcClientInvocationHandler<T>(instance);
++    return wrappedInstance(handler, instance);
+   }
+-  
++
++  private static <T> T wrappedInstance(final InvocationHandler handler, final T instance) {
++    @SuppressWarnings("unchecked")
++    T proxiedInstance = (T) Proxy.newProxyInstance(instance.getClass().getClassLoader(), instance.getClass().getInterfaces(), handler);
++    return proxiedInstance;
++  }
++
+ }
+-- 
+1.8.3.1
+
diff --git a/accumulo-gc.service b/accumulo-gc.service
new file mode 100644
index 0000000..9e15503
--- /dev/null
+++ b/accumulo-gc.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Apache Accumulo Garbage Collector service
+After=syslog.target network.target
+
+[Service]
+User=accumulo
+Group=accumulo
+ExecStart=/usr/bin/accumulo-gc
+
+[Install]
+WantedBy=multi-user.target
diff --git a/accumulo-master.service b/accumulo-master.service
new file mode 100644
index 0000000..0254585
--- /dev/null
+++ b/accumulo-master.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Apache Accumulo Master service
+After=syslog.target network.target
+
+[Service]
+User=accumulo
+Group=accumulo
+ExecStart=/usr/bin/accumulo-master
+
+[Install]
+WantedBy=multi-user.target
diff --git a/accumulo-tracer.service b/accumulo-tracer.service
new file mode 100644
index 0000000..063660f
--- /dev/null
+++ b/accumulo-tracer.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Apache Accumulo Tracer service
+After=syslog.target network.target
+
+[Service]
+User=accumulo
+Group=accumulo
+ExecStart=/usr/bin/accumulo-tracer
+
+[Install]
+WantedBy=multi-user.target
diff --git a/accumulo-tserver.service b/accumulo-tserver.service
new file mode 100644
index 0000000..e3a74f5
--- /dev/null
+++ b/accumulo-tserver.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Apache Accumulo TServer service
+After=syslog.target network.target
+
+[Service]
+User=accumulo
+Group=accumulo
+ExecStart=/usr/bin/accumulo-tserver
+
+[Install]
+WantedBy=multi-user.target
diff --git a/accumulo.spec b/accumulo.spec
new file mode 100644
index 0000000..52cc370
--- /dev/null
+++ b/accumulo.spec
@@ -0,0 +1,527 @@
+%global _hardened_build 1
+%global proj accumulo
+%global longproj Apache Accumulo
+# monitor not included until dependent javascript libs are packaged
+%global include_monitor 0
+
+%global commit 06162580e885f11863d1a6d22f952bce35b78b68
+%global shortcommit %(c=%{commit}; echo ${c:0:7})
+
+Name:     %{proj}
+Version:  1.6.0
+Release:  1%{?dist}
+Summary:  A software platform for processing vast amounts of data
+License:  ASL 2.0
+Group:    Development/Libraries
+URL:      http://%{name}.apache.org
+Source0:  https://github.com/apache/%{name}/archive/%{commit}/%{name}-%{version}-%{shortcommit}.tar.gz
+
+# systemd service files
+Source1:  %{name}-master.service
+Source2:  %{name}-tserver.service
+Source3:  %{name}-gc.service
+Source4:  %{name}-tracer.service
+%if %{include_monitor}
+Source5:  %{name}-monitor.service
+%endif
+
+# Upstream patches needed for Fedora
+Patch0: ACCUMULO-1691.patch
+Patch1: ACCUMULO-2950.patch
+Patch2: ACCUMULO-2773.patch
+Patch3: ACCUMULO-2762.patch
+Patch4: ACCUMULO-2812.patch
+Patch5: ACCUMULO-2808.patch
+
+# Should be applied after upstream patches
+Patch6: commons-configuration.patch
+Patch7: commons-math.patch
+Patch8: native-code.patch
+Patch9: disabled-tests.patch
+
+# Accumulo depends on Hadoop, and Hadoop is not built for ARM
+ExcludeArch: %{arm}
+
+BuildRequires: apache-commons-cli
+BuildRequires: apache-commons-codec
+BuildRequires: apache-commons-collections
+BuildRequires: apache-commons-configuration
+BuildRequires: apache-commons-io
+BuildRequires: apache-commons-lang
+BuildRequires: apache-commons-logging
+BuildRequires: apache-commons-math
+BuildRequires: apache-commons-vfs
+BuildRequires: beust-jcommander
+BuildRequires: bouncycastle
+BuildRequires: exec-maven-plugin
+BuildRequires: google-gson
+BuildRequires: guava
+BuildRequires: hadoop-client
+BuildRequires: hadoop-tests
+BuildRequires: java-devel
+BuildRequires: jetty-security
+BuildRequires: jetty-server
+BuildRequires: jetty-servlet
+BuildRequires: jetty-util
+BuildRequires: jline2
+BuildRequires: jpackage-utils
+BuildRequires: libthrift-java
+%if 0%{?fedora} < 21
+BuildRequires: log4j
+%else
+BuildRequires: log4j12
+%endif
+BuildRequires: maven-local
+BuildRequires: mvn(javax.servlet:javax.servlet-api)
+BuildRequires: native-maven-plugin
+BuildRequires: powermock-api-easymock
+BuildRequires: powermock-core
+BuildRequires: powermock-junit4
+BuildRequires: slf4j
+BuildRequires: systemd-units
+BuildRequires: zookeeper-java
+
+Requires: %{name}-core = %{version}-%{release}
+Requires: %{name}-master = %{version}-%{release}
+Requires: %{name}-tserver = %{version}-%{release}
+Requires: %{name}-gc = %{version}-%{release}
+%if %{include_monitor}
+Requires: %{name}-monitor = %{version}-%{release}
+%endif
+Requires: %{name}-tracer = %{version}-%{release}
+Requires: %{name}-examples = %{version}-%{release}
+Requires: %{name}-native%{?_isa} = %{version}-%{release}
+
+%description
+  %{longproj} is a sorted, distributed key/value store based on Google's
+BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
+features a few novel improvements on the BigTable design in the form of
+cell-level access labels and a server-side programming mechanism that can
+modify key/value pairs at various points in the data management process.
+
+%package core
+Summary: Libraries for %{longproj} Java clients
+# the bloom filter code is BSD licensed, everything else is ASL 2.0
+License: ASL 2.0 and BSD
+Group: Applications/System
+BuildArch: noarch
+Requires(pre): /usr/sbin/useradd
+
+%description core
+  %{longproj} is a sorted, distributed key/value store based on Google's
+BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
+features a few novel improvements on the BigTable design in the form of
+cell-level access labels and a server-side programming mechanism that can
+modify key/value pairs at various points in the data management process.
+
+This package provides libraries for %{longproj} clients.
+
+%package server-base
+Summary: The %{longproj} Server Base libraries
+License:  ASL 2.0
+Group: Applications/System
+BuildArch: noarch
+Requires: %{name}-core = %{version}-%{release}
+
+%description server-base
+  %{longproj} is a sorted, distributed key/value store based on Google's
+BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
+features a few novel improvements on the BigTable design in the form of
+cell-level access labels and a server-side programming mechanism that can
+modify key/value pairs at various points in the data management process.
+
+This package provides jars for other %{longproj} services.
+
+%package master
+Summary: The %{longproj} Master service
+License:  ASL 2.0
+Group: Applications/System
+BuildArch: noarch
+Requires: %{name}-core = %{version}-%{release}
+Requires: %{name}-server-base = %{version}-%{release}
+Requires(post): systemd-units
+Requires(preun): systemd-units
+Requires(postun): systemd-units
+
+%description master
+  %{longproj} is a sorted, distributed key/value store based on Google's
+BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
+features a few novel improvements on the BigTable design in the form of
+cell-level access labels and a server-side programming mechanism that can
+modify key/value pairs at various points in the data management process.
+
+This package provides the master service for %{longproj}.
+
+%package tserver
+Summary: The %{longproj} TServer service
+License:  ASL 2.0
+Group: Applications/System
+BuildArch: noarch
+Requires: %{name}-core = %{version}-%{release}
+Requires: %{name}-server-base = %{version}-%{release}
+Requires(post): systemd-units
+Requires(preun): systemd-units
+Requires(postun): systemd-units
+
+%description tserver
+  %{longproj} is a sorted, distributed key/value store based on Google's
+BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
+features a few novel improvements on the BigTable design in the form of
+cell-level access labels and a server-side programming mechanism that can
+modify key/value pairs at various points in the data management process.
+
+This package provides the tserver service for %{longproj}.
+
+%package gc
+Summary: The %{longproj} Garbage Collector service
+License:  ASL 2.0
+Group: Applications/System
+BuildArch: noarch
+Requires: %{name}-core = %{version}-%{release}
+Requires: %{name}-server-base = %{version}-%{release}
+Requires(post): systemd-units
+Requires(preun): systemd-units
+Requires(postun): systemd-units
+
+%description gc
+  %{longproj} is a sorted, distributed key/value store based on Google's
+BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
+features a few novel improvements on the BigTable design in the form of
+cell-level access labels and a server-side programming mechanism that can
+modify key/value pairs at various points in the data management process.
+
+This package provides the gc service for %{longproj}.
+
+%if %{include_monitor}
+%package monitor
+Summary: The %{longproj} Monitor service
+# jquery and flot are MIT licensed, everything else is ASL 2.0
+License: ASL 2.0 and MIT
+Group: Applications/System
+BuildArch: noarch
+Requires: %{name}-core = %{version}-%{release}
+Requires: %{name}-server-base = %{version}-%{release}
+Requires(post): systemd-units
+Requires(preun): systemd-units
+Requires(postun): systemd-units
+
+%description monitor
+  %{longproj} is a sorted, distributed key/value store based on Google's
+BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
+features a few novel improvements on the BigTable design in the form of
+cell-level access labels and a server-side programming mechanism that can
+modify key/value pairs at various points in the data management process.
+
+This package provides the monitor service for %{longproj}.
+%endif
+
+%package tracer
+Summary: The %{longproj} Tracer service
+License:  ASL 2.0
+Group: Applications/System
+BuildArch: noarch
+Requires: %{name}-core = %{version}-%{release}
+Requires: %{name}-server-base = %{version}-%{release}
+Requires(post): systemd-units
+Requires(preun): systemd-units
+Requires(postun): systemd-units
+
+%description tracer
+  %{longproj} is a sorted, distributed key/value store based on Google's
+BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
+features a few novel improvements on the BigTable design in the form of
+cell-level access labels and a server-side programming mechanism that can
+modify key/value pairs at various points in the data management process.
+
+This package provides the tracer service for %{longproj}.
+
+%package examples
+Summary: Examples for %{longproj}
+License:  ASL 2.0
+Group: Applications/System
+BuildArch: noarch
+Requires: %{name}-core = %{version}-%{release}
+
+%description examples
+  %{longproj} is a sorted, distributed key/value store based on Google's
+BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
+features a few novel improvements on the BigTable design in the form of
+cell-level access labels and a server-side programming mechanism that can
+modify key/value pairs at various points in the data management process.
+
+This package provides examples for %{longproj}.
+
+%package native
+Summary: Native libraries for %{longproj}
+License:  ASL 2.0
+Group: Development/Libraries
+Requires: %{name}-tserver = %{version}-%{release}
+
+%description native
+  %{longproj} is a sorted, distributed key/value store based on Google's
+BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
+features a few novel improvements on the BigTable design in the form of
+cell-level access labels and a server-side programming mechanism that can
+modify key/value pairs at various points in the data management process.
+
+This package provides native code for %{longproj}'s TServer.
+
+%package javadoc
+Summary: Javadoc for %{longproj}
+License:  ASL 2.0
+Group: Documentation
+BuildArch: noarch
+
+%description javadoc
+  %{longproj} is a sorted, distributed key/value store based on Google's
+BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
+features a few novel improvements on the BigTable design in the form of
+cell-level access labels and a server-side programming mechanism that can
+modify key/value pairs at various points in the data management process.
+
+This package contains the API documentation for %{longproj}.
+
+%prep
+%setup -qn %{name}-%{commit}
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1
+
+# Update dependency versions
+%pom_xpath_set "pom:project/pom:dependencyManagement/pom:dependencies/pom:dependency[pom:artifactId='jline']/pom:version" "2.10"
+%pom_xpath_set "pom:project/pom:dependencyManagement/pom:dependencies/pom:dependency[pom:artifactId='zookeeper']/pom:version" "3.4.5"
+%pom_xpath_set "pom:project/pom:dependencyManagement/pom:dependencies/pom:dependency[pom:artifactId='libthrift']/pom:version" "0.9.1"
+%pom_xpath_set "pom:project/pom:dependencyManagement/pom:dependencies/pom:dependency[pom:artifactId='log4j']/pom:version" "1.2.17"
+%pom_xpath_set "pom:project/pom:dependencyManagement/pom:dependencies/pom:dependency[pom:artifactId='commons-math']/pom:version" "3.2"
+%pom_xpath_set "pom:project/pom:dependencyManagement/pom:dependencies/pom:dependency[pom:artifactId='commons-math']/pom:artifactId" "commons-math3"
+%pom_xpath_set "pom:project/pom:dependencies/pom:dependency[pom:artifactId='commons-math']/pom:artifactId" "commons-math3" core
+%pom_xpath_set "pom:project/pom:dependencyManagement/pom:dependencies/pom:dependency[pom:artifactId='bcprov-jdk15on']/pom:artifactId" "bcprov-jdk16"
+
+# Fix javadoc
+%pom_xpath_remove "pom:project/pom:build/pom:pluginManagement/pom:plugins/pom:plugin[pom:artifactId='maven-javadoc-plugin']/pom:configuration/pom:reportOutputDirectory"
+
+# No need to deploy site with ssh
+%pom_xpath_remove "pom:project/pom:build/pom:extensions/pom:extension[pom:artifactId='wagon-ssh']"
+
+# Disable unneeded modules
+%pom_disable_module test
+%pom_disable_module proxy
+%pom_disable_module maven-plugin
+%pom_disable_module docs
+%pom_disable_module assemble
+%if !%{include_monitor}
+%pom_disable_module server/monitor
+%endif
+
+# Remove unneeded plugins
+%pom_remove_plugin :maven-site-plugin
+%pom_remove_plugin :maven-failsafe-plugin
+%pom_remove_plugin :apache-rat-plugin
+%pom_remove_plugin :maven-sortpom-plugin
+%pom_remove_plugin :mavanagaiata
+%pom_remove_plugin :maven-scm-publish-plugin
+%pom_remove_plugin :findbugs-maven-plugin
+%pom_remove_plugin :maven-project-info-reports-plugin
+
+%mvn_package ":%{name}-minicluster" __noinstall
+%mvn_package ":%{name}-{project,core,fate,trace,start}" core
+%mvn_package ":%{name}-examples-simple" examples
+%mvn_package ":%{name}-gc" gc
+%mvn_package ":%{name}-master" master
+%if %{include_monitor}
+%mvn_package ":%{name}-monitor" monitor
+%endif
+%mvn_package ":%{name}-server-base" server-base
+%mvn_package ":%{name}-tracer" tracer
+%mvn_package ":%{name}-tserver" tserver
+
+%mvn_package ":%{name}-native" __noinstall
+
+%build
+# TODO Unit tests are skipped, because upstream tries to do some integration
+# testing in the unit tests, and they expect certain resources and dependencies
+# that are not typically available, or are too complicated to configure,
+# especially in the start jar. These should be enabled when possible.
+# ITs are skipped, because they time out frequently and take too many resources
+# to run reliably. Failures do not reliably indicate meaningful issues.
+%mvn_build -- -DforkCount=1C -DskipTests -DskipITs
+
+%install
+%mvn_install
+
+# native libs
+install -d -m 755 %{buildroot}%{_libdir}/%{name}
+install -d -m 755 %{buildroot}%{_var}/cache/%{name}
+cp -af server/native/target/%{name}-native-%{version}/%{name}-native-%{version}/lib%{name}.so %{buildroot}%{_libdir}/%{name}
+
+# upstream scripts and config
+install -d -m 755 %{buildroot}%{_libexecdir}/%{name}
+cp -af bin/%{name} bin/config.sh %{buildroot}%{_libexecdir}/%{name}
+install -d -m 755 %{buildroot}%{_sysconfdir}/%{name}
+bin/bootstrap_config.sh -o -d %{buildroot}%{_sysconfdir}/%{name} -s 3GB -n -v 2
+for x in gc masters monitor slaves tracers; do rm -f %{buildroot}%{_sysconfdir}/%{name}/$x; done
+
+# service shortcut files
+install -d -m 755 %{buildroot}%{_bindir}
+cat <<EOF >"%{name}"
+#! /usr/bin/bash
+[[ \$ACCUMULO_CONF_DIR ]] || export ACCUMULO_CONF_DIR=/%{_sysconfdir}/%{name}
+%{_libexecdir}/%{name}/%{name} \$@
+EOF
+install -p -m 755 %{name} %{buildroot}%{_bindir}
+
+%if %{include_monitor}
+for service in master tserver shell init admin gc monitor tracer classpath version rfile-info login-info zookeeper create-token info jar; do
+%else
+for service in master tserver shell init admin gc tracer classpath version rfile-info login-info zookeeper create-token info jar; do
+%endif
+  cat <<EOF >"%{name}-$service"
+#! /usr/bin/bash
+%{_bindir}/%{name} $service
+EOF
+  install -p -m 755 %{name}-$service %{buildroot}%{_bindir}
+done
+
+# systemd services
+install -d -m 755 %{buildroot}%{_unitdir}
+install -p -m 644 %{SOURCE1} %{buildroot}%{_unitdir}/%{name}-master.service
+install -p -m 644 %{SOURCE2} %{buildroot}%{_unitdir}/%{name}-tserver.service
+install -p -m 644 %{SOURCE3} %{buildroot}%{_unitdir}/%{name}-gc.service
+install -p -m 644 %{SOURCE4} %{buildroot}%{_unitdir}/%{name}-tracer.service
+%if %{include_monitor}
+install -p -m 644 %{SOURCE5} %{buildroot}%{_unitdir}/%{name}-monitor.service
+%endif
+
+%files
+
+%files core -f .mfiles-core
+%doc CHANGES
+%doc LICENSE
+%doc README
+%doc NOTICE
+%dir %{_javadir}/%{name}
+%dir %{_libexecdir}/%{name}
+%dir %{_mavenpomdir}/%{name}
+%{_libexecdir}/%{name}/%{name}
+%{_libexecdir}/%{name}/config.sh
+%{_bindir}/%{name}
+%{_bindir}/%{name}-shell
+%{_bindir}/%{name}-classpath
+%{_bindir}/%{name}-version
+%{_bindir}/%{name}-rfile-info
+%{_bindir}/%{name}-login-info
+%{_bindir}/%{name}-zookeeper
+%{_bindir}/%{name}-create-token
+%{_bindir}/%{name}-info
+%{_bindir}/%{name}-jar
+%attr(0750, %{name}, -) %dir %{_var}/cache/%{name}
+%attr(0750, %{name}, -) %dir %{_sysconfdir}/%{name}
+%attr(0750, %{name}, -) %config(noreplace) %{_sysconfdir}/%{name}/accumulo-env.sh
+%attr(0640, %{name}, -) %config(noreplace) %{_sysconfdir}/%{name}/accumulo-metrics.xml
+%attr(0640, %{name}, -) %config(noreplace) %{_sysconfdir}/%{name}/accumulo.policy.example
+%attr(0640, %{name}, -) %config(noreplace) %{_sysconfdir}/%{name}/accumulo-site.xml
+%attr(0640, %{name}, -) %config(noreplace) %{_sysconfdir}/%{name}/auditLog.xml
+%attr(0640, %{name}, -) %config(noreplace) %{_sysconfdir}/%{name}/generic_logger.xml
+%attr(0640, %{name}, -) %config(noreplace) %{_sysconfdir}/%{name}/log4j.properties
+%attr(0640, %{name}, -) %config(noreplace) %{_sysconfdir}/%{name}/monitor_logger.xml
+
+%files server-base -f .mfiles-server-base
+%{_bindir}/%{name}-init
+%{_bindir}/%{name}-admin
+
+%files master -f .mfiles-master
+%{_bindir}/%{name}-master
+%{_unitdir}/%{name}-master.service
+
+%files tserver -f .mfiles-tserver
+%dir %{_jnidir}/%{name}
+%{_bindir}/%{name}-tserver
+%{_unitdir}/%{name}-tserver.service
+
+%files gc -f .mfiles-gc
+%{_bindir}/%{name}-gc
+%{_unitdir}/%{name}-gc.service
+
+%if %{include_monitor}
+%files monitor -f .mfiles-monitor
+%{_bindir}/%{name}-monitor
+%{_unitdir}/%{name}-monitor.service
+%endif
+
+%files tracer -f .mfiles-tracer
+%{_bindir}/%{name}-tracer
+%{_unitdir}/%{name}-tracer.service
+
+%files examples -f .mfiles-examples
+
+%files javadoc -f .mfiles-javadoc
+
+%files native
+%dir %{_libdir}/%{name}
+%{_libdir}/%{name}/lib%{name}.so
+
+%preun master
+%systemd_preun %{name}-master.service
+
+%preun tserver
+%systemd_preun %{name}-tserver.service
+
+%preun gc
+%systemd_preun %{name}-gc.service
+
+%preun tracer
+%systemd_preun %{name}-tracer.service
+
+%if %{include_monitor}
+%preun monitor
+%systemd_preun %{name}-monitor.service
+%endif
+
+%postun master
+%systemd_postun_with_restart %{name}-master.service
+
+%postun tserver
+%systemd_postun_with_restart %{name}-tserver.service
+
+%postun gc
+%systemd_postun_with_restart %{name}-gc.service
+
+%postun tracer
+%systemd_postun_with_restart %{name}-tracer.service
+
+%if %{include_monitor}
+%postun monitor
+%systemd_postun_with_restart %{name}-monitor.service
+%endif
+
+%pre core
+getent group %{name} >/dev/null || groupadd -r %{name}
+getent passwd %{name} >/dev/null || /usr/sbin/useradd --comment "%{longproj}" --shell /sbin/nologin -M -r -g %{name} --home %{_var}/cache/%{name} %{name}
+
+%post master
+%systemd_post %{name}-master.service
+
+%post tserver
+%systemd_post %{name}-tserver.service
+
+%post gc
+%systemd_post %{name}-gc.service
+
+%post tracer
+%systemd_post %{name}-tracer.service
+
+%if %{include_monitor}
+%post monitor
+%systemd_post %{name}-monitor.service
+%endif
+
+%changelog
+* Wed Apr 30 2014 Christopher Tubbs <ctubbsii at apache> - 1.6.0-1
+- Initial packaging
diff --git a/commons-configuration.patch b/commons-configuration.patch
new file mode 100644
index 0000000..02903df
--- /dev/null
+++ b/commons-configuration.patch
@@ -0,0 +1,27 @@
+diff --git a/minicluster/src/main/java/org/apache/accumulo/minicluster/impl/MiniAccumuloClusterImpl.java b/minicluster/src/main/java/org/apache/accumulo/minicluster/impl/MiniAccumuloClusterImpl.java
+index ce482f5..9730c3e 100644
+--- a/minicluster/src/main/java/org/apache/accumulo/minicluster/impl/MiniAccumuloClusterImpl.java
++++ b/minicluster/src/main/java/org/apache/accumulo/minicluster/impl/MiniAccumuloClusterImpl.java
+@@ -653,7 +653,8 @@ public class MiniAccumuloClusterImpl implements AccumuloCluster {
+ 
+   @Override
+   public ClientConfiguration getClientConfig() {
+-    return new ClientConfiguration(Arrays.asList(new MapConfiguration(config.getSiteConfig()))).withInstance(this.getInstanceName()).withZkHosts(
++    MapConfiguration array = new MapConfiguration((Map<String, Object>)(Map<String, ?>)config.getSiteConfig());
++    return new ClientConfiguration(Arrays.asList(array)).withInstance(this.getInstanceName()).withZkHosts(
+         this.getZooKeepers());
+   }
+ 
+diff --git a/pom.xml b/pom.xml
+index b314ff0..436db08 100644
+--- a/pom.xml
++++ b/pom.xml
+@@ -171,7 +171,7 @@
+       <dependency>
+         <groupId>commons-configuration</groupId>
+         <artifactId>commons-configuration</artifactId>
+-        <version>1.6</version>
++        <version>1.9</version>
+       </dependency>
+       <dependency>
+         <groupId>commons-httpclient</groupId>
diff --git a/commons-math.patch b/commons-math.patch
new file mode 100644
index 0000000..3c9ce75
--- /dev/null
+++ b/commons-math.patch
@@ -0,0 +1,23 @@
+diff --git a/core/src/main/java/org/apache/accumulo/core/util/Stat.java b/core/src/main/java/org/apache/accumulo/core/util/Stat.java
+index d2d560e..8bdeb63 100644
+--- a/core/src/main/java/org/apache/accumulo/core/util/Stat.java
++++ b/core/src/main/java/org/apache/accumulo/core/util/Stat.java
+@@ -16,12 +16,12 @@
+  */
+ package org.apache.accumulo.core.util;
+ 
+-import org.apache.commons.math.stat.descriptive.StorelessUnivariateStatistic;
+-import org.apache.commons.math.stat.descriptive.moment.Mean;
+-import org.apache.commons.math.stat.descriptive.moment.StandardDeviation;
+-import org.apache.commons.math.stat.descriptive.rank.Max;
+-import org.apache.commons.math.stat.descriptive.rank.Min;
+-import org.apache.commons.math.stat.descriptive.summary.Sum;
++import org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic;
++import org.apache.commons.math3.stat.descriptive.moment.Mean;
++import org.apache.commons.math3.stat.descriptive.moment.StandardDeviation;
++import org.apache.commons.math3.stat.descriptive.rank.Max;
++import org.apache.commons.math3.stat.descriptive.rank.Min;
++import org.apache.commons.math3.stat.descriptive.summary.Sum;
+ 
+ public class Stat {
+   Min min;
diff --git a/disabled-tests.patch b/disabled-tests.patch
new file mode 100644
index 0000000..7496a04
--- /dev/null
+++ b/disabled-tests.patch
@@ -0,0 +1,40 @@
+diff --git a/core/src/test/java/org/apache/accumulo/core/util/shell/ShellSetInstanceTest.java b/core/src/test/java/org/apache/accumulo/core/util/shell/ShellSetInstanceTest.java
+index d4c0aea..7686a34 100644
+--- a/core/src/test/java/org/apache/accumulo/core/util/shell/ShellSetInstanceTest.java
++++ b/core/src/test/java/org/apache/accumulo/core/util/shell/ShellSetInstanceTest.java
+@@ -52,6 +52,7 @@ import org.junit.After;
+ import org.junit.AfterClass;
+ import org.junit.Before;
+ import org.junit.BeforeClass;
++import org.junit.Ignore;
+ import org.junit.Test;
+ import org.junit.runner.RunWith;
+ import org.powermock.core.classloader.annotations.PrepareForTest;
+@@ -59,6 +60,7 @@ import org.powermock.modules.junit4.PowerMockRunner;
+ 
+ @RunWith(PowerMockRunner.class)
+ @PrepareForTest({Shell.class, ZooUtil.class, ConfigSanityCheck.class})
++ at Ignore // test skipped due to https://bugzilla.redhat.com/show_bug.cgi?id=1096992
+ public class ShellSetInstanceTest {
+   public static class TestOutputStream extends OutputStream {
+     StringBuilder sb = new StringBuilder();
+diff --git a/core/src/test/java/org/apache/accumulo/core/util/shell/command/HistoryCommandTest.java b/core/src/test/java/org/apache/accumulo/core/util/shell/command/HistoryCommandTest.java
+index 4d379cc..3ebdef9 100644
+--- a/core/src/test/java/org/apache/accumulo/core/util/shell/command/HistoryCommandTest.java
++++ b/core/src/test/java/org/apache/accumulo/core/util/shell/command/HistoryCommandTest.java
+@@ -34,6 +34,7 @@ import org.apache.accumulo.core.util.shell.commands.HistoryCommand;
+ import org.apache.commons.cli.CommandLine;
+ import org.junit.Assume;
+ import org.junit.Before;
++import org.junit.Ignore;
+ import org.junit.Test;
+ 
+ public class HistoryCommandTest {
+@@ -77,6 +78,7 @@ public class HistoryCommandTest {
+   }
+ 
+   @Test
++  @Ignore // this test doesn't work in rpmbuild environment for some yet unknown reason
+   public void testEventExpansion() throws IOException {
+     // If we use an unsupported terminal, then history expansion doesn't work because JLine can't do magic buffer manipulations.
+     // This has been observed to be the case on certain versions of Eclipse. However, mvn is usually fine.
diff --git a/native-code.patch b/native-code.patch
new file mode 100644
index 0000000..e315248
--- /dev/null
+++ b/native-code.patch
@@ -0,0 +1,26 @@
+diff --git a/server/tserver/src/main/java/org/apache/accumulo/tserver/NativeMap.java b/server/tserver/src/main/java/org/apache/accumulo/tserver/NativeMap.java
+index a454d6c..f3015d8 100644
+--- a/server/tserver/src/main/java/org/apache/accumulo/tserver/NativeMap.java
++++ b/server/tserver/src/main/java/org/apache/accumulo/tserver/NativeMap.java
+@@ -62,7 +62,7 @@ public class NativeMap implements Iterable<Map.Entry<Key,Value>> {
+   // Load native library
+   static {
+     // Check standard directories
+-    List<File> directories = new ArrayList<File>(Arrays.asList(new File[] {new File("/usr/lib64"), new File("/usr/lib")}));
++    List<File> directories = new ArrayList<File>(Arrays.asList(new File[] {new File("/usr/lib64/accumulo"), new File("/usr/lib/accumulo")}));
+     // Check in ACCUMULO_HOME location, too
+     String envAccumuloHome = System.getenv("ACCUMULO_HOME");
+     if (envAccumuloHome != null) {
+diff --git a/server/native/src/main/resources/Makefile b/server/native/src/main/resources/Makefile
+index b9211aa..0e93467 100644
+--- a/server/native/src/main/resources/Makefile
++++ b/server/native/src/main/resources/Makefile
+@@ -26,7 +26,7 @@ ifeq ($(shell uname),Linux)
+ 		JAVA_HOME=$(shell dirname $$(dirname $$(readlink -ef $$(which javah))))
+ 	endif
+ 	NATIVE_LIB := libaccumulo.so
+-	CXXFLAGS=-g -fPIC -shared -O3 -Wall -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux -Ijavah $(USERFLAGS)
++	CXXFLAGS=$(RPM_OPT_FLAGS) $(RPM_LD_FLAGS) -fPIC -shared -fno-strict-aliasing -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux -Ijavah $(USERFLAGS)
+ endif
+ 
+ ifeq ($(shell uname),Darwin)
diff --git a/sources b/sources
index e69de29..8c46096 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+57840d08a4204f7dd323fca1d68a666d  accumulo-1.6.0-0616258.tar.gz


More information about the scm-commits mailing list