File tree Expand file tree Collapse file tree 1 file changed +13
-6
lines changed
safe_transaction_service/history/indexers Expand file tree Collapse file tree 1 file changed +13
-6
lines changed Original file line number Diff line number Diff line change @@ -286,18 +286,25 @@ def trace_transactions(
286286 def filter_relevant_txs (
287287 self , internal_txs : Generator [InternalTx ]
288288 ) -> Generator [InternalTx ]:
289+ relevant_txs_to_create = []
289290 for internal_tx in internal_txs :
290291 if internal_tx .is_relevant :
291292 if internal_tx .is_ether_transfer :
292- SafeRelevantTransaction . objects . get_or_create (
293- ethereum_tx_id = internal_tx . ethereum_tx_id ,
294- safe = internal_tx .to ,
295- defaults = {
296- " timestamp" : internal_tx .timestamp ,
297- },
293+ relevant_txs_to_create . append (
294+ SafeRelevantTransaction (
295+ ethereum_tx_id = internal_tx .ethereum_tx_id ,
296+ safe = internal_tx . to ,
297+ timestamp = internal_tx .timestamp ,
298+ )
298299 )
299300 yield internal_tx
300301
302+ # Batch create SafeRelevantTransaction records
303+ if relevant_txs_to_create :
304+ SafeRelevantTransaction .objects .bulk_create (
305+ relevant_txs_to_create , ignore_conflicts = True
306+ )
307+
301308 def process_elements (
302309 self , tx_hash_with_traces : OrderedDict [bytes , FilterTrace | None ]
303310 ) -> list [HexBytes ]:
You can’t perform that action at this time.
0 commit comments