diff options
Diffstat (limited to 'happybase/connection.py')
| -rw-r--r-- | happybase/connection.py | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/happybase/connection.py b/happybase/connection.py index e52d256..4ca7278 100644 --- a/happybase/connection.py +++ b/happybase/connection.py @@ -6,12 +6,13 @@ HappyBase connection module. import logging -from thrift.transport.TSocket import TSocket -from thrift.transport.TTransport import TBufferedTransport, TFramedTransport -from thrift.protocol import TBinaryProtocol, TCompactProtocol +from thriftpy.thrift import TClient +from thriftpy.transport import TBufferedTransport, TFramedTransport, TSocket +from thriftpy.protocol import TBinaryProtocol +# TODO: https://github.com/eleme/thriftpy/issues/187 +# from thriftpy.protocol import TCompactProtocol -from .hbase import Hbase -from .hbase.ttypes import ColumnDescriptor +from .Hbase_thrift import Hbase, ColumnDescriptor from .table import Table from .util import pep8_to_camel_case @@ -23,8 +24,9 @@ THRIFT_TRANSPORTS = dict( framed=TFramedTransport, ) THRIFT_PROTOCOLS = dict( - binary=TBinaryProtocol.TBinaryProtocolAccelerated, - compact=TCompactProtocol.TCompactProtocol, + binary=TBinaryProtocol, + # compact=TCompactProtocol, + compact=None, # TODO: https://github.com/eleme/thriftpy/issues/187 ) DEFAULT_HOST = 'localhost' @@ -78,8 +80,8 @@ class Connection(object): since otherwise you might see non-obvious connection errors or program hangs when making a connection. ``TCompactProtocol`` is a more compact binary format that is typically more efficient to - process as well. ``TBinaryAccelerated`` is the default protocol that - happybase uses. + process as well. ``TBinaryProtocol`` is the default protocol that + Happybase uses. .. versionadded:: 0.9 `protocol` argument @@ -148,11 +150,11 @@ class Connection(object): """Refresh the Thrift socket, transport, and client.""" socket = TSocket(self.host, self.port) if self.timeout is not None: - socket.setTimeout(self.timeout) + socket.set_timeout(self.timeout) self.transport = self._transport_class(socket) protocol = self._protocol_class(self.transport) - self.client = Hbase.Client(protocol) + self.client = TClient(Hbase, protocol) def _table_name(self, name): """Construct a table name by optionally adding a table name prefix.""" @@ -166,7 +168,7 @@ class Connection(object): This method opens the underlying Thrift transport (TCP connection). """ - if self.transport.isOpen(): + if self.transport.is_open(): return logger.debug("Opening Thrift transport to %s:%d", self.host, self.port) @@ -177,7 +179,7 @@ class Connection(object): This method closes the underlying Thrift transport (TCP connection). """ - if not self.transport.isOpen(): + if not self.transport.is_open(): return if logger is not None: |
