Thrift code generation.
diff --git a/blur-thrift/src/main/java/org/apache/blur/thrift/generated/CommandStatus.java b/blur-thrift/src/main/java/org/apache/blur/thrift/generated/CommandStatus.java
index 5269146..276dea3 100644
--- a/blur-thrift/src/main/java/org/apache/blur/thrift/generated/CommandStatus.java
+++ b/blur-thrift/src/main/java/org/apache/blur/thrift/generated/CommandStatus.java
@@ -67,7 +67,7 @@
   public String executionId; // required
   public String commandName; // required
   public Arguments arguments; // required
-  public Map<String,Map<CommandStatusState,Double>> serverStateMap; // required
+  public Map<String,Map<CommandStatusState,Long>> serverStateMap; // required
   public User user; // required
 
   /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
@@ -155,7 +155,7 @@
             new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING), 
             new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.MapMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP, 
                 new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.EnumMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.ENUM, CommandStatusState.class), 
-                new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.DOUBLE)))));
+                new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I64)))));
     tmpMap.put(_Fields.USER, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("user", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
         new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.StructMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRUCT, User.class)));
     metaDataMap = Collections.unmodifiableMap(tmpMap);
@@ -169,7 +169,7 @@
     String executionId,
     String commandName,
     Arguments arguments,
