Bug
upsert_transaction_record in crates/idxdb-store/src/transaction/utils.rs first inserts the transaction script via idxdb_insert_transaction_script, then upserts the transaction record via idxdb_upsert_transaction_record. These are two separate Dexie transactions.
If the second call fails, the script is stored with no corresponding transaction record referencing it. This orphaned script data accumulates in IndexedDB and is never cleaned up.
Impact
- Orphaned script data in IndexedDB that is never reclaimed
- Low severity (no data corruption), but violates atomicity expectations
Root cause
No wrapping transaction. Same pattern as the upsert_account_storage bug (separate issue).
Bug
upsert_transaction_recordincrates/idxdb-store/src/transaction/utils.rsfirst inserts the transaction script viaidxdb_insert_transaction_script, then upserts the transaction record viaidxdb_upsert_transaction_record. These are two separate Dexie transactions.If the second call fails, the script is stored with no corresponding transaction record referencing it. This orphaned script data accumulates in IndexedDB and is never cleaned up.
Impact
Root cause
No wrapping transaction. Same pattern as the
upsert_account_storagebug (separate issue).