Don't needlessly enter transaction

This commit is contained in:
Erik Johnston 2016-05-06 11:25:58 +01:00
parent 56b5e83e36
commit 1d275dba69

View file

@ -159,10 +159,8 @@ class TransactionStore(SQLBaseStore):
self.inflight_transactions.setdefault(destination, {})[transaction_id] = txn_row self.inflight_transactions.setdefault(destination, {})[transaction_id] = txn_row
# TODO: Fetch prev_txns
return self.runInteraction( return self.runInteraction(
"prep_send_transaction", "_get_prevs_txn",
self._get_prevs_txn, self._get_prevs_txn,
destination, destination,
) )
@ -350,11 +348,12 @@ class TransactionStore(SQLBaseStore):
] ]
def f(txn): def f(txn):
self._simple_insert_many_txn( if full_rows:
txn=txn, self._simple_insert_many_txn(
table="sent_transactions", txn=txn,
values=full_rows table="sent_transactions",
) values=full_rows
)
for dest, txn_map in update_delivered.items(): for dest, txn_map in update_delivered.items():
for txn_id, update_row in txn_map.items(): for txn_id, update_row in txn_map.items():
@ -371,6 +370,7 @@ class TransactionStore(SQLBaseStore):
} }
) )
yield self.runInteraction("_persist_in_mem_txns", f) if full_rows or update_delivered:
yield self.runInteraction("_persist_in_mem_txns", f)
except: except:
logger.exception("Failed to persist transactions!") logger.exception("Failed to persist transactions!")