-    Map<String,Map<CommandStatusState,Double>> serverStateMap,
+    Map<String,Map<CommandStatusState,Long>> serverStateMap,
     User user)
   {
     this();
@@ -194,23 +194,23 @@
       this.arguments = new Arguments(other.arguments);
     }
     if (other.isSetServerStateMap()) {
-      Map<String,Map<CommandStatusState,Double>> __this__serverStateMap = new HashMap<String,Map<CommandStatusState,Double>>();
-      for (Map.Entry<String, Map<CommandStatusState,Double>> other_element : other.serverStateMap.entrySet()) {
+      Map<String,Map<CommandStatusState,Long>> __this__serverStateMap = new HashMap<String,Map<CommandStatusState,Long>>();
+      for (Map.Entry<String, Map<CommandStatusState,Long>> other_element : other.serverStateMap.entrySet()) {
 
         String other_element_key = other_element.getKey();
-        Map<CommandStatusState,Double> other_element_value = other_element.getValue();
+        Map<CommandStatusState,Long> other_element_value = other_element.getValue();
 
         String __this__serverStateMap_copy_key = other_element_key;
 
-        Map<CommandStatusState,Double> __this__serverStateMap_copy_value = new HashMap<CommandStatusState,Double>();
-        for (Map.Entry<CommandStatusState, Double> other_element_value_element : other_element_value.entrySet()) {
+        Map<CommandStatusState,Long> __this__serverStateMap_copy_value = new HashMap<CommandStatusState,Long>();
+        for (Map.Entry<CommandStatusState, Long> other_element_value_element : other_element_value.entrySet()) {
 
           CommandStatusState other_element_value_element_key = other_element_value_element.getKey();
-          Double other_element_value_element_value = other_element_value_element.getValue();
+          Long other_element_value_element_value = other_element_value_element.getValue();
 
           CommandStatusState __this__serverStateMap_copy_value_copy_key = other_element_value_element_key;
 
-          Double __this__serverStateMap_copy_value_copy_value = other_element_value_element_value;
+          Long __this__serverStateMap_copy_value_copy_value = other_element_value_element_value;
 
           __this__serverStateMap_copy_value.put(__this__serverStateMap_copy_value_copy_key, __this__serverStateMap_copy_value_copy_value);
         }
@@ -313,18 +313,18 @@
     return (this.serverStateMap == null) ? 0 : this.serverStateMap.size();
   }
 
-  public void putToServerStateMap(String key, Map<CommandStatusState,Double> val) {
+  public void putToServerStateMap(String key, Map<CommandStatusState,Long> val) {
     if (this.serverStateMap == null) {
-      this.serverStateMap = new HashMap<String,Map<CommandStatusState,Double>>();
+      this.serverStateMap = new HashMap<String,Map<CommandStatusState,Long>>();
     }
     this.serverStateMap.put(key, val);
   }
 
-  public Map<String,Map<CommandStatusState,Double>> getServerStateMap() {
+  public Map<String,Map<CommandStatusState,Long>> getServerStateMap() {
     return this.serverStateMap;
   }
 
-  public CommandStatus setServerStateMap(Map<String,Map<CommandStatusState,Double>> serverStateMap) {
+  public CommandStatus setServerStateMap(Map<String,Map<CommandStatusState,Long>> serverStateMap) {
     this.serverStateMap = serverStateMap;
     return this;
   }
@@ -398,7 +398,7 @@
       if (value == null) {
         unsetServerStateMap();
       } else {
-        setServerStateMap((Map<String,Map<CommandStatusState,Double>>)value);
+        setServerStateMap((Map<String,Map<CommandStatusState,Long>>)value);
       }
       break;
 
@@ -716,21 +716,21 @@
             if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP) {
               {
                 org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map270 = iprot.readMapBegin();
-                struct.serverStateMap = new HashMap<String,Map<CommandStatusState,Double>>(2*_map270.size);
+                struct.serverStateMap = new HashMap<String,Map<CommandStatusState,Long>>(2*_map270.size);
                 for (int _i271 = 0; _i271 < _map270.size; ++_i271)
                 {
                   String _key272; // required
-                  Map<CommandStatusState,Double> _val273; // required
+                  Map<CommandStatusState,Long> _val273; // required
                   _key272 = iprot.readString();
                   {
                     org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map274 = iprot.readMapBegin();
-                    _val273 = new HashMap<CommandStatusState,Double>(2*_map274.size);
+                    _val273 = new HashMap<CommandStatusState,Long>(2*_map274.size);
                     for (int _i275 = 0; _i275 < _map274.size; ++_i275)
                     {
                       CommandStatusState _key276; // required
-                      double _val277; // required
+                      long _val277; // required
                       _key276 = CommandStatusState.findByValue(iprot.readI32());
-                      _val277 = iprot.readDouble();
+                      _val277 = iprot.readI64();
                       _val273.put(_key276, _val277);
                     }
                     iprot.readMapEnd();
@@ -787,15 +787,15 @@
         oprot.writeFieldBegin(SERVER_STATE_MAP_FIELD_DESC);
         {
           oprot.writeMapBegin(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP, struct.serverStateMap.size()));
-          for (Map.Entry<String, Map<CommandStatusState,Double>> _iter278 : struct.serverStateMap.entrySet())
+          for (Map.Entry<String, Map<CommandStatusState,Long>> _iter278 : struct.serverStateMap.entrySet())
           {
             oprot.writeString(_iter278.getKey());
             {
-              oprot.writeMapBegin(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.DOUBLE, _iter278.getValue().size()));
-              for (Map.Entry<CommandStatusState, Double> _iter279 : _iter278.getValue().entrySet())
+              oprot.writeMapBegin(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I64, _iter278.getValue().size()));
+              for (Map.Entry<CommandStatusState, Long> _iter279 : _iter278.getValue().entrySet())
               {
                 oprot.writeI32(_iter279.getKey().getValue());
-                oprot.writeDouble(_iter279.getValue());
+                oprot.writeI64(_iter279.getValue());
               }
               oprot.writeMapEnd();
             }
@@ -855,15 +855,15 @@
       if (struct.isSetServerStateMap()) {
         {
           oprot.writeI32(struct.serverStateMap.size());
-          for (Map.Entry<String, Map<CommandStatusState,Double>> _iter280 : struct.serverStateMap.entrySet())
+          for (Map.Entry<String, Map<CommandStatusState,Long>> _iter280 : struct.serverStateMap.entrySet())
           {
             oprot.writeString(_iter280.getKey());
             {
               oprot.writeI32(_iter280.getValue().size());
-              for (Map.Entry<CommandStatusState, Double> _iter281 : _iter280.getValue().entrySet())
+              for (Map.Entry<CommandStatusState, Long> _iter281 : _iter280.getValue().entrySet())
               {
                 oprot.writeI32(_iter281.getKey().getValue());
-                oprot.writeDouble(_iter281.getValue());
+                oprot.writeI64(_iter281.getValue());
               }
             }
           }
@@ -894,21 +894,21 @@
       if (incoming.get(3)) {
         {
           org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map282 = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP, iprot.readI32());
-          struct.serverStateMap = new HashMap<String,Map<CommandStatusState,Double>>(2*_map282.size);
+          struct.serverStateMap = new HashMap<String,Map<CommandStatusState,Long>>(2*_map282.size);
           for (int _i283 = 0; _i283 < _map282.size; ++_i283)
           {
             String _key284; // required
-            Map<CommandStatusState,Double> _val285; // required
+            Map<CommandStatusState,Long> _val285; // required
             _key284 = iprot.readString();
             {
-              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map286 = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.DOUBLE, iprot.readI32());
-              _val285 = new HashMap<CommandStatusState,Double>(2*_map286.size);
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map286 = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I64, iprot.readI32());
+              _val285 = new HashMap<CommandStatusState,Long>(2*_map286.size);
               for (int _i287 = 0; _i287 < _map286.size; ++_i287)
               {
                 CommandStatusState _key288; // required
-                double _val289; // required
+                long _val289; // required
                 _key288 = CommandStatusState.findByValue(iprot.readI32());
-                _val289 = iprot.readDouble();
+                _val289 = iprot.readI64();
                 _val285.put(_key288, _val289);
               }
             }
diff --git a/docs/Blur.html b/docs/Blur.html
index 6bf547b..415997b 100644
--- a/docs/Blur.html
+++ b/docs/Blur.html
@@ -724,7 +724,7 @@
 <tr><td>1</td><td>executionId</td><td><code>string</code></td><td></td><td>default</td><td></td></tr>
 <tr><td>2</td><td>commandName</td><td><code>string</code></td><td></td><td>default</td><td></td></tr>
 <tr><td>3</td><td>arguments</td><td><code><a href="Blur.html#Struct_Arguments">Arguments</a></code></td><td></td><td>default</td><td></td></tr>
-<tr><td>4</td><td>serverStateMap</td><td><code>map&lt;<code>string</code>, <code>map&lt;<code><a href="Blur.html#Enum_CommandStatusState">CommandStatusState</a></code>, <code>double</code>&gt;</code>&gt;</code></td><td></td><td>default</td><td></td></tr>
+<tr><td>4</td><td>serverStateMap</td><td><code>map&lt;<code>string</code>, <code>map&lt;<code><a href="Blur.html#Enum_CommandStatusState">CommandStatusState</a></code>, <code>i64</code>&gt;</code>&gt;</code></td><td></td><td>default</td><td></td></tr>
 <tr><td>5</td><td>user</td><td><code><a href="Blur.html#Struct_User">User</a></code></td><td></td><td>default</td><td></td></tr>
 </table><br/></p></section><section><div class="page-header"><h3 id="Struct_ArgumentDescriptor">Struct: ArgumentDescriptor</h3></div><p class="lead">
 <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>
diff --git a/scripts/interface/gen-html/Blur.html b/scripts/interface/gen-html/Blur.html
index 3095ed9..a4eafc2 100644
--- a/scripts/interface/gen-html/Blur.html
+++ b/scripts/interface/gen-html/Blur.html
@@ -666,7 +666,7 @@
 <tr><td>1</td><td>executionId</td><td><code>string</code></td><td></td><td>default</td><td></td></tr>
 <tr><td>2</td><td>commandName</td><td><code>string</code></td><td></td><td>default</td><td></td></tr>
 <tr><td>3</td><td>arguments</td><td><code><a href="Blur.html#Struct_Arguments">Arguments</a></code></td><td></td><td>default</td><td></td></tr>
-<tr><td>4</td><td>serverStateMap</td><td><code>map&lt;<code>string</code>, <code>map&lt;<code><a href="Blur.html#Enum_CommandStatusState">CommandStatusState</a></code>, <code>double</code>&gt;</code>&gt;</code></td><td></td><td>default</td><td></td></tr>
+<tr><td>4</td><td>serverStateMap</td><td><code>map&lt;<code>string</code>, <code>map&lt;<code><a href="Blur.html#Enum_CommandStatusState">CommandStatusState</a></code>, <code>i64</code>&gt;</code>&gt;</code></td><td></td><td>default</td><td></td></tr>
 <tr><td>5</td><td>user</td><td><code><a href="Blur.html#Struct_User">User</a></code></td><td></td><td>default</td><td></td></tr>
 </table><br/></div><div class="definition"><h3 id="Struct_ArgumentDescriptor">Struct: ArgumentDescriptor</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>
diff --git a/scripts/interface/gen-java/org/apache/blur/thrift/generated/CommandStatus.java b/scripts/interface/gen-java/org/apache/blur/thrift/generated/CommandStatus.java
index 5269146..276dea3 100644
--- a/scripts/interface/gen-java/org/apache/blur/thrift/generated/CommandStatus.java
+++ b/scripts/interface/gen-java/org/apache/blur/thrift/generated/CommandStatus.java
@@ -67,7 +67,7 @@
   public String executionId; // required
   public String commandName; // required
   public Arguments arguments; // required
-  public Map<String,Map<CommandStatusState,Double>> serverStateMap; // required
+  public Map<String,Map<CommandStatusState,Long>> serverStateMap; // required
   public User user; // required
 
   /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
@@ -155,7 +155,7 @@
             new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING), 
             new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.MapMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP, 
                 new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.EnumMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.ENUM, CommandStatusState.class), 
-                new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.DOUBLE)))));
+                new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I64)))));
     tmpMap.put(_Fields.USER, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("user", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
         new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.StructMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRUCT, User.class)));
     metaDataMap = Collections.unmodifiableMap(tmpMap);
