Commit Graph

656 Commits

Author SHA1 Message Date
Duke
380875906d Remove more CC stuff 2024-09-22 09:40:37 -04:00
Duke
4f4a72da8e Go back to taking both main+wallet lock in DecrementWitnesses
By taking a wallet lock first and then main later we run into
a potential deadlock :

2024-09-13 11:14:37 POTENTIAL DEADLOCK DETECTED
2024-09-13 11:14:37 Previous lock order was:
2024-09-13 11:14:37  (1) cs_wallet  wallet/wallet.cpp:985
2024-09-13 11:14:37  (2) cs_main  wallet/wallet.cpp:890
2024-09-13 11:14:37 Current lock order is:
2024-09-13 11:14:37  (2) cs_main  wallet/wallet.cpp:2845
2024-09-13 11:14:37  (1) cs_wallet  wallet/wallet.cpp:2845
2024-09-13 09:34:10 -04:00
Duke
be3641158a Only take cs_main lock in GetSaplingSpendDepth
We do not seem to need this lock for the entire DecrementNoteWitnesses function,
we need it only when calling GetSaplingSpendDepth. Also protects against
the case in the future where some code without cs_main calls GetSaplingSpendDepth.
2024-09-13 04:11:38 -04:00
Duke
7f9878cf0c Take a lock on cs_main in DecrementNoteWitnesses
Another possibly better approach would be to take a lock inside
GetSaplingSpendDepth since we want the lock to apply to as little
code as possible and it is GetSaplingSpendDepth that calls GetDepthInMainChain
which requires a cs_main lock .
2024-09-12 11:47:58 -04:00
Duke
558f662a33 Do not apply sapling network rules to block height 0 or 1 in ScanForWalletTransactions 2024-03-21 11:17:58 -04:00
onryo
58b65f9670 Update copyrights 2024-02-27 23:59:59 +01:00
Duke
07b041fd94 Do not apply overwinter/sapling consensus rules to block 0 2024-02-15 10:40:22 -05:00
Duke
27db254d68 Sapling and Overwinter network upgrades are always active
These NU's are always active for Hush Arrakis Chains so this code only serves
to slow down all operations by constantly being checked. So we disable them
which will speed up syncing, mining and creating transactions.
2024-01-21 16:34:53 -05:00
Duke
f0395196ec Do not resend wallet txs during IBD, rescan or loading blocks 2023-10-29 21:45:30 -04:00
Duke
b73297f1f5 More debugging when resending txs 2023-10-25 13:17:10 -04:00
Duke
4642a35f06 Stop building witnesses if abortrescan is called #331 2023-10-23 10:47:12 -04:00
Duke
ae0ff73548 Stop building witnesses if shutdown requested, fixes #330 2023-10-23 09:49:50 -04:00
Duke
533356ce63 Remove more dead code related to interest 2023-04-06 13:22:20 -04:00
Duke
c69a47dd61 Remove dead code relating to interest 2023-04-06 13:05:20 -04:00
Duke
b4be7aa19b malloc_trim does not seem to exist on FreeBSD 2023-04-06 05:40:30 -07:00
Duke
bde7273c9f Remove mapRequest tracking 2023-03-14 15:54:28 -04:00
Duke
560f8e2f41 Remove unused GetRequestCount() 2023-03-14 14:44:14 -04:00
Duke
e033a2e6eb Update copyrights to 2023 2023-02-09 18:06:03 -05:00
Duke
a7939139b2 Merge remote-tracking branch 'origin/abortrescan' into dev
Conflicts:
	src/wallet/wallet.cpp
2023-02-05 18:16:36 -08:00
Jonathan "Duke" Leto
ca52c6beb8 Avoid potential coredump if pindex is NULL 2022-11-11 04:26:18 -08:00
Duke Leto
c36464ee1b Fix bug in getrescaninfo
There was a small bug in getrescaninfo where when a rescan first starts, it
shows rescanning=true but progress=100% because rescanHeight was not initialized
correctly.

