diff --git a/lib/services/coins/bitcoincash/bitcoincash_wallet.dart b/lib/services/coins/bitcoincash/bitcoincash_wallet.dart index 0ed724632..6c48516a0 100644 --- a/lib/services/coins/bitcoincash/bitcoincash_wallet.dart +++ b/lib/services/coins/bitcoincash/bitcoincash_wallet.dart @@ -2801,9 +2801,11 @@ class BitcoinCashWallet extends CoinServiceAPI with WalletCache, WalletDB { // clear blockchain info await isar.writeTxn(() async { - await isar.addresses.clear(); await isar.transactions.clear(); + await isar.inputs.clear(); + await isar.outputs.clear(); await isar.utxos.clear(); + await isar.addresses.clear(); }); try { diff --git a/lib/services/coins/dogecoin/dogecoin_wallet.dart b/lib/services/coins/dogecoin/dogecoin_wallet.dart index ed887d1bb..ff478c8c6 100644 --- a/lib/services/coins/dogecoin/dogecoin_wallet.dart +++ b/lib/services/coins/dogecoin/dogecoin_wallet.dart @@ -2435,6 +2435,15 @@ class DogecoinWallet extends CoinServiceAPI with WalletCache, WalletDB { // back up data // await _rescanBackup(); + // clear blockchain info + await isar.writeTxn(() async { + await isar.transactions.clear(); + await isar.inputs.clear(); + await isar.outputs.clear(); + await isar.utxos.clear(); + await isar.addresses.clear(); + }); + try { final mnemonic = await _secureStore.read(key: '${_walletId}_mnemonic'); await _recoverWalletFromBIP32SeedPhrase( diff --git a/lib/services/coins/epiccash/epiccash_wallet.dart b/lib/services/coins/epiccash/epiccash_wallet.dart index e2b07c54f..c008132a2 100644 --- a/lib/services/coins/epiccash/epiccash_wallet.dart +++ b/lib/services/coins/epiccash/epiccash_wallet.dart @@ -904,6 +904,15 @@ class EpicCashWallet extends CoinServiceAPI ), ); + // clear blockchain info + await isar.writeTxn(() async { + await isar.transactions.clear(); + await isar.inputs.clear(); + await isar.outputs.clear(); + await isar.utxos.clear(); + await isar.addresses.clear(); + }); + await epicUpdateLastScannedBlock(await getRestoreHeight()); if (!await startScans()) { diff --git a/lib/services/coins/firo/firo_wallet.dart b/lib/services/coins/firo/firo_wallet.dart index 77409cb60..518fb5c68 100644 --- a/lib/services/coins/firo/firo_wallet.dart +++ b/lib/services/coins/firo/firo_wallet.dart @@ -3596,6 +3596,15 @@ class FiroWallet extends CoinServiceAPI with WalletCache, WalletDB, FiroHive { // back up data // await _rescanBackup(); + // clear blockchain info + await isar.writeTxn(() async { + await isar.transactions.clear(); + await isar.inputs.clear(); + await isar.outputs.clear(); + await isar.utxos.clear(); + await isar.addresses.clear(); + }); + try { final mnemonic = await _secureStore.read(key: '${_walletId}_mnemonic'); await _recoverWalletFromBIP32SeedPhrase(mnemonic!, maxUnusedAddressGap); diff --git a/lib/services/coins/litecoin/litecoin_wallet.dart b/lib/services/coins/litecoin/litecoin_wallet.dart index e596a9072..0d0a867c3 100644 --- a/lib/services/coins/litecoin/litecoin_wallet.dart +++ b/lib/services/coins/litecoin/litecoin_wallet.dart @@ -2823,6 +2823,15 @@ class LitecoinWallet extends CoinServiceAPI with WalletCache, WalletDB { // back up data // await _rescanBackup(); + // clear blockchain info + await isar.writeTxn(() async { + await isar.transactions.clear(); + await isar.inputs.clear(); + await isar.outputs.clear(); + await isar.utxos.clear(); + await isar.addresses.clear(); + }); + try { final mnemonic = await _secureStore.read(key: '${_walletId}_mnemonic'); await _recoverWalletFromBIP32SeedPhrase( diff --git a/lib/services/coins/monero/monero_wallet.dart b/lib/services/coins/monero/monero_wallet.dart index c83ee60b7..b4d4a4778 100644 --- a/lib/services/coins/monero/monero_wallet.dart +++ b/lib/services/coins/monero/monero_wallet.dart @@ -215,6 +215,15 @@ class MoneroWallet extends CoinServiceAPI with WalletCache, WalletDB { int maxUnusedAddressGap, int maxNumberOfIndexesToCheck, ) async { + // clear blockchain info + await isar.writeTxn(() async { + await isar.transactions.clear(); + await isar.inputs.clear(); + await isar.outputs.clear(); + await isar.utxos.clear(); + await isar.addresses.clear(); + }); + var restoreHeight = walletBase?.walletInfo.restoreHeight; highestPercentCached = 0; await walletBase?.rescan(height: restoreHeight); diff --git a/lib/services/coins/namecoin/namecoin_wallet.dart b/lib/services/coins/namecoin/namecoin_wallet.dart index 760c0afd6..63883f887 100644 --- a/lib/services/coins/namecoin/namecoin_wallet.dart +++ b/lib/services/coins/namecoin/namecoin_wallet.dart @@ -2812,6 +2812,15 @@ class NamecoinWallet extends CoinServiceAPI with WalletCache, WalletDB { // back up data // await _rescanBackup(); + // clear blockchain info + await isar.writeTxn(() async { + await isar.transactions.clear(); + await isar.inputs.clear(); + await isar.outputs.clear(); + await isar.utxos.clear(); + await isar.addresses.clear(); + }); + try { final mnemonic = await _secureStore.read(key: '${_walletId}_mnemonic'); await _recoverWalletFromBIP32SeedPhrase( diff --git a/lib/services/coins/particl/particl_wallet.dart b/lib/services/coins/particl/particl_wallet.dart index 37035b93c..01dfff0b8 100644 --- a/lib/services/coins/particl/particl_wallet.dart +++ b/lib/services/coins/particl/particl_wallet.dart @@ -1992,8 +1992,6 @@ class ParticlWallet extends CoinServiceAPI with WalletCache, WalletDB { coin: coin, ); - // Logging.instance.log("TRANSACTION: ${jsonEncode(tx)}"); - // TODO fix this for sent to self transactions? if (!_duplicateTxCheck(allTransactions, tx["txid"] as String)) { tx["address"] = await isar.addresses .filter() @@ -2898,6 +2896,15 @@ class ParticlWallet extends CoinServiceAPI with WalletCache, WalletDB { // back up data // await _rescanBackup(); + // clear blockchain info + await isar.writeTxn(() async { + await isar.transactions.clear(); + await isar.inputs.clear(); + await isar.outputs.clear(); + await isar.utxos.clear(); + await isar.addresses.clear(); + }); + try { final mnemonic = await _secureStore.read(key: '${_walletId}_mnemonic'); await _recoverWalletFromBIP32SeedPhrase( diff --git a/lib/services/coins/wownero/wownero_wallet.dart b/lib/services/coins/wownero/wownero_wallet.dart index 70f16d58d..c09ac5294 100644 --- a/lib/services/coins/wownero/wownero_wallet.dart +++ b/lib/services/coins/wownero/wownero_wallet.dart @@ -238,6 +238,15 @@ class WowneroWallet extends CoinServiceAPI with WalletCache, WalletDB { int maxUnusedAddressGap, int maxNumberOfIndexesToCheck, ) async { + // clear blockchain info + await isar.writeTxn(() async { + await isar.transactions.clear(); + await isar.inputs.clear(); + await isar.outputs.clear(); + await isar.utxos.clear(); + await isar.addresses.clear(); + }); + var restoreHeight = walletBase?.walletInfo.restoreHeight; highestPercentCached = 0; await walletBase?.rescan(height: restoreHeight);