Skip to content

Commit d611f9d

Browse files
more state logging
1 parent eea3d09 commit d611f9d

File tree

1 file changed

+20
-9
lines changed

1 file changed

+20
-9
lines changed

src/replit_river/v2/session.py

Lines changed: 20 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -243,6 +243,16 @@ async def _do_ensure_connected[HandshakeMetadata](
243243
nextSentSeq=next_seq,
244244
),
245245
)
246+
sb_state = None
247+
ab_state = None
248+
if self._send_buffer:
249+
sb_state = [self._send_buffer[0].seq, self._send_buffer[0].ack]
250+
if self._ack_buffer:
251+
ab_state = [self._ack_buffer[0].seq, self._ack_buffer[0].ack]
252+
logger.debug(
253+
f"STATE{{seq={self.seq}, ack={self.ack}, next_seq={next_seq}, "
254+
f"sb_state={sb_state}, ab_state={ab_state} }}"
255+
)
246256
stream_id = nanoid.generate()
247257

248258
async def websocket_closed_callback() -> None:
@@ -268,33 +278,33 @@ async def websocket_closed_callback() -> None:
268278
) as e: # noqa: E501
269279
raise RiverException(
270280
ERROR_HANDSHAKE,
271-
"Handshake failed, conn closed while sending response", # noqa: E501
281+
"Handshake failed, conn closed while sending response",
272282
) from e
273283

274284
startup_grace_deadline_ms = await self._get_current_time() + 60_000
275285
while True:
276-
if await self._get_current_time() >= startup_grace_deadline_ms: # noqa: E501
286+
if await self._get_current_time() >= startup_grace_deadline_ms:
277287
raise RiverException(
278288
ERROR_HANDSHAKE,
279-
"Handshake response timeout, closing connection", # noqa: E501
289+
"Handshake response timeout, closing connection",
280290
)
281291
try:
282292
data = await ws.recv(decode=False)
283293
except ConnectionClosed as e:
284294
logger.debug(
285-
"Connection closed during waiting for handshake response", # noqa: E501
295+
"Connection closed during waiting for handshake response",
286296
exc_info=True,
287297
)
288298
raise RiverException(
289299
ERROR_HANDSHAKE,
290-
"Handshake failed, conn closed while waiting for response", # noqa: E501
300+
"Handshake failed, conn closed while waiting for response",
291301
) from e
292302

293303
try:
294304
response_msg = parse_transport_msg(data)
295305
break
296306
except IgnoreMessageException:
297-
logger.debug("Ignoring transport message", exc_info=True) # noqa: E501
307+
logger.debug("Ignoring transport message", exc_info=True)
298308
continue
299309
except InvalidMessageException as e:
300310
raise RiverException(
@@ -319,12 +329,13 @@ async def websocket_closed_callback() -> None:
319329
if (
320330
handshake_response.status.code
321331
== ERROR_CODE_SESSION_STATE_MISMATCH
322-
): # noqa: E501
332+
):
323333
await self.close()
324334
raise RiverException(
325335
ERROR_HANDSHAKE,
326-
f"Handshake failed with code {handshake_response.status.code}: " # noqa: E501
327-
f"{handshake_response.status.reason}",
336+
f"Handshake failed with code {handshake_response.status.code}: {
337+
handshake_response.status.reason
338+
}",
328339
)
329340

330341
last_error = None

0 commit comments

Comments
 (0)