@@ -169,7 +169,7 @@
     String executionId,
     String commandName,
     Arguments arguments,
-    Map<String,Map<CommandStatusState,Double>> serverStateMap,
+    Map<String,Map<CommandStatusState,Long>> serverStateMap,
     User user)
   {
     this();
@@ -194,23 +194,23 @@
       this.arguments = new Arguments(other.arguments);
     }
     if (other.isSetServerStateMap()) {
-      Map<String,Map<CommandStatusState,Double>> __this__serverStateMap = new HashMap<String,Map<CommandStatusState,Double>>();
-      for (Map.Entry<String, Map<CommandStatusState,Double>> other_element : other.serverStateMap.entrySet()) {
+      Map<String,Map<CommandStatusState,Long>> __this__serverStateMap = new HashMap<String,Map<CommandStatusState,Long>>();
+      for (Map.Entry<String, Map<CommandStatusState,Long>> other_element : other.serverStateMap.entrySet()) {
 
         String other_element_key = other_element.getKey();
-        Map<CommandStatusState,Double> other_element_value = other_element.getValue();
+        Map<CommandStatusState,Long> other_element_value = other_element.getValue();
 
         String __this__serverStateMap_copy_key = other_element_key;
 
-        Map<CommandStatusState,Double> __this__serverStateMap_copy_value = new HashMap<CommandStatusState,Double>();
-        for (Map.Entry<CommandStatusState, Double> other_element_value_element : other_element_value.entrySet()) {
+        Map<CommandStatusState,Long> __this__serverStateMap_copy_value = new HashMap<CommandStatusState,Long>();
+        for (Map.Entry<CommandStatusState, Long> other_element_value_element : other_element_value.entrySet()) {
 
           CommandStatusState other_element_value_element_key = other_element_value_element.getKey();
-          Double other_element_value_element_value = other_element_value_element.getValue();
+          Long other_element_value_element_value = other_element_value_element.getValue();
 
           CommandStatusState __this__serverStateMap_copy_value_copy_key = other_element_value_element_key;
 
-          Double __this__serverStateMap_copy_value_copy_value = other_element_value_element_value;
+          Long __this__serverStateMap_copy_value_copy_value = other_element_value_element_value;
 
           __this__serverStateMap_copy_value.put(__this__serverStateMap_copy_value_copy_key, __this__serverStateMap_copy_value_copy_value);
         }
@@ -313,18 +313,18 @@
     return (this.serverStateMap == null) ? 0 : this.serverStateMap.size();
   }
 
-  public void putToServerStateMap(String key, Map<CommandStatusState,Double> val) {
+  public void putToServerStateMap(String key, Map<CommandStatusState,Long> val) {
     if (this.serverStateMap == null) {
-      this.serverStateMap = new HashMap<String,Map<CommandStatusState,Double>>();
+      this.serverStateMap = new HashMap<String,Map<CommandStatusState,Long>>();
     }
     this.serverStateMap.put(key, val);
   }
 
-  public Map<String,Map<CommandStatusState,Double>> getServerStateMap() {
+  public Map<String,Map<CommandStatusState,Long>> getServerStateMap() {
     return this.serverStateMap;
   }
 
-  public CommandStatus setServerStateMap(Map<String,Map<CommandStatusState,Double>> serverStateMap) {
+  public CommandStatus setServerStateMap(Map<String,Map<CommandStatusState,Long>> serverStateMap) {
     this.serverStateMap = serverStateMap;
     return this;
   }
@@ -398,7 +398,7 @@
       if (value == null) {
         unsetServerStateMap();
       } else {
-        setServerStateMap((Map<String,Map<CommandStatusState,Double>>)value);
+        setServerStateMap((Map<String,Map<CommandStatusState,Long>>)value);
       }
       break;
 
@@ -716,21 +716,21 @@
             if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP) {
               {
                 org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map270 = iprot.readMapBegin();
-                struct.serverStateMap = new HashMap<String,Map<CommandStatusState,Double>>(2*_map270.size);
+                struct.serverStateMap = new HashMap<String,Map<CommandStatusState,Long>>(2*_map270.size);
                 for (int _i271 = 0; _i271 < _map270.size; ++_i271)
                 {
                   String _key272; // required
-                  Map<CommandStatusState,Double> _val273; // required
+                  Map<CommandStatusState,Long> _val273; // required
                   _key272 = iprot.readString();
                   {
                     org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map274 = iprot.readMapBegin();
-                    _val273 = new HashMap<CommandStatusState,Double>(2*_map274.size);
+                    _val273 = new HashMap<CommandStatusState,Long>(2*_map274.size);
                     for (int _i275 = 0; _i275 < _map274.size; ++_i275)
                     {
                       CommandStatusState _key276; // required
-                      double _val277; // required
+                      long _val277; // required
                       _key276 = CommandStatusState.findByValue(iprot.readI32());
-                      _val277 = iprot.readDouble();
+                      _val277 = iprot.readI64();
                       _val273.put(_key276, _val277);
                     }
                     iprot.readMapEnd();
@@ -787,15 +787,15 @@
         oprot.writeFieldBegin(SERVER_STATE_MAP_FIELD_DESC);
         {
           oprot.writeMapBegin(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP, struct.serverStateMap.size()));
-          for (Map.Entry<String, Map<CommandStatusState,Double>> _iter278 : struct.serverStateMap.entrySet())
+          for (Map.Entry<String, Map<CommandStatusState,Long>> _iter278 : struct.serverStateMap.entrySet())
           {
             oprot.writeString(_iter278.getKey());
             {
-              oprot.writeMapBegin(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.DOUBLE, _iter278.getValue().size()));
-              for (Map.Entry<CommandStatusState, Double> _iter279 : _iter278.getValue().entrySet())
+              oprot.writeMapBegin(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I64, _iter278.getValue().size()));
+              for (Map.Entry<CommandStatusState, Long> _iter279 : _iter278.getValue().entrySet())
               {
                 oprot.writeI32(_iter279.getKey().getValue());
-                oprot.writeDouble(_iter279.getValue());
+                oprot.writeI64(_iter279.getValue());
               }
               oprot.writeMapEnd();
             }
@@ -855,15 +855,15 @@
       if (struct.isSetServerStateMap()) {
         {
           oprot.writeI32(struct.serverStateMap.size());
-          for (Map.Entry<String, Map<CommandStatusState,Double>> _iter280 : struct.serverStateMap.entrySet())
+          for (Map.Entry<String, Map<CommandStatusState,Long>> _iter280 : struct.serverStateMap.entrySet())
           {
             oprot.writeString(_iter280.getKey());
             {
               oprot.writeI32(_iter280.getValue().size());
-              for (Map.Entry<CommandStatusState, Double> _iter281 : _iter280.getValue().entrySet())
+              for (Map.Entry<CommandStatusState, Long> _iter281 : _iter280.getValue().entrySet())
               {
                 oprot.writeI32(_iter281.getKey().getValue());
-                oprot.writeDouble(_iter281.getValue());
+                oprot.writeI64(_iter281.getValue());
               }
             }
           }
@@ -894,21 +894,21 @@
       if (incoming.get(3)) {
         {
           org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map282 = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP, iprot.readI32());
-          struct.serverStateMap = new HashMap<String,Map<CommandStatusState,Double>>(2*_map282.size);
+          struct.serverStateMap = new HashMap<String,Map<CommandStatusState,Long>>(2*_map282.size);
           for (int _i283 = 0; _i283 < _map282.size; ++_i283)
           {
             String _key284; // required
-            Map<CommandStatusState,Double> _val285; // required
+            Map<CommandStatusState,Long> _val285; // required
             _key284 = iprot.readString();
             {
-              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map286 = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.DOUBLE, iprot.readI32());
-              _val285 = new HashMap<CommandStatusState,Double>(2*_map286.size);
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map286 = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I64, iprot.readI32());
+              _val285 = new HashMap<CommandStatusState,Long>(2*_map286.size);
               for (int _i287 = 0; _i287 < _map286.size; ++_i287)
               {
                 CommandStatusState _key288; // required
-                double _val289; // required
+                long _val289; // required
                 _key288 = CommandStatusState.findByValue(iprot.readI32());
-                _val289 = iprot.readDouble();
+                _val289 = iprot.readI64();
                 _val285.put(_key288, _val289);
               }
             }
diff --git a/scripts/interface/gen-js/Blur_types.js b/scripts/interface/gen-js/Blur_types.js
index e8c4d34..cf7d0fc 100644
--- a/scripts/interface/gen-js/Blur_types.js
+++ b/scripts/interface/gen-js/Blur_types.js
@@ -4576,7 +4576,7 @@
             var key284 = null;
             var val285 = null;
             key284 = input.readI32().value;
-            val285 = input.readDouble().value;
+            val285 = input.readI64().value;
             val277[key284] = val285;
           }
           input.readMapEnd();
@@ -4630,14 +4630,14 @@
       {
         var viter287 = this.serverStateMap[kiter286];
         output.writeString(kiter286);
-        output.writeMapBegin(Thrift.Type.I32, Thrift.Type.DOUBLE, Thrift.objectLength(viter287));
+        output.writeMapBegin(Thrift.Type.I32, Thrift.Type.I64, Thrift.objectLength(viter287));
         for (var kiter288 in viter287)
         {
           if (viter287.hasOwnProperty(kiter288))
           {
             var viter289 = viter287[kiter288];
             output.writeI32(kiter288);
-            output.writeDouble(viter289);
+            output.writeI64(viter289);
           }
         }
         output.writeMapEnd();
diff --git a/scripts/interface/gen-perl/Blur/Types.pm b/scripts/interface/gen-perl/Blur/Types.pm
index aeadb3c..713fd98 100644
--- a/scripts/interface/gen-perl/Blur/Types.pm
+++ b/scripts/interface/gen-perl/Blur/Types.pm
@@ -4793,9 +4793,9 @@
               for (my $_i251 = 0; $_i251 < $_size247; ++$_i251)
               {
                 my $key252 = 0;
-                my $val253 = 0.0;
+                my $val253 = 0;
                 $xfer += $input->readI32(\$key252);
-                $xfer += $input->readDouble(\$val253);
+                $xfer += $input->readI64(\$val253);
                 $val246->{$key252} = $val253;
               }
               $xfer += $input->readMapEnd();
@@ -4851,12 +4851,12 @@
         {
           $xfer += $output->writeString($kiter254);
           {
-            $xfer += $output->writeMapBegin(TType::I32, TType::DOUBLE, scalar(keys %{${viter255}}));
+            $xfer += $output->writeMapBegin(TType::I32, TType::I64, scalar(keys %{${viter255}}));
             {
               while( my ($kiter256,$viter257) = each %{${viter255}}) 
               {
                 $xfer += $output->writeI32($kiter256);
-                $xfer += $output->writeDouble($viter257);
+                $xfer += $output->writeI64($viter257);
               }
             }
             $xfer += $output->writeMapEnd();
diff --git a/scripts/interface/gen-rb/blur_types.rb b/scripts/interface/gen-rb/blur_types.rb
index 0308cad..9a16fe9 100644
--- a/scripts/interface/gen-rb/blur_types.rb
+++ b/scripts/interface/gen-rb/blur_types.rb
@@ -1199,7 +1199,7 @@
       EXECUTIONID => {:type => ::Thrift::Types::STRING, :name => 'executionId'},
       COMMANDNAME => {:type => ::Thrift::Types::STRING, :name => 'commandName'},
       ARGUMENTS => {:type => ::Thrift::Types::STRUCT, :name => 'arguments', :class => ::Blur::Arguments},
-      SERVERSTATEMAP => {:type => ::Thrift::Types::MAP, :name => 'serverStateMap', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::MAP, :key => {:type => ::Thrift::Types::I32, :enum_class => ::Blur::CommandStatusState}, :value => {:type => ::Thrift::Types::DOUBLE}}},
+      SERVERSTATEMAP => {:type => ::Thrift::Types::MAP, :name => 'serverStateMap', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::MAP, :key => {:type => ::Thrift::Types::I32, :enum_class => ::Blur::CommandStatusState}, :value => {:type => ::Thrift::Types::I64}}},
       USER => {:type => ::Thrift::Types::STRUCT, :name => 'user', :class => ::Blur::User}
     }