mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-05-02 11:26:09 -04:00
Fix assertion to stop transaction queue getting wedged
... and update some docstrings to correctly reflect the types being used. get_new_device_msgs_for_remote can return a long under some circumstances, which was being stored in last_device_list_stream_id_by_dest, and was then upsetting things on the next loop.
This commit is contained in:
parent
3b2dd1b3c2
commit
29ed09e80a
6 changed files with 29 additions and 5 deletions
|
@ -30,6 +30,17 @@ class IdGenerator(object):
|
|||
|
||||
|
||||
def _load_current_id(db_conn, table, column, step=1):
|
||||
"""
|
||||
|
||||
Args:
|
||||
db_conn (object):
|
||||
table (str):
|
||||
column (str):
|
||||
step (int):
|
||||
|
||||
Returns:
|
||||
int
|
||||
"""
|
||||
cur = db_conn.cursor()
|
||||
if step == 1:
|
||||
cur.execute("SELECT MAX(%s) FROM %s" % (column, table,))
|
||||
|
@ -131,6 +142,9 @@ class StreamIdGenerator(object):
|
|||
def get_current_token(self):
|
||||
"""Returns the maximum stream id such that all stream ids less than or
|
||||
equal to it have been successfully persisted.
|
||||
|
||||
Returns:
|
||||
int
|
||||
"""
|
||||
with self._lock:
|
||||
if self._unfinished_ids:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue