diff --git a/hathor/manager.py b/hathor/manager.py index 5f5c2b037..9f1210d40 100644 --- a/hathor/manager.py +++ b/hathor/manager.py @@ -908,6 +908,9 @@ def push_tx(self, tx: Transaction, allow_non_standard_script: bool = False, max_output_script_size: int | None = None) -> None: """Used by all APIs that accept a new transaction (like push_tx) """ + if self.tx_storage.transaction_exists(tx.hash): + raise InvalidNewTransaction('Transaction already exists {}'.format(tx.hash_hex)) + if max_output_script_size is None: max_output_script_size = self._settings.PUSHTX_MAX_OUTPUT_SCRIPT_SIZE