diff --git a/Database/Cassandra/Thrift/Cassandra.hs b/Database/Cassandra/Thrift/Cassandra.hs
--- a/Database/Cassandra/Thrift/Cassandra.hs
+++ b/Database/Cassandra/Thrift/Cassandra.hs
@@ -1696,13 +1696,17 @@
   rec <- read_Describe_ring_args_fields iprot (Describe_ring_args{f_Describe_ring_args_keyspace=Nothing})
   readStructEnd iprot
   return rec
-data Describe_ring_result = Describe_ring_result{f_Describe_ring_result_success :: Maybe [TokenRange]} deriving (Show,Eq,Ord,Typeable)
+data Describe_ring_result = Describe_ring_result{f_Describe_ring_result_success :: Maybe [TokenRange],f_Describe_ring_result_ire :: Maybe InvalidRequestException} deriving (Show,Eq,Ord,Typeable)
 write_Describe_ring_result oprot rec = do
   writeStructBegin oprot "Describe_ring_result"
   case f_Describe_ring_result_success rec of {Nothing -> return (); Just _v -> do
     writeFieldBegin oprot ("success",T_LIST,0)
     (let {f [] = return (); f (_viter398:t) = do {write_TokenRange oprot _viter398;f t}} in do {writeListBegin oprot (T_STRUCT,length _v); f _v;writeListEnd oprot})
     writeFieldEnd oprot}
+  case f_Describe_ring_result_ire rec of {Nothing -> return (); Just _v -> do
+    writeFieldBegin oprot ("ire",T_STRUCT,1)
+    write_InvalidRequestException oprot _v
+    writeFieldEnd oprot}
   writeFieldStop oprot
   writeStructEnd oprot
 read_Describe_ring_result_fields iprot rec = do
@@ -1715,13 +1719,19 @@
         else do
           skip iprot _t400
           read_Describe_ring_result_fields iprot rec
+      1 -> if _t400 == T_STRUCT then do
+        s <- (read_InvalidRequestException iprot)
+        read_Describe_ring_result_fields iprot rec{f_Describe_ring_result_ire=Just s}
+        else do
+          skip iprot _t400
+          read_Describe_ring_result_fields iprot rec
       _ -> do
         skip iprot _t400
         readFieldEnd iprot
         read_Describe_ring_result_fields iprot rec
 read_Describe_ring_result iprot = do
   readStructBegin iprot
-  rec <- read_Describe_ring_result_fields iprot (Describe_ring_result{f_Describe_ring_result_success=Nothing})
+  rec <- read_Describe_ring_result_fields iprot (Describe_ring_result{f_Describe_ring_result_success=Nothing,f_Describe_ring_result_ire=Nothing})
   readStructEnd iprot
   return rec
 data Describe_keyspace_args = Describe_keyspace_args{f_Describe_keyspace_args_keyspace :: Maybe String} deriving (Show,Eq,Ord,Typeable)
@@ -2164,10 +2174,13 @@
 process_describe_ring (seqid, iprot, oprot, handler) = do
   args <- read_Describe_ring_args iprot
   readMessageEnd iprot
-  rs <- return (Describe_ring_result Nothing)
-  res <- (do
-    res <- Iface.describe_ring handler (f_Describe_ring_args_keyspace args)
-    return rs{f_Describe_ring_result_success= Just res})
+  rs <- return (Describe_ring_result Nothing Nothing)
+  res <- (Control.Exception.catch
+    (do
+      res <- Iface.describe_ring handler (f_Describe_ring_args_keyspace args)
+      return rs{f_Describe_ring_result_success= Just res})
+    (\e  -> 
+      return rs{f_Describe_ring_result_ire =Just e}))
   writeMessageBegin oprot ("describe_ring", M_REPLY, seqid);
   write_Describe_ring_result oprot res
   writeMessageEnd oprot
diff --git a/Database/Cassandra/Thrift/Cassandra_Client.hs b/Database/Cassandra/Thrift/Cassandra_Client.hs
--- a/Database/Cassandra/Thrift/Cassandra_Client.hs
+++ b/Database/Cassandra/Thrift/Cassandra_Client.hs
@@ -516,6 +516,9 @@
   case f_Describe_ring_result_success res of
     Just v -> return v
     Nothing -> do
+      case f_Describe_ring_result_ire res of
+        Nothing -> return ()
+        Just _v -> throw _v
       throw (AppExn AE_MISSING_RESULT "describe_ring failed: unknown result")
 describe_keyspace (ip,op) arg_keyspace = do
   send_describe_keyspace op arg_keyspace
diff --git a/cassandra-thrift.cabal b/cassandra-thrift.cabal
--- a/cassandra-thrift.cabal
+++ b/cassandra-thrift.cabal
@@ -1,5 +1,5 @@
 name: cassandra-thrift 
-version: 0.0.3
+version: 0.0.4
 license: OtherLicense 
 cabal-version: >= 1.4
 author: Thrift v.0.2.0 
@@ -7,7 +7,7 @@
 stability: alpha
 synopsis: thrift bindings to the cassandra database 
 description:
-  The Cassandra (v.0.6.2) database bindings, generated using the Thrift (v.0.2) compliler, Released under the Apache 2.0 license. 
+  The Cassandra (v.0.6.3) database bindings, generated using the Thrift (v.0.2) compliler, Released under the Apache 2.0 license. 
     
 category: Database 
 build-type: Simple
@@ -22,6 +22,4 @@
     build-depends:   base >= 4.2.0.0 && < 4.9, 
                      containers,
                      Thrift
-
---    include-dirs: Database 
 
