incubator-blur-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From amccu...@apache.org
Subject [1/27] git commit: Massive changes to the the thrift API. Getting closer to the final version, this commit also removes the controller from the architecture.
Date Sun, 18 Nov 2012 00:52:57 GMT
Updated Branches:
  refs/heads/0.2-dev-removing-old-thrift 1f6a34ccc -> aee531c28


Massive changes to the the thrift API.  Getting closer to the final version, this commit also removes the controller from the architecture.


Project: http://git-wip-us.apache.org/repos/asf/incubator-blur/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-blur/commit/aee531c2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-blur/tree/aee531c2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-blur/diff/aee531c2

Branch: refs/heads/0.2-dev-removing-old-thrift
Commit: aee531c28984ad2430689a0042f617c420701945
Parents: 1f6a34c
Author: Aaron McCurry <amccurry@gmail.com>
Authored: Sat Nov 17 19:51:23 2012 -0500
Committer: Aaron McCurry <amccurry@gmail.com>
Committed: Sat Nov 17 19:51:23 2012 -0500

----------------------------------------------------------------------
 interface/Blur.thrift                              |  509 +-
 interface/gen-html/Blur.html                       |  393 +-
 interface/gen-html/index.html                      |   48 +-
 .../generated/AlternateColumnDefinition.java       |  420 -
 .../org/apache/blur/thrift/generated/Analyzer.java |  459 +
 .../blur/thrift/generated/AnalyzerDefinition.java  |  717 -
 .../blur/thrift/generated/AnalyzerSubType.java     |  510 +
 .../apache/blur/thrift/generated/AnalyzerType.java |  664 +
 .../apache/blur/thrift/generated/Attribute.java    |  632 -
 .../org/apache/blur/thrift/generated/Blur.java     |11361 +++++++++------
 .../blur/thrift/generated/BlurQueryStatus.java     |  927 --
 .../blur/thrift/generated/ClassDefinition.java     |  569 +
 .../blur/thrift/generated/ColumnDefinition.java    |  674 -
 .../thrift/generated/ColumnFamilyDefinition.java   |  602 -
 .../blur/thrift/generated/ColumnPreCache.java      |  472 -
 .../apache/blur/thrift/generated/DocLocation.java  |  497 -
 .../org/apache/blur/thrift/generated/Document.java |   44 +-
 .../apache/blur/thrift/generated/LiveSchema.java   |  631 +
 .../blur/thrift/generated/MutateOptions.java       |   42 +-
 .../apache/blur/thrift/generated/QueryArgs.java    |  246 +-
 .../apache/blur/thrift/generated/QuerySession.java |  510 -
 .../apache/blur/thrift/generated/QueryStatus.java  |  821 ++
 .../org/apache/blur/thrift/generated/Schema.java   |  631 -
 .../org/apache/blur/thrift/generated/ScoreDoc.java |   99 +-
 .../apache/blur/thrift/generated/ScoreType.java    |   77 -
 .../org/apache/blur/thrift/generated/Session.java  |  171 +-
 .../apache/blur/thrift/generated/ShardServer.java  | 8047 ----------
 .../org/apache/blur/thrift/generated/Sort.java     |   36 +-
 .../org/apache/blur/thrift/generated/SortType.java |   33 +-
 .../blur/thrift/generated/TableDescriptor.java     | 1344 +--
 .../apache/blur/thrift/generated/TableStats.java   |  352 +-
 .../apache/blur/thrift/generated/TopFieldDocs.java |   72 +-
 .../blur/thrift/generated/UpdatePackage.java       |   55 +-
 interface/gen-perl/Blur/Blur.pm                    | 2900 +++--
 interface/gen-perl/Blur/ShardServer.pm             | 2065 ---
 interface/gen-perl/Blur/Types.pm                   | 1137 +--
 interface/gen-rb/blur.rb                           |  833 +-
 interface/gen-rb/blur_types.rb                     |  294 +-
 interface/gen-rb/shard_server.rb                   |  514 -
 .../org/apache/blur/analysis/BlurAnalyzer.java     |  187 +-
 .../org/apache/blur/lucene/search/ScoreType.java   |    6 +
 .../org/apache/blur/lucene/search/SuperParser.java |    1 -
 .../org/apache/blur/lucene/search/SuperQuery.java  |    1 -
 .../java/org/apache/blur/manager/IndexManager.java |   44 -
 .../java/org/apache/blur/manager/IndexServer.java  |   29 -
 .../org/apache/blur/manager/QueryParserUtil.java   |   64 -
 .../blur/manager/clusterstatus/ClusterStatus.java  |   50 +-
 .../clusterstatus/ZookeeperClusterStatus.java      |  362 +-
 .../indexserver/DistributedIndexServer.java        |  126 +-
 .../blur/manager/indexserver/LocalIndexServer.java |   22 -
 .../blur/manager/stats/MergerTableStats.java       |    6 +-
 .../blur/manager/status/MergerQueryStatus.java     |   85 -
 .../manager/status/MergerQueryStatusSingle.java    |   50 -
 .../blur/manager/writer/AbstractBlurIndex.java     |    7 -
 .../apache/blur/thrift/BlurControllerServer.java   |  548 -
 .../org/apache/blur/thrift/BlurShardServer.java    |  128 +-
 .../java/org/apache/blur/thrift/TableAdmin.java    |  152 +-
 .../blur/thrift/ThriftBlurControllerServer.java    |  160 -
 .../apache/blur/thrift/ThriftBlurShardServer.java  |    7 +-
 .../org/apache/blur/thrift/lucene/Convert.java     |   33 +-
 .../main/java/org/apache/blur/utils/BlurUtil.java  |   15 +
 .../clusterstatus/ZookeeperClusterStatusTest.java  |   12 +-
 .../apache/blur/search/RandomSuperQueryTest.java   |    2 +-
 .../org/apache/blur/search/SuperQueryTest.java     |    2 +-
 .../generated/AlternateColumnDefinition.java       |  420 -
 .../org/apache/blur/thrift/generated/Analyzer.java |  459 +
 .../blur/thrift/generated/AnalyzerDefinition.java  |  717 -
 .../blur/thrift/generated/AnalyzerSubType.java     |  510 +
 .../apache/blur/thrift/generated/AnalyzerType.java |  664 +
 .../apache/blur/thrift/generated/Attribute.java    |  632 -
 .../org/apache/blur/thrift/generated/Blur.java     |11361 +++++++++------
 .../blur/thrift/generated/BlurQueryStatus.java     |  927 --
 .../blur/thrift/generated/ClassDefinition.java     |  569 +
 .../blur/thrift/generated/ColumnDefinition.java    |  674 -
 .../thrift/generated/ColumnFamilyDefinition.java   |  602 -
 .../blur/thrift/generated/ColumnPreCache.java      |  472 -
 .../apache/blur/thrift/generated/DocLocation.java  |  497 -
 .../org/apache/blur/thrift/generated/Document.java |   44 +-
 .../apache/blur/thrift/generated/LiveSchema.java   |  631 +
 .../blur/thrift/generated/MutateOptions.java       |   42 +-
 .../apache/blur/thrift/generated/QueryArgs.java    |  246 +-
 .../apache/blur/thrift/generated/QuerySession.java |  510 -
 .../apache/blur/thrift/generated/QueryStatus.java  |  821 ++
 .../org/apache/blur/thrift/generated/Schema.java   |  631 -
 .../org/apache/blur/thrift/generated/ScoreDoc.java |   99 +-
 .../apache/blur/thrift/generated/ScoreType.java    |   77 -
 .../org/apache/blur/thrift/generated/Session.java  |  171 +-
 .../apache/blur/thrift/generated/ShardServer.java  | 8047 ----------
 .../org/apache/blur/thrift/generated/Sort.java     |   36 +-
 .../org/apache/blur/thrift/generated/SortType.java |   33 +-
 .../blur/thrift/generated/TableDescriptor.java     | 1344 +--
 .../apache/blur/thrift/generated/TableStats.java   |  352 +-
 .../apache/blur/thrift/generated/TopFieldDocs.java |   72 +-
 .../blur/thrift/generated/UpdatePackage.java       |   55 +-
 94 files changed, 25934 insertions(+), 48288 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/aee531c2/interface/Blur.thrift
----------------------------------------------------------------------
diff --git a/interface/Blur.thrift b/interface/Blur.thrift
index 6d8094c..f3d41eb 100644
--- a/interface/Blur.thrift
+++ b/interface/Blur.thrift
@@ -35,20 +35,6 @@ exception BlurException {
   2:string stackTraceStr
 }
 
-/** 
-  * The scoring type used during a SuperQuery to score multi Record hits within a ColumnFamily.<br/><br/>
-  * SUPER - During a multi Record match, a calculation of the best match Record plus how often it occurs within the match Row produces the score that is used in the scoring of the SuperQuery.<br/><br/>
-  * AGGREGATE - During a multi Record match, the aggregate score of all the Records within a ColumnFamily is used in the scoring of the SuperQuery.<br/><br/>
-  * BEST - During a multi Record match, the best score of all the Records within a ColumnFamily is used in the scoring of the SuperQuery.<br/><br/>
-  * CONSTANT - A constant score of 1 is used in the scoring of the SuperQuery.<br/>
-  */
-enum ScoreType {
-  SUPER,
-  AGGREGATE,
-  BEST,
-  CONSTANT
-}
-
 /**
   * The state of a query.<br/><br/>
   * RUNNING - Query is running.<br/><br/>
@@ -61,6 +47,68 @@ enum QueryState {
   COMPLETE
 }
 
+enum TYPE {
+  STRING, INT, LONG, FLOAT, DOUBLE, BINARY, TEXT
+}
+
+enum SortType {
+    /**
+     * Sort by document score (relevance).  Sort values are Float and higher values are at the front.
+     */
+    SCORE,
+
+    /** 
+     * Sort by document number (index order).  Sort values are Integer and lower values are at the front.
+     */
+    DOC,
+
+    /**
+     * Sort using term values as Strings.  Sort values are String and lower values are at the front.
+     */
+    STRING,
+
+    /** 
+     * Sort using term values as encoded Integers.  Sort values are Integer and lower values are at the front. 
+     */
+    INT,
+
+    /** 
+     * Sort using term values as encoded Floats.  Sort values are Float and lower values are at the front. 
+     */
+    FLOAT,
+
+    /** 
+     * Sort using term values as encoded Longs.  Sort values are Long and lower values are at the front. 
+     */
+    LONG,
+
+    /** 
+     * Sort using term values as encoded Doubles.  Sort values are Double and lower values are at the front. 
+     */
+    DOUBLE,
+
+    /** 
+     * Sort using term values as encoded Shorts.  Sort values are Short and lower values are at the front. 
+     */
+    SHORT,
+
+    /** 
+     * Sort using term values as encoded Bytes.  Sort values are Byte and lower values are at the front. 
+     */
+    BYTE,
+
+    /** 
+     * Sort using term values as Strings, but comparing by value (using String.compareTo) for all 
+     * comparisons. This is typically slower than {@link #STRING}, which uses ordinals to do the sorting. 
+     */
+    STRING_VAL,
+
+    /** 
+     * Sort use byte[] index values. 
+     */
+    BYTES,
+}
+
 /**
  *
  */
