MCPcopy Index your code
hub / github.com/apache/cassandra-python-driver / _connect_socket

Method _connect_socket

cassandra/connection.py:935–968  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

933 return addresses
934
935 def _connect_socket(self):
936 sockerr = None
937 addresses = self._get_socket_addresses()
938 for (af, socktype, proto, _, sockaddr) in addresses:
939 try:
940 self._socket = self._socket_impl.socket(af, socktype, proto)
941 if self.ssl_context:
942 self._socket = self._wrap_socket_from_context()
943 self._socket.settimeout(self.connect_timeout)
944 self._initiate_connection(sockaddr)
945 self._socket.settimeout(None)
946
947 # PYTHON-1331
948 #
949 # Most checking is done via the check_hostname param on the SSLContext.
950 # Subclasses can add additional behaviours via _validate_hostname() so
951 # run that here.
952 if self._check_hostname:
953 self._validate_hostname()
954 sockerr = None
955 break
956 except socket.error as err:
957 if self._socket:
958 self._socket.close()
959 self._socket = None
960 sockerr = err
961
962 if sockerr:
963 raise socket.error(sockerr.errno, "Tried connecting to %s. Last error: %s" %
964 ([a[4] for a in addresses], sockerr.strerror or sockerr))
965
966 if self.sockopts:
967 for args in self.sockopts:
968 self._socket.setsockopt(*args)
969
970 def _enable_compression(self):
971 if self._compressor:

Callers 5

__init__Method · 0.80
__init__Method · 0.80
__init__Method · 0.80
__init__Method · 0.80
__init__Method · 0.80

Calls 5

_get_socket_addressesMethod · 0.95
_initiate_connectionMethod · 0.95
_validate_hostnameMethod · 0.95
closeMethod · 0.45

Tested by

no test coverage detected