Also update our rescanHeight while we are fast-forwarding thru blocks which are
before the current wallet birthday.
2022-10-28 17:09:40 -04:00
Duke Leto
6fda12612d Initial implementation of abortrescan 2022-10-19 05:12:12 -04:00
Duke Leto
29ec7b5fb6 Set rescanStartHeight before we lock cs_main + cs_wallet 2022-10-17 07:13:50 -04:00
Duke Leto
71923e3ffb Initial implementation of getrescaninfo 2022-10-17 07:03:32 -04:00
Jonathan "Duke" Leto
5d2307a709 Update copyrights to 2022 2022-09-19 15:45:30 -07:00
Duke Leto
f90715192e Do not delete expired txs for now, it doesn't work correctly, and log more info about them 2022-09-15 09:38:48 -04:00
Duke Leto
bd9006623c Avoid coredumps in ReacceptWalletTransactions and log the situation, which is possibly caused by corrupt wallet tx data 2022-09-11 22:41:03 -04:00
Duke Leto
5b15d790f9 Parse sweep+consolidation intervals on startup, add consolidationinterval config option, change consolidation interval default to 25, only validate consolidatesaplingaddress if consolidation is enabled 2022-09-11 21:56:21 -04:00
Duke Leto
772160af6d Add more logging for consolidation + sweeping 2022-09-10 19:38:08 -04:00
Duke Leto
61ecffd074 Change default sweep interval to 10 and consolidation to be deterministic every 45 blocks 2022-09-06 14:30:06 -04:00
Duke Leto
8d8f988a19 Delete expired txs from the wallet, since they can never be included in a block 2022-09-06 11:19:46 -04:00
Duke Leto
63f9e22308 log the function name correctly 2022-08-31 14:15:38 -04:00
Duke Leto
4573a8336f Fix compile error 2022-08-31 14:10:40 -04:00
Jonathan "Duke" Leto
26fd16cb52 Avoid relaying expired transactions which causes other nodes to ban us 2022-08-31 11:09:18 -07:00
Duke Leto
3730175971 Add some logging when skipping sweep/consolidation 2022-08-27 14:04:53 -04:00
Duke Leto
c6e5b07a59 You might be a king or a little street zsweeper, but sooner or later you will dance with the reaper 2022-08-24 23:38:19 -04:00
Duke Leto
afd3f93e2e Throw error in wallet if ReadBlockFromDisk fails 2022-07-18 10:43:22 -04:00
Duke Leto
361998b5d2 Do not erase for now 2021-12-23 17:59:01 -05:00
Duke Leto
8faa5dec89 Erase old unconfirmed wallet transactions that are too old to be accepted by network consensus rules 2021-12-22 12:12:13 -05:00
Duke Leto
f19c70bfa6 Add missing newline to rescan log line 2021-09-09 12:37:04 -04:00
Duke Leto
b4cf845bf3 New listaddresses RPC and z_exportwallet RPC now can be called during RPC warmup 2021-09-02 12:22:04 -04:00
Duke Leto
38089e2d15 Only build witness cache when needed 2021-07-10 02:30:05 -04:00
Duke Leto
2c315965d7 Log data about clearing witness cache 2021-06-26 13:54:57 -04:00
Duke Leto
84f79558d5 Desprout 2021-05-19 21:32:36 -04:00
Duke Leto
4db320355b Small optimizations during rescanning and ChainTip() 2021-05-19 10:51:07 -04:00
Duke Leto
4a536d62dc Update copyrights 2021-04-17 13:03:22 -04:00
Duke Leto
4d252334bf . 2021-04-09 14:53:26 -04:00
Duke Leto
e76dccdb2c Merge branch 'dev' into duke 2021-02-25 15:49:30 -08:00
Duke Leto
8ed3ced34f Log block height in AddToWallet 2021-02-24 12:02:43 -08:00
Duke Leto
89085d44da Merge branch 'dev' into duke 2021-01-28 05:18:45 -05:00