MCPcopy Create free account
hub / github.com/apache/cassandra-python-driver / _read_frame_header

Method _read_frame_header

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

Source from the content-addressed store, hash-verified

1165
1166 @defunct_on_error
1167 def _read_frame_header(self):
1168 buf = self._io_buffer.cql_frame_buffer.getvalue()
1169 pos = len(buf)
1170 if pos:
1171 version = buf[0] & PROTOCOL_VERSION_MASK
1172 if version not in ProtocolVersion.SUPPORTED_VERSIONS:
1173 raise ProtocolError("This version of the driver does not support protocol version %d" % version)
1174 frame_header = frame_header_v3 if version >= 3 else frame_header_v1_v2
1175 # this frame header struct is everything after the version byte
1176 header_size = frame_header.size + 1
1177 if pos >= header_size:
1178 flags, stream, op, body_len = frame_header.unpack_from(buf, 1)
1179 if body_len < 0:
1180 raise ProtocolError("Received negative body length: %r" % body_len)
1181 self._current_frame = _Frame(version, flags, stream, op, header_size, body_len + header_size)
1182 return pos
1183
1184 @defunct_on_error
1185 def _process_segment_buffer(self):

Callers 1

process_io_bufferMethod · 0.95

Calls 2

ProtocolErrorClass · 0.85
_FrameClass · 0.85

Tested by

no test coverage detected