@@ -78,31 +126,23 @@ struct CpuTime {
 /**
  *
  */
-struct BlurQueryStatus {
-  /**
-   *
-   */
-//  1:BlurQuery query,
+struct QueryStatus {
   /**
    *
    */
-  2:map<string,CpuTime> cpuTimes,
+  1:map<string,CpuTime> cpuTimes,
   /**
    *
    */
-  3:i32 completeShards,
+  2:i32 completeShards,
   /**
    *
    */
-  4:i32 totalShards,
+  3:i32 totalShards,
   /**
    *
    */
-  5:QueryState state,
-  /**
-   *
-   */
-  6:i64 uuid
+  4:QueryState state,
 }
 
 /**
@@ -112,29 +152,21 @@ struct TableStats {
   /**
    *
    */
-  1:string tableName,
-  /**
-   *
-   */
-  2:i64 bytes,
-  /**
-   *
-   */
-  3:i64 recordCount,
+  1:i64 bytes,
   /**
    *
    */
-  4:i64 rowCount,
+  2:i64 documentCount,
   /**
    *
    */
-  5:i64 queries
+  3:i64 queries
 }
 
 /**
  *
  */
-struct Schema {
+struct LiveSchema {
   /**
    *
    */
@@ -145,65 +177,24 @@ struct Schema {
   2:map<string,set<string>> columnFamilies
 }
 
-/**
- *
- */
-struct AlternateColumnDefinition {
-  /**
-   *
-   */
-  1:string analyzerClassName
+struct ClassDefinition {
+ 1:string className,
+ 2:map<string,binary> arguments
 }
 
-/**
- *
- */
-struct ColumnDefinition {
-  1:string analyzerClassName = "org.apache.lucene.analysis.standard.StandardAnalyzer",
-  2:bool fullTextIndex,
-  3:map<string,AlternateColumnDefinition> alternateColumnDefinitions
+struct AnalyzerSubType {
+ 1:string fieldName,
+ 2:ClassDefinition classDefinition
 }
 
-/**
- *
- */
-struct ColumnFamilyDefinition {
-  /**
-   *
-   */
-  1:ColumnDefinition defaultDefinition,
-  /**
-   *
-   */
-  2:map<string,ColumnDefinition> columnDefinitions
+struct AnalyzerType {
+ 1:string fieldName,
+ 2:ClassDefinition classDefinition,
+ 3:list<AnalyzerSubType> analyzerSubTypes
 }
 
-/**
- *
- */
-struct AnalyzerDefinition {
-  /**
-   *
-   */
-  1:ColumnDefinition defaultDefinition,
-  /**
-   *
-   */
-  2:string fullTextAnalyzerClassName = "org.apache.lucene.analysis.standard.StandardAnalyzer",
-  /**
-   *
-   */
-  3:map<string,ColumnFamilyDefinition> columnFamilyDefinitions
-}
-
-/**
- *
- */
-struct ColumnPreCache {
-  /**
-   * This map sets what column families and columns to prefetch into block cache on shard open.
-   */
-  1:list<string> preCacheCols
+struct Analyzer {
+ 1:list<AnalyzerType> analyzerTypes
 }
 
 /**
@@ -213,202 +204,41 @@ struct TableDescriptor {
   /**
    *
    */
-  1:bool isEnabled = 1,
+  1:string name,
+
   /**
    *
    */
-  2:AnalyzerDefinition analyzerDefinition,
+  2:bool enabled = 1,
+
   /**
    *
    */
   3:i32 shardCount = 1,
-  /**
-   *
-   */
-  4:string tableUri,
-  /**
-   *
-   */
-  5:string compressionClass = 'org.apache.hadoop.io.compress.DefaultCodec',
-  /**
-   *
-   */
-  6:i32 compressionBlockSize = 32768,
-  /**
-   *
-   */
-  7:string cluster = 'default',
-  /**
-   *
-   */
-  8:string name,
-  /**
-   *
-   */
-  9:string similarityClass,
-  /**
-   *
-   */
-  10:bool blockCaching = 1,
-  /**
-   *
-   */
-  11:set<string> blockCachingFileTypes,
-  /**
-   * If a table is set to be readonly, that means that mutates through Thrift are NOT allowed.  However 
-   * updates through MapReduce are allowed and in fact they are only allowed if the table is in readOnly mode.
-   */
-  12:bool readOnly = 0,
-  /**
-   * Sets what column families and columns to prefetch into block cache on shard open.
-   */
-  13:ColumnPreCache columnPreCache
-}
-
-/**
- *
- */
-service Blur {
-
-  /**
-   * Returns a list of all the shard clusters.
-   */
-  list<string> shardClusterList() throws (1:BlurException ex)
-  /**
-   * Returns a list of all the shard servers for the given cluster.
-   * @param cluster the cluster name.
-   */
-  list<string> shardServerList(1:string cluster) throws (1:BlurException ex)
-  /**
-   * Returns a list of all the controller servers.
-   */
-  list<string> controllerServerList() throws (1:BlurException ex)
-  /**
-   * Returns a map of the layout of the given table, where the key is the shard name and the value is the shard server.
-   * @param table the table name.
-   */
-  map<string,string> shardServerLayout(1:string table) throws (1:BlurException ex)
 
   /**
-   * Returns a list of the table names across all shard clusters.
-   */
-  list<string> tableList() throws (1:BlurException ex)
-  /**
-   * Returns a list of the table names for the given cluster.
-   * @param cluster the cluster name.
-   */
-  list<string> tableListByCluster(1:string cluster) throws (1:BlurException ex)
-  /**
-   * Returns a table descriptor for the given table.
-   * @param table the table name.
+   *
    */
-  TableDescriptor describe(1:string table) throws (1:BlurException ex)
+  4:string storagePath,
 
   /**
-   * Cancels a query that is executing against the given table with the given uuid.  Note, the cancel call maybe take some time for the query actually stops executing.
-   * @param table the table name.
-   * @param uuid the uuid of the query.
+   *
    */
-  void cancelQuery(1:string table, 2:i64 uuid) throws (1:BlurException ex)
+  5:Analyzer analyzer,
 
   /**
-   * @deprecated This method should avoided, @see #queryStatusIdList and #queryStatusById.
-   * @param table the table name.
+   *
    */
-  list<BlurQueryStatus> currentQueries(1:string table) throws (1:BlurException ex)
+  6:bool readOnly = 0,
 
   /**
-   * Returns a list of the query ids of queries that have recently been executed for the given table.
-   * @param table the table name.
-   */
-  list<i64> queryStatusIdList(1:string table) throws (1:BlurException ex)
-  /**
-   * Returns the query status for the given table and query uuid.
-   * @param table the table name.
-   * @param uuid the uuid of the query.
+   *compressionClass,compressionBlockSize,similarityClass,blockCaching = 1,blockCachingFileTypes,columnPreCache
    */
-  BlurQueryStatus queryStatusById(1:string table, 2:i64 uuid) throws (1:BlurException ex)
-
-  Schema schema(1:string table) throws (1:BlurException ex)
-  TableStats tableStats(1:string table) throws (1:BlurException ex)
-
-  void createTable(1:TableDescriptor tableDescriptor) throws (1:BlurException ex)
-  void enableTable(1:string table) throws (1:BlurException ex)
-  void disableTable(1:string table) throws (1:BlurException ex)
-  void removeTable(1:string table, 2:bool deleteIndexFiles) throws (1:BlurException ex)
-
-  void optimize(1:string table, 2:i32 numberOfSegmentsPerShard) throws (1:BlurException ex)
-  
-  bool isInSafeMode(1:string cluster) throws (1:BlurException ex)
-
-  map<string,string> configuration() throws (1:BlurException ex)
-}
-
-enum TYPE {
-  STRING, INT, LONG, FLOAT, DOUBLE, BINARY, TEXT
-}
-
-struct Attribute {
-  1:string name,
-  2:binary value,
-  3:TYPE type
+  7:map<string,string> properties
 }
 
 struct Session {
-  1:string sessionId,
-  2:map<string,string> properties
-}
-
-struct QuerySession {
-  1:Session session,
-  2:string queryId
-}
-
-enum SortType {
-    /** Sort by document score (relevance).  Sort values are Float and higher
-     * values are at the front. */
-    SCORE,
-
-    /** Sort by document number (index order).  Sort values are Integer and lower
-     * values are at the front. */
-    DOC,
-
-    /** Sort using term values as Strings.  Sort values are String and lower
-     * values are at the front. */
-    STRING,
-
-    /** Sort using term values as encoded Integers.  Sort values are Integer and
-     * lower values are at the front. */
-    INT,
-
-    /** Sort using term values as encoded Floats.  Sort values are Float and
-     * lower values are at the front. */
-    FLOAT,
-
-    /** Sort using term values as encoded Longs.  Sort values are Long and
-     * lower values are at the front. */
-    LONG,
-
-    /** Sort using term values as encoded Doubles.  Sort values are Double and
-     * lower values are at the front. */
-    DOUBLE,
-
-    /** Sort using term values as encoded Shorts.  Sort values are Short and
-     * lower values are at the front. */
-    SHORT,
-
-    /** Sort using term values as encoded Bytes.  Sort values are Byte and
-     * lower values are at the front. */
-    BYTE,
-
-    /** Sort using term values as Strings, but comparing by
-     * value (using String.compareTo) for all comparisons.
-     * This is typically slower than {@link #STRING}, which
-     * uses ordinals to do the sorting. */
-    STRING_VAL,
-
-    /** Sort use byte[] index values. */
-    BYTES,
+  1:string sessionId
 }
 
 struct SortField {
@@ -421,26 +251,22 @@ struct Sort {
  1:list<SortField> fields
 }
 
-struct DocLocation {
- 1:i32 doc,
- 2:i32 shardIndex
-}
-
 struct ScoreDoc {
  1:double score,
- 2:DocLocation docLocation,
+ 2:i64 docLocation,
  4:list<binary> fields
 }
 
 struct QueryArgs {
- 1:ScoreDoc after,
- 2:binary query,
- 3:binary filter,
- 4:i32 numberToFetch,
- 5:Sort sort,
- 6:bool doDocScores,
- 7:bool doMaxScore,
- 8:list<i32> shardIndexes
+ 1:i64 id,
+ 2:ScoreDoc after,
+ 3:binary query,
+ 4:binary filter,
+ 5:i32 numberToFetch = 100,
+ 6:Sort sort,
+ 7:bool doDocScores = 1,
+ 8:bool doMaxScore = 0,
+ 9:list<i32> shardIndexes
 }
 
 struct TopFieldDocs {
@@ -472,7 +298,7 @@ struct Field {
 
 struct Document {
  /**
-  *
+  * This list of fields to be indexed.  The same field name can be used across fields and the order of the fields will be maintained.
   */
  1:list<Field> fields
 }
@@ -490,35 +316,42 @@ struct Term {
 
 struct MutateOptions {
  /**
-  *
+  * The name of the table.
   */
  1:string table,
  /**
-  *
+  * The index of the shard in the table that the mutate will operate against.
   */
  2:i32 shardIndex,
  /**
-  *
+  * Setting this to true will cause the mutate call to block until the mutates are visible.
   */
- 3:bool waitToBeVisible,
+ 3:bool waitToBeVisible = 0,
  /**
-  *
+  * Whether or not to add this mutation to the write ahead log for recovery of information during a shard server crash.
   */
- 4:bool writeAheadLog
+ 4:bool writeAheadLog = 1
 }
 
+/**
+ * Contains a the delete term as well as the documents that will be added to the index shard.
+ */
 struct UpdatePackage {
  /**
-  *
+  * The term that will mark old Documents as deleted before adding the documents.
   */
  1:Term term,
  /**
-  *
+  * The documents to be updated.
   */
  2:list<Document> documents
 }
 
-service ShardServer extends Blur {
+
+
+service Blur {
+
+  // Data reading
 
   /**
    * Creating a session snapshots the readers during search and document fetching.  This provides a static view of the indexes so the document ids will remain the same during a session.
@@ -542,14 +375,16 @@ service ShardServer extends Blur {
    * @param fields the field names to fetch.
    * @return the Documents that were requested.
    */
-  list<Document> doc(1:Session session, 2:list<DocLocation> docLocations, 4:set<string> fields) throws (1:BlurException e)
+  list<Document> doc(1:Session session, 2:list<i64> docLocations, 4:set<string> fields) throws (1:BlurException e)
 
   /**
    * Closes the session and allows the readers to be closed.
    * @param session the Session.
    */
   void closeReadSession(1:Session session) throws (1:BlurException e)
-  
+
+  // Data mutation  
+
   /**
    * Add Documents to the given table in the provided shard.  If the table or shard is not found on this shard server a BlurException will be thrown.
    * @param options the MutateOptions provide the table name, shard index, etc.
@@ -577,6 +412,96 @@ service ShardServer extends Blur {
    * @param updatePackages the documents to be updated.  NOTE: All documents within a update document object are indexed in a single segment.
    */
   void updateDocuments(1:MutateOptions options, 2:list<UpdatePackage> updatePackages) throws (1:BlurException e)
+
+  // Cluster state.
+
+  /**
+   * Returns a list of all the shard servers for the given cluster.
+   * @param cluster the cluster name.
+   * @return list of servers, e.g. node1:40020.
+   */
+  list<string> serverList() throws (1:BlurException ex)
+
+  /**
+   * Gets a list shard ids for the given server and table.
+   * @param table the table name.
+   * @param server the server name, e.g. node1:40020
+   * @return list of shard ids.
+   */
+  list<i32> serverLayout(1:string table, 2:string server) throws (1:BlurException ex)
+
+  /**
+   * Gets a list of the table names.
+   * @return list of table names.
+   */
+  list<string> tableList() throws (1:BlurException ex)
+
+  /**
+   * Is cluster in safe mode.
+   * @return safe mode boolean.
+   */
+  bool isInSafeMode() throws (1:BlurException ex)
+
+  // Table admin
+
+  /**
+   * Create a table with the given table descriptor.
+   * @param tableDescriptor the TableDescriptor.
+   */
+  void createTable(1:TableDescriptor tableDescriptor) throws (1:BlurException ex)
+
+  /**
+   * Enables a table with the given table name.
+   * @param table the table name.
+   */
+  void enableTable(1:string table) throws (1:BlurException ex)
+
+  /**
+   * Disables a table with the given table name.
+   * @param table the table name.
+   */
+  void disableTable(1:string table) throws (1:BlurException ex)
+
+  /**
+   * Removes a table with the given table name.
+   * @param table the table name.
+   * @param deleteIndexFiles boolean, whether or not to remove the indexes from the HDFS system.
+   */
+  void removeTable(1:string table, 2:bool deleteIndexFiles) throws (1:BlurException ex)
+
+  /**
+   * Returns a table descriptor for the given table.
+   * @param table the table name.
+   */
+  TableDescriptor describe(1:string table) throws (1:BlurException ex)
+  
+  // Query status
+
+  /**
+   * Cancels a query that is executing against the given table with the given uuid.  Note, the cancel call maybe take some time for the query actually stops executing.
+   * @param table the table name.
+   * @param uuid the uuid of the query.
+   */
+  void cancelQuery(1:Session session, 2:i64 id) throws (1:BlurException ex)
+
+  /**
+   * Returns a list of the query ids of queries that have recently been executed for the given table.
+   * @param table the table name.
+   * @return the uuids of the query status objects.
+   */
+  list<i64> queryStatusIdList(1:Session session) throws (1:BlurException ex)
+
+  /**
+   * Returns the query status for the given table and query uuid.
+   * @param table the table name.
+   * @param uuid the uuid of the query.
+   * @return the query status for the given.
+   */
+  QueryStatus queryStatus(1:Session session, 2:i64 id) throws (1:BlurException ex)
+
+  
+  LiveSchema schema(1:string table) throws (1:BlurException ex)
+  TableStats tableStats(1:string table) throws (1:BlurException ex)
   
 }
 

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/aee531c2/interface/gen-html/Blur.html
----------------------------------------------------------------------
diff --git a/interface/gen-html/Blur.html b/interface/gen-html/Blur.html
index dc52479..2cf6fde 100644
--- a/interface/gen-html/Blur.html
+++ b/interface/gen-html/Blur.html
@@ -11,58 +11,44 @@
 <tr>
 <td>Blur</td><td><a href="Blur.html#Svc_Blur">Blur</a><br/>
 <ul>
+<li><a href="Blur.html#Fn_Blur_addDocuments">addDocuments</a></li>
 <li><a href="Blur.html#Fn_Blur_cancelQuery">cancelQuery</a></li>
-<li><a href="Blur.html#Fn_Blur_configuration">configuration</a></li>
-<li><a href="Blur.html#Fn_Blur_controllerServerList">controllerServerList</a></li>
+<li><a href="Blur.html#Fn_Blur_closeReadSession">closeReadSession</a></li>
 <li><a href="Blur.html#Fn_Blur_createTable">createTable</a></li>
-<li><a href="Blur.html#Fn_Blur_currentQueries">currentQueries</a></li>
+<li><a href="Blur.html#Fn_Blur_deleteDocuments">deleteDocuments</a></li>
+<li><a href="Blur.html#Fn_Blur_deleteDocumentsByQueries">deleteDocumentsByQueries</a></li>
 <li><a href="Blur.html#Fn_Blur_describe">describe</a></li>
 <li><a href="Blur.html#Fn_Blur_disableTable">disableTable</a></li>
+<li><a href="Blur.html#Fn_Blur_doc">doc</a></li>
 <li><a href="Blur.html#Fn_Blur_enableTable">enableTable</a></li>
 <li><a href="Blur.html#Fn_Blur_isInSafeMode">isInSafeMode</a></li>
-<li><a href="Blur.html#Fn_Blur_optimize">optimize</a></li>
-<li><a href="Blur.html#Fn_Blur_queryStatusById">queryStatusById</a></li>
+<li><a href="Blur.html#Fn_Blur_openReadSession">openReadSession</a></li>
+<li><a href="Blur.html#Fn_Blur_queryStatus">queryStatus</a></li>
 <li><a href="Blur.html#Fn_Blur_queryStatusIdList">queryStatusIdList</a></li>
 <li><a href="Blur.html#Fn_Blur_removeTable">removeTable</a></li>
 <li><a href="Blur.html#Fn_Blur_schema">schema</a></li>
-<li><a href="Blur.html#Fn_Blur_shardClusterList">shardClusterList</a></li>
-<li><a href="Blur.html#Fn_Blur_shardServerLayout">shardServerLayout</a></li>
-<li><a href="Blur.html#Fn_Blur_shardServerList">shardServerList</a></li>
+<li><a href="Blur.html#Fn_Blur_search">search</a></li>
+<li><a href="Blur.html#Fn_Blur_serverLayout">serverLayout</a></li>
+<li><a href="Blur.html#Fn_Blur_serverList">serverList</a></li>
 <li><a href="Blur.html#Fn_Blur_tableList">tableList</a></li>
-<li><a href="Blur.html#Fn_Blur_tableListByCluster">tableListByCluster</a></li>
 <li><a href="Blur.html#Fn_Blur_tableStats">tableStats</a></li>
-</ul>
-<a href="Blur.html#Svc_ShardServer">ShardServer</a><br/>
-<ul>
-<li><a href="Blur.html#Fn_ShardServer_addDocuments">addDocuments</a></li>
-<li><a href="Blur.html#Fn_ShardServer_closeReadSession">closeReadSession</a></li>
-<li><a href="Blur.html#Fn_ShardServer_deleteDocuments">deleteDocuments</a></li>
-<li><a href="Blur.html#Fn_ShardServer_deleteDocumentsByQueries">deleteDocumentsByQueries</a></li>
-<li><a href="Blur.html#Fn_ShardServer_doc">doc</a></li>
-<li><a href="Blur.html#Fn_ShardServer_openReadSession">openReadSession</a></li>
-<li><a href="Blur.html#Fn_ShardServer_search">search</a></li>
-<li><a href="Blur.html#Fn_ShardServer_updateDocuments">updateDocuments</a></li>
+<li><a href="Blur.html#Fn_Blur_updateDocuments">updateDocuments</a></li>
 </ul>
 </td>
-<td><a href="Blur.html#Struct_AlternateColumnDefinition">AlternateColumnDefinition</a><br/>
-<a href="Blur.html#Struct_AnalyzerDefinition">AnalyzerDefinition</a><br/>
-<a href="Blur.html#Struct_Attribute">Attribute</a><br/>
+<td><a href="Blur.html#Struct_Analyzer">Analyzer</a><br/>
+<a href="Blur.html#Struct_AnalyzerSubType">AnalyzerSubType</a><br/>
+<a href="Blur.html#Struct_AnalyzerType">AnalyzerType</a><br/>
 <a href="Blur.html#Struct_BlurException">BlurException</a><br/>
-<a href="Blur.html#Struct_BlurQueryStatus">BlurQueryStatus</a><br/>
-<a href="Blur.html#Struct_ColumnDefinition">ColumnDefinition</a><br/>
-<a href="Blur.html#Struct_ColumnFamilyDefinition">ColumnFamilyDefinition</a><br/>
-<a href="Blur.html#Struct_ColumnPreCache">ColumnPreCache</a><br/>
+<a href="Blur.html#Struct_ClassDefinition">ClassDefinition</a><br/>
 <a href="Blur.html#Struct_CpuTime">CpuTime</a><br/>
-<a href="Blur.html#Struct_DocLocation">DocLocation</a><br/>
 <a href="Blur.html#Struct_Document">Document</a><br/>
 <a href="Blur.html#Struct_Field">Field</a><br/>
+<a href="Blur.html#Struct_LiveSchema">LiveSchema</a><br/>
 <a href="Blur.html#Struct_MutateOptions">MutateOptions</a><br/>
 <a href="Blur.html#Struct_QueryArgs">QueryArgs</a><br/>
-<a href="Blur.html#Struct_QuerySession">QuerySession</a><br/>
 <a href="Blur.html#Enum_QueryState">QueryState</a><br/>
-<a href="Blur.html#Struct_Schema">Schema</a><br/>
+<a href="Blur.html#Struct_QueryStatus">QueryStatus</a><br/>
 <a href="Blur.html#Struct_ScoreDoc">ScoreDoc</a><br/>
-<a href="Blur.html#Enum_ScoreType">ScoreType</a><br/>
 <a href="Blur.html#Struct_Session">Session</a><br/>
 <a href="Blur.html#Struct_Sort">Sort</a><br/>
 <a href="Blur.html#Struct_SortField">SortField</a><br/>
@@ -77,18 +63,6 @@
 <td></code></td>
 </tr></table>
 <hr/><h2 id="Enumerations">Enumerations</h2>
-<div class="definition"><h3 id="Enum_ScoreType">Enumeration: ScoreType</h3>
-The scoring type used during a SuperQuery to score multi Record hits within a ColumnFamily.<br/><br/>
-SUPER - During a multi Record match, a calculation of the best match Record plus how often it occurs within the match Row produces the score that is used in the scoring of the SuperQuery.<br/><br/>
-AGGREGATE - During a multi Record match, the aggregate score of all the Records within a ColumnFamily is used in the scoring of the SuperQuery.<br/><br/>
-BEST - During a multi Record match, the best score of all the Records within a ColumnFamily is used in the scoring of the SuperQuery.<br/><br/>
-CONSTANT - A constant score of 1 is used in the scoring of the SuperQuery.<br/>
-<br/><br/><table class="table-bordered table-striped table-condensed">
-<tr><td><code>SUPER</code></td><td><code>0</code></td></tr>
-<tr><td><code>AGGREGATE</code></td><td><code>1</code></td></tr>
-<tr><td><code>BEST</code></td><td><code>2</code></td></tr>
-<tr><td><code>CONSTANT</code></td><td><code>3</code></td></tr>
-</table></div>
 <div class="definition"><h3 id="Enum_QueryState">Enumeration: QueryState</h3>
 The state of a query.<br/><br/>
 RUNNING - Query is running.<br/><br/>
@@ -139,114 +113,69 @@ trace (if any).
 <tr><td>2</td><td>realTime</td><td><code>i64</code></td><td>
 </td><td>default</td><td></td></tr>
 </table><br/><p/>
-<br/></div><div class="definition"><h3 id="Struct_BlurQueryStatus">Struct: BlurQueryStatus</h3>
+<br/></div><div class="definition"><h3 id="Struct_QueryStatus">Struct: QueryStatus</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
-<tr><td>2</td><td>cpuTimes</td><td><code>map&lt;<code>string</code>, <code><a href="Blur.html#Struct_CpuTime">CpuTime</a></code>&gt;</code></td><td>
+<tr><td>1</td><td>cpuTimes</td><td><code>map&lt;<code>string</code>, <code><a href="Blur.html#Struct_CpuTime">CpuTime</a></code>&gt;</code></td><td>
 </td><td>default</td><td></td></tr>
-<tr><td>3</td><td>completeShards</td><td><code>i32</code></td><td>
+<tr><td>2</td><td>completeShards</td><td><code>i32</code></td><td>
 </td><td>default</td><td></td></tr>
-<tr><td>4</td><td>totalShards</td><td><code>i32</code></td><td>
+<tr><td>3</td><td>totalShards</td><td><code>i32</code></td><td>
 </td><td>default</td><td></td></tr>
-<tr><td>5</td><td>state</td><td><code><a href="Blur.html#Enum_QueryState">QueryState</a></code></td><td>
-</td><td>default</td><td></td></tr>
-<tr><td>6</td><td>uuid</td><td><code>i64</code></td><td>
+<tr><td>4</td><td>state</td><td><code><a href="Blur.html#Enum_QueryState">QueryState</a></code></td><td>
 </td><td>default</td><td></td></tr>
 </table><br/><p/>
 <br/></div><div class="definition"><h3 id="Struct_TableStats">Struct: TableStats</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
-<tr><td>1</td><td>tableName</td><td><code>string</code></td><td>
-</td><td>default</td><td></td></tr>
-<tr><td>2</td><td>bytes</td><td><code>i64</code></td><td>
+<tr><td>1</td><td>bytes</td><td><code>i64</code></td><td>
 </td><td>default</td><td></td></tr>
-<tr><td>3</td><td>recordCount</td><td><code>i64</code></td><td>
+<tr><td>2</td><td>documentCount</td><td><code>i64</code></td><td>
 </td><td>default</td><td></td></tr>
-<tr><td>4</td><td>rowCount</td><td><code>i64</code></td><td>
-</td><td>default</td><td></td></tr>
-<tr><td>5</td><td>queries</td><td><code>i64</code></td><td>
+<tr><td>3</td><td>queries</td><td><code>i64</code></td><td>
 </td><td>default</td><td></td></tr>
 </table><br/><p/>
-<br/></div><div class="definition"><h3 id="Struct_Schema">Struct: Schema</h3>
+<br/></div><div class="definition"><h3 id="Struct_LiveSchema">Struct: LiveSchema</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
 <tr><td>1</td><td>table</td><td><code>string</code></td><td>
 </td><td>default</td><td></td></tr>
 <tr><td>2</td><td>columnFamilies</td><td><code>map&lt;<code>string</code>, <code>set&lt;<code>string</code>&gt;</code>&gt;</code></td><td>
 </td><td>default</td><td></td></tr>
 </table><br/><p/>
-<br/></div><div class="definition"><h3 id="Struct_AlternateColumnDefinition">Struct: AlternateColumnDefinition</h3>
+<br/></div><div class="definition"><h3 id="Struct_ClassDefinition">Struct: ClassDefinition</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
-<tr><td>1</td><td>analyzerClassName</td><td><code>string</code></td><td>
-</td><td>default</td><td></td></tr>
-</table><br/><p/>
-<br/></div><div class="definition"><h3 id="Struct_ColumnDefinition">Struct: ColumnDefinition</h3>
+<tr><td>1</td><td>className</td><td><code>string</code></td><td></td><td>default</td><td></td></tr>
+<tr><td>2</td><td>arguments</td><td><code>map&lt;<code>string</code>, <code>binary</code>&gt;</code></td><td></td><td>default</td><td></td></tr>
+</table><br/></div><div class="definition"><h3 id="Struct_AnalyzerSubType">Struct: AnalyzerSubType</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
-<tr><td>1</td><td>analyzerClassName</td><td><code>string</code></td><td></td><td>default</td><td>"org.apache.lucene.analysis.standard.StandardAnalyzer"</td></tr>
-<tr><td>2</td><td>fullTextIndex</td><td><code>bool</code></td><td></td><td>default</td><td></td></tr>
-<tr><td>3</td><td>alternateColumnDefinitions</td><td><code>map&lt;<code>string</code>, <code><a href="Blur.html#Struct_AlternateColumnDefinition">AlternateColumnDefinition</a></code>&gt;</code></td><td></td><td>default</td><td></td></tr>
-</table><br/><p/>
-<br/></div><div class="definition"><h3 id="Struct_ColumnFamilyDefinition">Struct: ColumnFamilyDefinition</h3>
+<tr><td>1</td><td>fieldName</td><td><code>string</code></td><td></td><td>default</td><td></td></tr>
+<tr><td>2</td><td>classDefinition</td><td><code><a href="Blur.html#Struct_ClassDefinition">ClassDefinition</a></code></td><td></td><td>default</td><td></td></tr>
+</table><br/></div><div class="definition"><h3 id="Struct_AnalyzerType">Struct: AnalyzerType</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
-<tr><td>1</td><td>defaultDefinition</td><td><code><a href="Blur.html#Struct_ColumnDefinition">ColumnDefinition</a></code></td><td>
-</td><td>default</td><td></td></tr>
-<tr><td>2</td><td>columnDefinitions</td><td><code>map&lt;<code>string</code>, <code><a href="Blur.html#Struct_ColumnDefinition">ColumnDefinition</a></code>&gt;</code></td><td>
-</td><td>default</td><td></td></tr>
-</table><br/><p/>
-<br/></div><div class="definition"><h3 id="Struct_AnalyzerDefinition">Struct: AnalyzerDefinition</h3>
+<tr><td>1</td><td>fieldName</td><td><code>string</code></td><td></td><td>default</td><td></td></tr>
+<tr><td>2</td><td>classDefinition</td><td><code><a href="Blur.html#Struct_ClassDefinition">ClassDefinition</a></code></td><td></td><td>default</td><td></td></tr>
+<tr><td>3</td><td>analyzerSubTypes</td><td><code>list&lt;<code><a href="Blur.html#Struct_AnalyzerSubType">AnalyzerSubType</a></code>&gt;</code></td><td></td><td>default</td><td></td></tr>
+</table><br/></div><div class="definition"><h3 id="Struct_Analyzer">Struct: Analyzer</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
-<tr><td>1</td><td>defaultDefinition</td><td><code><a href="Blur.html#Struct_ColumnDefinition">ColumnDefinition</a></code></td><td>
-</td><td>default</td><td></td></tr>
-<tr><td>2</td><td>fullTextAnalyzerClassName</td><td><code>string</code></td><td>
-</td><td>default</td><td>"org.apache.lucene.analysis.standard.StandardAnalyzer"</td></tr>
-<tr><td>3</td><td>columnFamilyDefinitions</td><td><code>map&lt;<code>string</code>, <code><a href="Blur.html#Struct_ColumnFamilyDefinition">ColumnFamilyDefinition</a></code>&gt;</code></td><td>
-</td><td>default</td><td></td></tr>
-</table><br/><p/>
-<br/></div><div class="definition"><h3 id="Struct_ColumnPreCache">Struct: ColumnPreCache</h3>
+<tr><td>1</td><td>analyzerTypes</td><td><code>list&lt;<code><a href="Blur.html#Struct_AnalyzerType">AnalyzerType</a></code>&gt;</code></td><td></td><td>default</td><td></td></tr>
+</table><br/></div><div class="definition"><h3 id="Struct_TableDescriptor">Struct: TableDescriptor</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
-<tr><td>1</td><td>preCacheCols</td><td><code>list&lt;<code>string</code>&gt;</code></td><td>This map sets what column families and columns to prefetch into block cache on shard open.
+<tr><td>1</td><td>name</td><td><code>string</code></td><td>
 </td><td>default</td><td></td></tr>
-</table><br/><p/>
-<br/></div><div class="definition"><h3 id="Struct_TableDescriptor">Struct: TableDescriptor</h3>
-<table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
-<tr><td>1</td><td>isEnabled</td><td><code>bool</code></td><td>
+<tr><td>2</td><td>enabled</td><td><code>bool</code></td><td>
 </td><td>default</td><td>1</td></tr>
-<tr><td>2</td><td>analyzerDefinition</td><td><code><a href="Blur.html#Struct_AnalyzerDefinition">AnalyzerDefinition</a></code></td><td>
-</td><td>default</td><td></td></tr>
 <tr><td>3</td><td>shardCount</td><td><code>i32</code></td><td>
 </td><td>default</td><td>1</td></tr>
-<tr><td>4</td><td>tableUri</td><td><code>string</code></td><td>
-</td><td>default</td><td></td></tr>
-<tr><td>5</td><td>compressionClass</td><td><code>string</code></td><td>
-</td><td>default</td><td>"org.apache.hadoop.io.compress.DefaultCodec"</td></tr>
-<tr><td>6</td><td>compressionBlockSize</td><td><code>i32</code></td><td>
-</td><td>default</td><td>32768</td></tr>
-<tr><td>7</td><td>cluster</td><td><code>string</code></td><td>
-</td><td>default</td><td>"default"</td></tr>
-<tr><td>8</td><td>name</td><td><code>string</code></td><td>
+<tr><td>4</td><td>storagePath</td><td><code>string</code></td><td>
 </td><td>default</td><td></td></tr>
-<tr><td>9</td><td>similarityClass</td><td><code>string</code></td><td>
+<tr><td>5</td><td>analyzer</td><td><code><a href="Blur.html#Struct_Analyzer">Analyzer</a></code></td><td>
 </td><td>default</td><td></td></tr>
-<tr><td>10</td><td>blockCaching</td><td><code>bool</code></td><td>
-</td><td>default</td><td>1</td></tr>
-<tr><td>11</td><td>blockCachingFileTypes</td><td><code>set&lt;<code>string</code>&gt;</code></td><td>
-</td><td>default</td><td></td></tr>
-<tr><td>12</td><td>readOnly</td><td><code>bool</code></td><td>If a table is set to be readonly, that means that mutates through Thrift are NOT allowed.  However
-updates through MapReduce are allowed and in fact they are only allowed if the table is in readOnly mode.
+<tr><td>6</td><td>readOnly</td><td><code>bool</code></td><td>
 </td><td>default</td><td>0</td></tr>
-<tr><td>13</td><td>columnPreCache</td><td><code><a href="Blur.html#Struct_ColumnPreCache">ColumnPreCache</a></code></td><td>Sets what column families and columns to prefetch into block cache on shard open.
+<tr><td>7</td><td>properties</td><td><code>map&lt;<code>string</code>, <code>string</code>&gt;</code></td><td>compressionClass,compressionBlockSize,similarityClass,blockCaching = 1,blockCachingFileTypes,columnPreCache
 </td><td>default</td><td></td></tr>
 </table><br/><p/>
-<br/></div><div class="definition"><h3 id="Struct_Attribute">Struct: Attribute</h3>
-<table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
-<tr><td>1</td><td>name</td><td><code>string</code></td><td></td><td>default</td><td></td></tr>
-<tr><td>2</td><td>value</td><td><code>binary</code></td><td></td><td>default</td><td></td></tr>
-<tr><td>3</td><td>type</td><td><code><a href="Blur.html#Enum_TYPE">TYPE</a></code></td><td></td><td>default</td><td></td></tr>
-</table><br/></div><div class="definition"><h3 id="Struct_Session">Struct: Session</h3>
+<br/></div><div class="definition"><h3 id="Struct_Session">Struct: Session</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
 <tr><td>1</td><td>sessionId</td><td><code>string</code></td><td></td><td>default</td><td></td></tr>
-<tr><td>2</td><td>properties</td><td><code>map&lt;<code>string</code>, <code>string</code>&gt;</code></td><td></td><td>default</td><td></td></tr>
-</table><br/></div><div class="definition"><h3 id="Struct_QuerySession">Struct: QuerySession</h3>
-<table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
-<tr><td>1</td><td>session</td><td><code><a href="Blur.html#Struct_Session">Session</a></code></td><td></td><td>default</td><td></td></tr>
-<tr><td>2</td><td>queryId</td><td><code>string</code></td><td></td><td>default</td><td></td></tr>
 </table><br/></div><div class="definition"><h3 id="Struct_SortField">Struct: SortField</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
 <tr><td>1</td><td>field</td><td><code>string</code></td><td></td><td>default</td><td></td></tr>
@@ -255,25 +184,22 @@ updates through MapReduce are allowed and in fact they are only allowed if the t
 </table><br/></div><div class="definition"><h3 id="Struct_Sort">Struct: Sort</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
 <tr><td>1</td><td>fields</td><td><code>list&lt;<code><a href="Blur.html#Struct_SortField">SortField</a></code>&gt;</code></td><td></td><td>default</td><td></td></tr>
-</table><br/></div><div class="definition"><h3 id="Struct_DocLocation">Struct: DocLocation</h3>
-<table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
-<tr><td>1</td><td>doc</td><td><code>i32</code></td><td></td><td>default</td><td></td></tr>
-<tr><td>2</td><td>shardIndex</td><td><code>i32</code></td><td></td><td>default</td><td></td></tr>
 </table><br/></div><div class="definition"><h3 id="Struct_ScoreDoc">Struct: ScoreDoc</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
 <tr><td>1</td><td>score</td><td><code>double</code></td><td></td><td>default</td><td></td></tr>
-<tr><td>2</td><td>docLocation</td><td><code><a href="Blur.html#Struct_DocLocation">DocLocation</a></code></td><td></td><td>default</td><td></td></tr>
+<tr><td>2</td><td>docLocation</td><td><code>i64</code></td><td></td><td>default</td><td></td></tr>
 <tr><td>4</td><td>fields</td><td><code>list&lt;<code>binary</code>&gt;</code></td><td></td><td>default</td><td></td></tr>
 </table><br/></div><div class="definition"><h3 id="Struct_QueryArgs">Struct: QueryArgs</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
-<tr><td>1</td><td>after</td><td><code><a href="Blur.html#Struct_ScoreDoc">ScoreDoc</a></code></td><td></td><td>default</td><td></td></tr>
-<tr><td>2</td><td>query</td><td><code>binary</code></td><td></td><td>default</td><td></td></tr>
-<tr><td>3</td><td>filter</td><td><code>binary</code></td><td></td><td>default</td><td></td></tr>
-<tr><td>4</td><td>numberToFetch</td><td><code>i32</code></td><td></td><td>default</td><td></td></tr>
-<tr><td>5</td><td>sort</td><td><code><a href="Blur.html#Struct_Sort">Sort</a></code></td><td></td><td>default</td><td></td></tr>
-<tr><td>6</td><td>doDocScores</td><td><code>bool</code></td><td></td><td>default</td><td></td></tr>
-<tr><td>7</td><td>doMaxScore</td><td><code>bool</code></td><td></td><td>default</td><td></td></tr>
-<tr><td>8</td><td>shardIndexes</td><td><code>list&lt;<code>i32</code>&gt;</code></td><td></td><td>default</td><td></td></tr>
+<tr><td>1</td><td>id</td><td><code>i64</code></td><td></td><td>default</td><td></td></tr>
+<tr><td>2</td><td>after</td><td><code><a href="Blur.html#Struct_ScoreDoc">ScoreDoc</a></code></td><td></td><td>default</td><td></td></tr>
+<tr><td>3</td><td>query</td><td><code>binary</code></td><td></td><td>default</td><td></td></tr>
+<tr><td>4</td><td>filter</td><td><code>binary</code></td><td></td><td>default</td><td></td></tr>
+<tr><td>5</td><td>numberToFetch</td><td><code>i32</code></td><td></td><td>default</td><td>100</td></tr>
+<tr><td>6</td><td>sort</td><td><code><a href="Blur.html#Struct_Sort">Sort</a></code></td><td></td><td>default</td><td></td></tr>
+<tr><td>7</td><td>doDocScores</td><td><code>bool</code></td><td></td><td>default</td><td>1</td></tr>
+<tr><td>8</td><td>doMaxScore</td><td><code>bool</code></td><td></td><td>default</td><td>0</td></tr>
+<tr><td>9</td><td>shardIndexes</td><td><code>list&lt;<code>i32</code>&gt;</code></td><td></td><td>default</td><td></td></tr>
 </table><br/></div><div class="definition"><h3 id="Struct_TopFieldDocs">Struct: TopFieldDocs</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
 <tr><td>1</td><td>shardIndex</td><td><code>i32</code></td><td></td><td>default</td><td></td></tr>
@@ -293,7 +219,7 @@ updates through MapReduce are allowed and in fact they are only allowed if the t
 </td><td>default</td><td>1</td></tr>
 </table><br/></div><div class="definition"><h3 id="Struct_Document">Struct: Document</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
-<tr><td>1</td><td>fields</td><td><code>list&lt;<code><a href="Blur.html#Struct_Field">Field</a></code>&gt;</code></td><td>
+<tr><td>1</td><td>fields</td><td><code>list&lt;<code><a href="Blur.html#Struct_Field">Field</a></code>&gt;</code></td><td>This list of fields to be indexed.  The same field name can be used across fields and the order of the fields will be maintained.
 </td><td>default</td><td></td></tr>
 </table><br/></div><div class="definition"><h3 id="Struct_Term">Struct: Term</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
@@ -303,117 +229,30 @@ updates through MapReduce are allowed and in fact they are only allowed if the t
 </td><td>default</td><td></td></tr>
 </table><br/></div><div class="definition"><h3 id="Struct_MutateOptions">Struct: MutateOptions</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
-<tr><td>1</td><td>table</td><td><code>string</code></td><td>
-</td><td>default</td><td></td></tr>
-<tr><td>2</td><td>shardIndex</td><td><code>i32</code></td><td>
-</td><td>default</td><td></td></tr>
-<tr><td>3</td><td>waitToBeVisible</td><td><code>bool</code></td><td>
+<tr><td>1</td><td>table</td><td><code>string</code></td><td>The name of the table.
 </td><td>default</td><td></td></tr>
-<tr><td>4</td><td>writeAheadLog</td><td><code>bool</code></td><td>
+<tr><td>2</td><td>shardIndex</td><td><code>i32</code></td><td>The index of the shard in the table that the mutate will operate against.
 </td><td>default</td><td></td></tr>
+<tr><td>3</td><td>waitToBeVisible</td><td><code>bool</code></td><td>Setting this to true will cause the mutate call to block until the mutates are visible.
+</td><td>default</td><td>0</td></tr>
+<tr><td>4</td><td>writeAheadLog</td><td><code>bool</code></td><td>Whether or not to add this mutation to the write ahead log for recovery of information during a shard server crash.
+</td><td>default</td><td>1</td></tr>
 </table><br/></div><div class="definition"><h3 id="Struct_UpdatePackage">Struct: UpdatePackage</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
-<tr><td>1</td><td>term</td><td><code><a href="Blur.html#Struct_Term">Term</a></code></td><td>
+<tr><td>1</td><td>term</td><td><code><a href="Blur.html#Struct_Term">Term</a></code></td><td>The term that will mark old Documents as deleted before adding the documents.
 </td><td>default</td><td></td></tr>
-<tr><td>2</td><td>documents</td><td><code>list&lt;<code><a href="Blur.html#Struct_Document">Document</a></code>&gt;</code></td><td>
+<tr><td>2</td><td>documents</td><td><code>list&lt;<code><a href="Blur.html#Struct_Document">Document</a></code>&gt;</code></td><td>The documents to be updated.
 </td><td>default</td><td></td></tr>
-</table><br/></div><hr/><h2 id="Services">Services</h2>
+</table><br/>Contains a the delete term as well as the documents that will be added to the index shard.
+<br/></div><hr/><h2 id="Services">Services</h2>
 <h3 id="Svc_Blur">Service: Blur</h3>
-<p/>
-<br/><div class="definition"><h4 id="Fn_Blur_shardClusterList">Function: Blur.shardClusterList</h4>
-<pre><code>list&lt;<code>string</code>&gt;</code> shardClusterList()
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre>Returns a list of all the shard clusters.
-<br/></div><div class="definition"><h4 id="Fn_Blur_shardServerList">Function: Blur.shardServerList</h4>
-<pre><code>list&lt;<code>string</code>&gt;</code> shardServerList(<code>string</code> cluster)
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre>Returns a list of all the shard servers for the given cluster.
-@param cluster the cluster name.
-<br/></div><div class="definition"><h4 id="Fn_Blur_controllerServerList">Function: Blur.controllerServerList</h4>
-<pre><code>list&lt;<code>string</code>&gt;</code> controllerServerList()
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre>Returns a list of all the controller servers.
-<br/></div><div class="definition"><h4 id="Fn_Blur_shardServerLayout">Function: Blur.shardServerLayout</h4>
-<pre><code>map&lt;<code>string</code>, <code>string</code>&gt;</code> shardServerLayout(<code>string</code> table)
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre>Returns a map of the layout of the given table, where the key is the shard name and the value is the shard server.
-@param table the table name.
-<br/></div><div class="definition"><h4 id="Fn_Blur_tableList">Function: Blur.tableList</h4>
-<pre><code>list&lt;<code>string</code>&gt;</code> tableList()
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre>Returns a list of the table names across all shard clusters.
-<br/></div><div class="definition"><h4 id="Fn_Blur_tableListByCluster">Function: Blur.tableListByCluster</h4>
-<pre><code>list&lt;<code>string</code>&gt;</code> tableListByCluster(<code>string</code> cluster)
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre>Returns a list of the table names for the given cluster.
-@param cluster the cluster name.
-<br/></div><div class="definition"><h4 id="Fn_Blur_describe">Function: Blur.describe</h4>
-<pre><code><a href="Blur.html#Struct_TableDescriptor">TableDescriptor</a></code> describe(<code>string</code> table)
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre>Returns a table descriptor for the given table.
-@param table the table name.
-<br/></div><div class="definition"><h4 id="Fn_Blur_cancelQuery">Function: Blur.cancelQuery</h4>
-<pre><code>void</code> cancelQuery(<code>string</code> table,
-                 <code>i64</code> uuid)
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre>Cancels a query that is executing against the given table with the given uuid.  Note, the cancel call maybe take some time for the query actually stops executing.
-@param table the table name.
-@param uuid the uuid of the query.
-<br/></div><div class="definition"><h4 id="Fn_Blur_currentQueries">Function: Blur.currentQueries</h4>
-<pre><code>list&lt;<code><a href="Blur.html#Struct_BlurQueryStatus">BlurQueryStatus</a></code>&gt;</code> currentQueries(<code>string</code> table)
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre>@deprecated This method should avoided, @see #queryStatusIdList and #queryStatusById.
-@param table the table name.
-<br/></div><div class="definition"><h4 id="Fn_Blur_queryStatusIdList">Function: Blur.queryStatusIdList</h4>
-<pre><code>list&lt;<code>i64</code>&gt;</code> queryStatusIdList(<code>string</code> table)
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre>Returns a list of the query ids of queries that have recently been executed for the given table.
-@param table the table name.
-<br/></div><div class="definition"><h4 id="Fn_Blur_queryStatusById">Function: Blur.queryStatusById</h4>
-<pre><code><a href="Blur.html#Struct_BlurQueryStatus">BlurQueryStatus</a></code> queryStatusById(<code>string</code> table,
-                                <code>i64</code> uuid)
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre>Returns the query status for the given table and query uuid.
-@param table the table name.
-@param uuid the uuid of the query.
-<br/></div><div class="definition"><h4 id="Fn_Blur_schema">Function: Blur.schema</h4>
-<pre><code><a href="Blur.html#Struct_Schema">Schema</a></code> schema(<code>string</code> table)
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre></div><div class="definition"><h4 id="Fn_Blur_tableStats">Function: Blur.tableStats</h4>
-<pre><code><a href="Blur.html#Struct_TableStats">TableStats</a></code> tableStats(<code>string</code> table)
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre></div><div class="definition"><h4 id="Fn_Blur_createTable">Function: Blur.createTable</h4>
-<pre><code>void</code> createTable(<code><a href="Blur.html#Struct_TableDescriptor">TableDescriptor</a></code> tableDescriptor)
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre></div><div class="definition"><h4 id="Fn_Blur_enableTable">Function: Blur.enableTable</h4>
-<pre><code>void</code> enableTable(<code>string</code> table)
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre></div><div class="definition"><h4 id="Fn_Blur_disableTable">Function: Blur.disableTable</h4>
-<pre><code>void</code> disableTable(<code>string</code> table)
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre></div><div class="definition"><h4 id="Fn_Blur_removeTable">Function: Blur.removeTable</h4>
-<pre><code>void</code> removeTable(<code>string</code> table,
-                 <code>bool</code> deleteIndexFiles)
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre></div><div class="definition"><h4 id="Fn_Blur_optimize">Function: Blur.optimize</h4>
-<pre><code>void</code> optimize(<code>string</code> table,
-              <code>i32</code> numberOfSegmentsPerShard)
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre></div><div class="definition"><h4 id="Fn_Blur_isInSafeMode">Function: Blur.isInSafeMode</h4>
-<pre><code>bool</code> isInSafeMode(<code>string</code> cluster)
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre></div><div class="definition"><h4 id="Fn_Blur_configuration">Function: Blur.configuration</h4>
-<pre><code>map&lt;<code>string</code>, <code>string</code>&gt;</code> configuration()
-    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
-</pre></div><h3 id="Svc_ShardServer">Service: ShardServer</h3>
-<div class="extends"><em>extends</em> <code><a href="Blur.html#Svc_Blur">Blur</a></code></div>
-<div class="definition"><h4 id="Fn_ShardServer_openReadSession">Function: ShardServer.openReadSession</h4>
+<div class="definition"><h4 id="Fn_Blur_openReadSession">Function: Blur.openReadSession</h4>
 <pre><code><a href="Blur.html#Struct_Session">Session</a></code> openReadSession(<code>string</code> table)
     throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
 </pre>Creating a session snapshots the readers during search and document fetching.  This provides a static view of the indexes so the document ids will remain the same during a session.
 @param table the table name.
 @return the new Session.
-<br/></div><div class="definition"><h4 id="Fn_ShardServer_search">Function: ShardServer.search</h4>
+<br/></div><div class="definition"><h4 id="Fn_Blur_search">Function: Blur.search</h4>
 <pre><code>list&lt;<code><a href="Blur.html#Struct_TopFieldDocs">TopFieldDocs</a></code>&gt;</code> search(<code><a href="Blur.html#Struct_Session">Session</a></code> session,
                           <code><a href="Blur.html#Struct_QueryArgs">QueryArgs</a></code> queryArgs)
     throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
@@ -421,9 +260,9 @@ updates through MapReduce are allowed and in fact they are only allowed if the t
 @param session the Session.
 @param queryArgs the QueryArgs which contains the query, filter, sort, fetch, paging information, etc.
 @return the TopFieldDocs, where there is a TopFieldDocs object for each shard that was search against.
-<br/></div><div class="definition"><h4 id="Fn_ShardServer_doc">Function: ShardServer.doc</h4>
+<br/></div><div class="definition"><h4 id="Fn_Blur_doc">Function: Blur.doc</h4>
 <pre><code>list&lt;<code><a href="Blur.html#Struct_Document">Document</a></code>&gt;</code> doc(<code><a href="Blur.html#Struct_Session">Session</a></code> session,
-                   <code>list&lt;<code><a href="Blur.html#Struct_DocLocation">DocLocation</a></code>&gt;</code> docLocations,
+                   <code>list&lt;<code>i64</code>&gt;</code> docLocations,
                    <code>set&lt;<code>string</code>&gt;</code> fields)
     throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
 </pre>Fetches a document based on the DocLocation list with the fields specified.
@@ -431,37 +270,115 @@ updates through MapReduce are allowed and in fact they are only allowed if the t
 @param docLocations the document locations, which include shard index and document id.
 @param fields the field names to fetch.
 @return the Documents that were requested.
-<br/></div><div class="definition"><h4 id="Fn_ShardServer_closeReadSession">Function: ShardServer.closeReadSession</h4>
+<br/></div><div class="definition"><h4 id="Fn_Blur_closeReadSession">Function: Blur.closeReadSession</h4>
 <pre><code>void</code> closeReadSession(<code><a href="Blur.html#Struct_Session">Session</a></code> session)
     throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
 </pre>Closes the session and allows the readers to be closed.
 @param session the Session.
-<br/></div><div class="definition"><h4 id="Fn_ShardServer_addDocuments">Function: ShardServer.addDocuments</h4>
+<br/></div><div class="definition"><h4 id="Fn_Blur_addDocuments">Function: Blur.addDocuments</h4>
 <pre><code>void</code> addDocuments(<code><a href="Blur.html#Struct_MutateOptions">MutateOptions</a></code> options,
                   <code>list&lt;<code><a href="Blur.html#Struct_Document">Document</a></code>&gt;</code> documents)
     throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
 </pre>Add Documents to the given table in the provided shard.  If the table or shard is not found on this shard server a BlurException will be thrown.
 @param options the MutateOptions provide the table name, shard index, etc.
 @param documents the documents to be added.  NOTE: All documents provided to be indexed in a single segment.
-<br/></div><div class="definition"><h4 id="Fn_ShardServer_deleteDocumentsByQueries">Function: ShardServer.deleteDocumentsByQueries</h4>
+<br/></div><div class="definition"><h4 id="Fn_Blur_deleteDocumentsByQueries">Function: Blur.deleteDocumentsByQueries</h4>
 <pre><code>void</code> deleteDocumentsByQueries(<code><a href="Blur.html#Struct_MutateOptions">MutateOptions</a></code> options,
                               <code>list&lt;<code>binary</code>&gt;</code> queries)
     throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
 </pre>Delete Documents to the given table in the provided shard.  If the table or shard is not found on this shard server a BlurException will be thrown.
 @param options the MutateOptions provide the table name, shard index, etc.
 @param queries the Queries that will executed and mark there resulting documents as deleted.
-<br/></div><div class="definition"><h4 id="Fn_ShardServer_deleteDocuments">Function: ShardServer.deleteDocuments</h4>
+<br/></div><div class="definition"><h4 id="Fn_Blur_deleteDocuments">Function: Blur.deleteDocuments</h4>
 <pre><code>void</code> deleteDocuments(<code><a href="Blur.html#Struct_MutateOptions">MutateOptions</a></code> options,
                      <code>list&lt;<code><a href="Blur.html#Struct_Term">Term</a></code>&gt;</code> terms)
     throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
 </pre>Delete Documents to the given table in the provided shard.  If the table or shard is not found on this shard server a BlurException will be thrown.
 @param options the MutateOptions provide the table name, shard index, etc.
 @param queries the Terms that will be found and mark deleted all the documents to be deleted.
-<br/></div><div class="definition"><h4 id="Fn_ShardServer_updateDocuments">Function: ShardServer.updateDocuments</h4>
+<br/></div><div class="definition"><h4 id="Fn_Blur_updateDocuments">Function: Blur.updateDocuments</h4>
 <pre><code>void</code> updateDocuments(<code><a href="Blur.html#Struct_MutateOptions">MutateOptions</a></code> options,
                      <code>list&lt;<code><a href="Blur.html#Struct_UpdatePackage">UpdatePackage</a></code>&gt;</code> updatePackages)
     throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
 </pre>Update Documents to the given table in the provided shard.  If the table or shard is not found on this shard server a BlurException will be thrown.
 @param options the MutateOptions provide the table name, shard index, etc.
 @param updatePackages the documents to be updated.  NOTE: All documents within a update document object are indexed in a single segment.
-<br/></div></div></body></html>
+<br/></div><div class="definition"><h4 id="Fn_Blur_serverList">Function: Blur.serverList</h4>
+<pre><code>list&lt;<code>string</code>&gt;</code> serverList()
+    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
+</pre>Returns a list of all the shard servers for the given cluster.
+@param cluster the cluster name.
+@return list of servers, e.g. node1:40020.
+<br/></div><div class="definition"><h4 id="Fn_Blur_serverLayout">Function: Blur.serverLayout</h4>
+<pre><code>list&lt;<code>i32</code>&gt;</code> serverLayout(<code>string</code> table,
+                       <code>string</code> server)
+    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
+</pre>Gets a list shard ids for the given server and table.
+@param table the table name.
+@param server the server name, e.g. node1:40020
+@return list of shard ids.
+<br/></div><div class="definition"><h4 id="Fn_Blur_tableList">Function: Blur.tableList</h4>
+<pre><code>list&lt;<code>string</code>&gt;</code> tableList()
+    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
+</pre>Gets a list of the table names.
+@return list of table names.
+<br/></div><div class="definition"><h4 id="Fn_Blur_isInSafeMode">Function: Blur.isInSafeMode</h4>
+<pre><code>bool</code> isInSafeMode()
+    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
+</pre>Is cluster in safe mode.
+@return safe mode boolean.
+<br/></div><div class="definition"><h4 id="Fn_Blur_createTable">Function: Blur.createTable</h4>
+<pre><code>void</code> createTable(<code><a href="Blur.html#Struct_TableDescriptor">TableDescriptor</a></code> tableDescriptor)
+    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
+</pre>Create a table with the given table descriptor.
+@param tableDescriptor the TableDescriptor.
+<br/></div><div class="definition"><h4 id="Fn_Blur_enableTable">Function: Blur.enableTable</h4>
+<pre><code>void</code> enableTable(<code>string</code> table)
+    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
+</pre>Enables a table with the given table name.
+@param table the table name.
+<br/></div><div class="definition"><h4 id="Fn_Blur_disableTable">Function: Blur.disableTable</h4>
+<pre><code>void</code> disableTable(<code>string</code> table)
+    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
+</pre>Disables a table with the given table name.
+@param table the table name.
+<br/></div><div class="definition"><h4 id="Fn_Blur_removeTable">Function: Blur.removeTable</h4>
+<pre><code>void</code> removeTable(<code>string</code> table,
+                 <code>bool</code> deleteIndexFiles)
+    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
+</pre>Removes a table with the given table name.
+@param table the table name.
+@param deleteIndexFiles boolean, whether or not to remove the indexes from the HDFS system.
+<br/></div><div class="definition"><h4 id="Fn_Blur_describe">Function: Blur.describe</h4>
+<pre><code><a href="Blur.html#Struct_TableDescriptor">TableDescriptor</a></code> describe(<code>string</code> table)
+    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
+</pre>Returns a table descriptor for the given table.
+@param table the table name.
+<br/></div><div class="definition"><h4 id="Fn_Blur_cancelQuery">Function: Blur.cancelQuery</h4>
+<pre><code>void</code> cancelQuery(<code><a href="Blur.html#Struct_Session">Session</a></code> session,
+                 <code>i64</code> id)
+    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
+</pre>Cancels a query that is executing against the given table with the given uuid.  Note, the cancel call maybe take some time for the query actually stops executing.
+@param table the table name.
+@param uuid the uuid of the query.
+<br/></div><div class="definition"><h4 id="Fn_Blur_queryStatusIdList">Function: Blur.queryStatusIdList</h4>
+<pre><code>list&lt;<code>i64</code>&gt;</code> queryStatusIdList(<code><a href="Blur.html#Struct_Session">Session</a></code> session)
+    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
+</pre>Returns a list of the query ids of queries that have recently been executed for the given table.
+@param table the table name.
+@return the uuids of the query status objects.
+<br/></div><div class="definition"><h4 id="Fn_Blur_queryStatus">Function: Blur.queryStatus</h4>
+<pre><code><a href="Blur.html#Struct_QueryStatus">QueryStatus</a></code> queryStatus(<code><a href="Blur.html#Struct_Session">Session</a></code> session,
+                        <code>i64</code> id)
+    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
+</pre>Returns the query status for the given table and query uuid.
+@param table the table name.
+@param uuid the uuid of the query.
+@return the query status for the given.
+<br/></div><div class="definition"><h4 id="Fn_Blur_schema">Function: Blur.schema</h4>
+<pre><code><a href="Blur.html#Struct_LiveSchema">LiveSchema</a></code> schema(<code>string</code> table)
+    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
+</pre></div><div class="definition"><h4 id="Fn_Blur_tableStats">Function: Blur.tableStats</h4>
+<pre><code><a href="Blur.html#Struct_TableStats">TableStats</a></code> tableStats(<code>string</code> table)
+    throws <code><a href="Blur.html#Struct_BlurException">BlurException</a></code>
+</pre></div></div></body></html>

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/aee531c2/interface/gen-html/index.html
----------------------------------------------------------------------
diff --git a/interface/gen-html/index.html b/interface/gen-html/index.html
index 6431c50..b69a06a 100644
--- a/interface/gen-html/index.html
+++ b/interface/gen-html/index.html
@@ -7,58 +7,44 @@
 <tr>
 <td>Blur</td><td><a href="Blur.html#Svc_Blur">Blur</a><br/>
 <ul>
+<li><a href="Blur.html#Fn_Blur_addDocuments">addDocuments</a></li>
 <li><a href="Blur.html#Fn_Blur_cancelQuery">cancelQuery</a></li>
-<li><a href="Blur.html#Fn_Blur_configuration">configuration</a></li>
-<li><a href="Blur.html#Fn_Blur_controllerServerList">controllerServerList</a></li>
+<li><a href="Blur.html#Fn_Blur_closeReadSession">closeReadSession</a></li>
 <li><a href="Blur.html#Fn_Blur_createTable">createTable</a></li>
-<li><a href="Blur.html#Fn_Blur_currentQueries">currentQueries</a></li>
+<li><a href="Blur.html#Fn_Blur_deleteDocuments">deleteDocuments</a></li>
+<li><a href="Blur.html#Fn_Blur_deleteDocumentsByQueries">deleteDocumentsByQueries</a></li>
 <li><a href="Blur.html#Fn_Blur_describe">describe</a></li>
 <li><a href="Blur.html#Fn_Blur_disableTable">disableTable</a></li>
+<li><a href="Blur.html#Fn_Blur_doc">doc</a></li>
 <li><a href="Blur.html#Fn_Blur_enableTable">enableTable</a></li>
 <li><a href="Blur.html#Fn_Blur_isInSafeMode">isInSafeMode</a></li>
-<li><a href="Blur.html#Fn_Blur_optimize">optimize</a></li>
-<li><a href="Blur.html#Fn_Blur_queryStatusById">queryStatusById</a></li>
+<li><a href="Blur.html#Fn_Blur_openReadSession">openReadSession</a></li>
+<li><a href="Blur.html#Fn_Blur_queryStatus">queryStatus</a></li>
 <li><a href="Blur.html#Fn_Blur_queryStatusIdList">queryStatusIdList</a></li>
 <li><a href="Blur.html#Fn_Blur_removeTable">removeTable</a></li>
 <li><a href="Blur.html#Fn_Blur_schema">schema</a></li>
-<li><a href="Blur.html#Fn_Blur_shardClusterList">shardClusterList</a></li>
-<li><a href="Blur.html#Fn_Blur_shardServerLayout">shardServerLayout</a></li>
-<li><a href="Blur.html#Fn_Blur_shardServerList">shardServerList</a></li>
+<li><a href="Blur.html#Fn_Blur_search">search</a></li>
+<li><a href="Blur.html#Fn_Blur_serverLayout">serverLayout</a></li>
+<li><a href="Blur.html#Fn_Blur_serverList">serverList</a></li>
 <li><a href="Blur.html#Fn_Blur_tableList">tableList</a></li>
-<li><a href="Blur.html#Fn_Blur_tableListByCluster">tableListByCluster</a></li>
 <li><a href="Blur.html#Fn_Blur_tableStats">tableStats</a></li>
-</ul>
-<a href="Blur.html#Svc_ShardServer">ShardServer</a><br/>
-<ul>
-<li><a href="Blur.html#Fn_ShardServer_addDocuments">addDocuments</a></li>
-<li><a href="Blur.html#Fn_ShardServer_closeReadSession">closeReadSession</a></li>
-<li><a href="Blur.html#Fn_ShardServer_deleteDocuments">deleteDocuments</a></li>
-<li><a href="Blur.html#Fn_ShardServer_deleteDocumentsByQueries">deleteDocumentsByQueries</a></li>
-<li><a href="Blur.html#Fn_ShardServer_doc">doc</a></li>
-<li><a href="Blur.html#Fn_ShardServer_openReadSession">openReadSession</a></li>
-<li><a href="Blur.html#Fn_ShardServer_search">search</a></li>
-<li><a href="Blur.html#Fn_ShardServer_updateDocuments">updateDocuments</a></li>
+<li><a href="Blur.html#Fn_Blur_updateDocuments">updateDocuments</a></li>
 </ul>
 </td>
-<td><a href="Blur.html#Struct_AlternateColumnDefinition">AlternateColumnDefinition</a><br/>
-<a href="Blur.html#Struct_AnalyzerDefinition">AnalyzerDefinition</a><br/>
-<a href="Blur.html#Struct_Attribute">Attribute</a><br/>
+<td><a href="Blur.html#Struct_Analyzer">Analyzer</a><br/>
+<a href="Blur.html#Struct_AnalyzerSubType">AnalyzerSubType</a><br/>
+<a href="Blur.html#Struct_AnalyzerType">AnalyzerType</a><br/>
 <a href="Blur.html#Struct_BlurException">BlurException</a><br/>
-<a href="Blur.html#Struct_BlurQueryStatus">BlurQueryStatus</a><br/>
-<a href="Blur.html#Struct_ColumnDefinition">ColumnDefinition</a><br/>
-<a href="Blur.html#Struct_ColumnFamilyDefinition">ColumnFamilyDefinition</a><br/>
-<a href="Blur.html#Struct_ColumnPreCache">ColumnPreCache</a><br/>
+<a href="Blur.html#Struct_ClassDefinition">ClassDefinition</a><br/>
 <a href="Blur.html#Struct_CpuTime">CpuTime</a><br/>
-<a href="Blur.html#Struct_DocLocation">DocLocation</a><br/>
 <a href="Blur.html#Struct_Document">Document</a><br/>
 <a href="Blur.html#Struct_Field">Field</a><br/>
+<a href="Blur.html#Struct_LiveSchema">LiveSchema</a><br/>
 <a href="Blur.html#Struct_MutateOptions">MutateOptions</a><br/>
 <a href="Blur.html#Struct_QueryArgs">QueryArgs</a><br/>
-<a href="Blur.html#Struct_QuerySession">QuerySession</a><br/>
 <a href="Blur.html#Enum_QueryState">QueryState</a><br/>
-<a href="Blur.html#Struct_Schema">Schema</a><br/>
+<a href="Blur.html#Struct_QueryStatus">QueryStatus</a><br/>
 <a href="Blur.html#Struct_ScoreDoc">ScoreDoc</a><br/>
-<a href="Blur.html#Enum_ScoreType">ScoreType</a><br/>
 <a href="Blur.html#Struct_Session">Session</a><br/>
 <a href="Blur.html#Struct_Sort">Sort</a><br/>
 <a href="Blur.html#Struct_SortField">SortField</a><br/>


Mime
View raw message