Skip to content

Commit dfd6d5b

Browse files
Forgot the last part, which is reconnect immediately instead of waiting.
1 parent 713f78c commit dfd6d5b

File tree

1 file changed

+3
-26
lines changed

1 file changed

+3
-26
lines changed

src/replit_river/v2/session.py

Lines changed: 3 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -314,29 +314,6 @@ def is_closed(self) -> bool:
314314
def is_connected(self) -> bool:
315315
return self._state in ActiveStates
316316

317-
async def _begin_close_session_countdown(self) -> None:
318-
"""Begin the countdown to close session, this should be called when
319-
websocket is closed.
320-
"""
321-
# calculate the value now before establishing it so that there are no
322-
# await points between the check and the assignment to avoid a TOCTOU
323-
# race.
324-
grace_period_ms = self._transport_options.session_disconnect_grace_ms
325-
close_session_after_time_secs = (
326-
await self._get_current_time() + grace_period_ms / 1000
327-
)
328-
if self._close_session_after_time_secs is not None:
329-
# already in grace period, no need to set again
330-
return
331-
logger.info(
332-
"websocket closed from %s to %s begin grace period",
333-
self.session_id,
334-
self._server_id,
335-
)
336-
self._state = SessionState.NO_CONNECTION
337-
self._close_session_after_time_secs = close_session_after_time_secs
338-
self._wait_for_connected.clear()
339-
340317
async def _get_current_time(self) -> float:
341318
return asyncio.get_event_loop().time()
342319

@@ -497,7 +474,7 @@ async def block_until_message_available() -> None:
497474
block_until_connected=block_until_connected,
498475
block_until_message_available=block_until_message_available,
499476
get_ws=get_ws,
500-
websocket_closed_callback=self._begin_close_session_countdown,
477+
websocket_closed_callback=self.ensure_connected,
501478
get_next_pending=get_next_pending,
502479
commit=commit,
503480
get_state=lambda: self._state,
@@ -521,8 +498,8 @@ async def transition_no_connection() -> None:
521498

522499
if self._retry_connection_callback:
523500
self._task_manager.create_task(self._retry_connection_callback())
524-
525-
await self._begin_close_session_countdown()
501+
else:
502+
await self.ensure_connected()
526503

527504
def assert_incoming_seq_bookkeeping(
528505
msg_from: str,

0 commit comments

Comments
 (0)