diff options
author | Erik Johnston <erik@matrix.org> | 2018-05-31 19:20:50 +0100 |
---|---|---|
committer | Erik Johnston <erik@matrix.org> | 2018-05-31 19:20:50 +0100 |
commit | 397e4c1d3ddbbef6e4cc53b81932567c4e6e7c16 (patch) | |
tree | 18ba18007b5531d74eb4005b197bd3468ee2ff67 | |
parent | fixup (diff) | |
download | synapse-397e4c1d3ddbbef6e4cc53b81932567c4e6e7c16.tar.xz |
fixup
-rw-r--r-- | synapse/storage/chunk_ordered_table.py | 37 |
1 files changed, 19 insertions, 18 deletions
diff --git a/synapse/storage/chunk_ordered_table.py b/synapse/storage/chunk_ordered_table.py index 909101de6b..a65c10f652 100644 --- a/synapse/storage/chunk_ordered_table.py +++ b/synapse/storage/chunk_ordered_table.py @@ -327,33 +327,34 @@ class ChunkDBOrderedListStore(OrderedListStore): def _delete_ordering(self, node_id): """Implements OrderedListStore""" + next_chunk_id = SQLBaseStore._simple_select_one_onecol_txn( + txn, + table="chunk_linearized", + keyvalues={ + "chunk_id": node_id, + }, + retcol="next_chunk_id", + ) + + SQLBaseStore._simple_delete_txn( + self.txn, + table="chunk_linearized", + keyvalues={"chunk_id": node_id}, + ) + sql = """ - UPDATE chunk_linearized SET next_chunk_id = ( - SELECT next_chunk_id - FROM chunk_linearized - WHERE chunk_id = ? - ) + UPDATE chunk_linearized SET next_chunk_id = ? WHERE next_chunk_id = ? """ - self.txn.execute(sql, (node_id, node_id,)) + self.txn.execute(sql, (next_chunk_id, node_id,)) sql = """ - UPDATE chunk_linearized_first SET chunk_id = ( - SELECT next_chunk_id - FROM chunk_linearized - WHERE chunk_id = ? - ) + UPDATE chunk_linearized_first SET chunk_id = ? WHERE chunk_id = ? """ - self.txn.execute(sql, (node_id, node_id,)) - - SQLBaseStore._simple_delete_txn( - self.txn, - table="chunk_linearized", - keyvalues={"chunk_id": node_id}, - ) + self.txn.execute(sql, (next_chunk_id, node_id,)) def _add_edge_to_graph(self, source_id, target_id): """Implements OrderedListStore""" |