Commit graph

675 commits

Author SHA1 Message Date
woodser
6f51d333ec resend payment sent & received messages from trade thread on startup 2024-02-02 06:16:41 -05:00
woodser
1a5a754f18 set mailbox message comparator in trade manager to fix npe 2024-01-29 08:41:04 -05:00
woodser
481b6c871a backup wallets on shut down, skip when open on windows 2024-01-29 08:41:04 -05:00
woodser
8600c0cb0d shut down http connections with 5s timeout 2024-01-28 06:45:05 -05:00
woodser
64aa052d83 decrease trade and offer manager shut down timeout to 60s 2024-01-27 09:07:46 -05:00
woodser
eb323f6d65 force restart trade wallet on connection refused during poll 2024-01-27 09:07:46 -05:00
woodser
2a2eb0c82f check if trade shut down started within lock 2024-01-27 09:07:46 -05:00
woodser
33bd4587c4 remove offers from books off user thread 2024-01-27 09:07:46 -05:00
woodser
41290a1f3f remove stacktrace on error polling trade wallet 2024-01-27 09:07:46 -05:00
woodser
221a63077c do not backup trade wallet if arbitrator for space saving 2024-01-27 09:07:46 -05:00
woodser
8776fecef0 use wallet lock with xmr address entries 2024-01-27 09:07:46 -05:00
woodser
821d949fa7 check offer availability off user thread 2024-01-25 12:29:32 -05:00
woodser
29a488d3af update balances off user thread 2024-01-25 12:29:32 -05:00
woodser
40650103d9 get wallet height off user thread 2024-01-25 12:29:32 -05:00
woodser
d0a489198b delete trade wallet backup if empty and payout unlocked, else schedule 2024-01-25 12:29:32 -05:00
woodser
19d3e2853d skip trade protocol message processing if shutting down 2024-01-23 20:45:20 -05:00
woodser
e4e8f5d311 fix npe syncing wallet normally for duration 2024-01-23 20:45:20 -05:00
woodser
6dc9842253 open dispute on trade thread 2024-01-23 20:45:20 -05:00
woodser
892eaa440a fix trade initialization error handling and run off trade thread 2024-01-22 05:21:29 -05:00
woodser
ea4359d164 run arbitrator protocol on trade thread 2024-01-22 05:21:29 -05:00
woodser
847e9e8701 save trade wallet on shutdown with timeout 2024-01-22 05:21:29 -05:00
woodser
b88bec580e update translations for wallet seed backup 2024-01-21 05:25:22 -05:00
woodser
a6b8723ebe persist wallet creation date when created 2024-01-21 05:25:22 -05:00
woodser
036f40e861 remove lock synchronization in connection service to avoid blocking 2024-01-21 05:25:22 -05:00
woodser
93c87462c6 fix CI tests by skipping daemon sync check for local testnet 2024-01-19 10:29:38 -05:00
woodser
e956114239 shut down OpenOfferManager thread pool before completing shut down 2024-01-19 05:45:46 -05:00
woodser
7beae49dd2 cancel pending price request on select new provider 2024-01-19 05:45:46 -05:00
woodser
75e85179b4 fixes for local monerod 2024-01-19 05:45:46 -05:00
woodser
947caca647 do not resend payment sent message to arbitrator after ack 2024-01-17 10:17:50 -05:00
woodser
857179f42d do not reprocess dispute closed message after illegal argument exception 2024-01-17 10:17:50 -05:00
woodser
7383ece7b3 delete backup wallets ~5 days after trade wallet 2024-01-15 10:44:43 -05:00
woodser
df27902577 add HavenoUtils.isSeedNode() 2024-01-15 10:44:43 -05:00
woodser
022028bb41 fix npe cleaning up arbitrator's mailbox messages 2024-01-13 07:28:03 -05:00
woodser
ad77912171 fix invalid pub key warning on process mailbox messages 2024-01-13 07:28:03 -05:00
woodser
2966f8461c update balances on freeze/thaw, register open offer before processing 2024-01-13 07:28:03 -05:00
woodser
036ddef52c update only buyer's payment sent message state property on startup 2024-01-13 07:28:03 -05:00
woodser
bcb951ca40 do not check best connection when connection is fixed 2024-01-13 07:28:03 -05:00
woodser
5c28428436 do not re-complete task to send deposits confirmed message 2024-01-12 06:52:01 -05:00
woodser
2b9d0ef5a6 fix payment sent message state property after improper shut down 2024-01-12 06:52:01 -05:00
woodser
db155283be repeatedly acquire lock on trade shut down and fix timeout 2024-01-10 09:35:25 -05:00
woodser
d26ddac5c0 rename proto type from CONFIRMED_IN_UI* to CONFIRMED* 2024-01-10 09:35:25 -05:00
woodser
6c83fc4cf8 avoid fetching wallet subaddresses individually by caching 2024-01-09 06:59:45 -05:00
woodser
c28ffb70ff update state from wallet notifications on UserThread 2024-01-09 06:59:45 -05:00
woodser
a6f6f5c00a protocols skip resending payment sent/received if shut down 2024-01-09 06:59:45 -05:00
woodser
c06a85b929 clear and shut down inactive trades, move more to trade threads 2024-01-06 12:52:21 -05:00
woodser
c14f37b595 invoke main wallet listeners in thread pool 2024-01-06 12:52:21 -05:00
woodser
52a44d020e update trades on UserThread in TradeManager to fix npe 2024-01-06 12:52:21 -05:00
woodser
0d60df2aa7 refactor trade and connection threading to new ThreadUtils 2024-01-06 12:52:21 -05:00
woodser
497de47965 do not set daemon connection to null on disconnect 2024-01-06 12:52:21 -05:00
woodser
ba8a9ae21d await external prices on startup 2024-01-06 12:52:21 -05:00
woodser
f8d9c827ea skip wallet initialization if shut down started 2024-01-06 12:52:21 -05:00
woodser
2ee2b747f9 check for balance before deleting trade wallet 2024-01-06 12:52:21 -05:00
woodser
e7371d1299 process trade state notifications off UserThread 2024-01-04 14:54:15 -05:00
woodser
43bbb29384 try syncing main wallet when height > target height on startup 2024-01-04 14:54:15 -05:00
woodser
0a3736bba0 reprocess trade messages off UserThread 2024-01-04 14:54:15 -05:00
woodser
5d88936600 start main wallet when daemon synced with improved UserThread 2024-01-01 09:05:04 -05:00
woodser
5466689857 set progress listener state in same thread 2024-01-01 09:05:04 -05:00
woodser
7f3fd0af08 finish open offer manager tasks before shut down 2024-01-01 09:05:04 -05:00
woodser
342c212ba8 remove global error handler for taking offer 2024-01-01 09:05:04 -05:00
woodser
fdb24ba9f8 arbitrator sends nack if trade already taken 2024-01-01 09:05:04 -05:00
woodser
c6b1d03283 set price feed state in UserThread 2024-01-01 09:05:04 -05:00
woodser
c55fb927f2 rely on trade state to delete wallet 2023-12-31 10:14:13 -05:00
woodser
3aab3f57b1 set offer state on UserThread 2023-12-31 10:14:13 -05:00
woodser
e160499d30 sync main wallet outside lock on connection changed 2023-12-31 10:14:13 -05:00
woodser
bc4d8fc8c2 split output tx is null while awaiting scheduled tx 2023-12-31 10:14:13 -05:00
woodser
2e86d4a62a check local connection before switching 2023-12-31 10:14:13 -05:00
woodser
6c2f3ea154 improve trade state reliability
update trade state atomically on UserThread
nullify error handling on deposits confirmed message
set trade state before deposit request and relay
add checks before deleting wallet
UserThread.await() detects if on UserThread
2023-12-27 11:20:16 -05:00
woodser
3de4264c4b increase offer reliability with TTL, refresh period, max attempts 2023-12-24 11:55:47 -05:00
woodser
0d33959eeb republish offers on dedicated thread for open offer manager 2023-12-22 09:58:29 -05:00
woodser
a1f8f942fc poll daemon and trade wallets in dedicated lock and prevent queuing 2023-12-22 09:58:29 -05:00
woodser
1dab218d7e do not shut down connection pool in case account is re-recreated 2023-12-20 07:32:40 -05:00
woodser
c7b8571842 reset timeout timer on progress creating offer 2023-12-20 07:32:40 -05:00
woodser
1df2ab4389 replace AppSetupWithP2PAndDAO with AppSetupWithP2P 2023-12-20 07:32:40 -05:00
woodser
01a57c18f7 support setting custom node in UI with localhost running 2023-12-20 07:32:40 -05:00
woodser
f162cad439 handle connection change on dedicated thread, other thread improvements 2023-12-20 07:32:40 -05:00
woodser
b1f8411641 check local connection after setting 2023-12-20 07:32:40 -05:00
woodser
dffb676f4e reset address entries for open offer on error taking offer 2023-12-20 07:32:40 -05:00
woodser
30e199c56e shut down trades before main wallet to finish processing 2023-12-20 07:32:40 -05:00
woodser
e6775f3b58 move processing off UserThread for smoother experience 2023-12-18 13:45:04 -05:00
woodser
e11d65c038 check and extend timeout after taker creates reserve tx 2023-12-18 13:45:04 -05:00
woodser
48d902b58d close trader dispute ticket on payout published 2023-12-18 13:45:04 -05:00
woodser
c42471191a refactor trade state TRADE_COMPLETED to boolean 2023-12-18 13:45:04 -05:00
woodser
fd4e4d3917 remove warning that wallet is not synced when idling 2023-12-16 15:20:36 -05:00
woodser
66a152c888 close open dispute on preparing payment received message 2023-12-16 15:20:36 -05:00
woodser
26ea53883c republish offers awaits prices and runs off UserThread 2023-12-16 15:20:36 -05:00
woodser
dbd8db0e88 set open offer's reserve tx fields once known and repost if invalid 2023-12-16 15:20:36 -05:00
woodser
2e13bc0051 update translation: Taking offer: X% 2023-12-14 12:03:47 -05:00
woodser
c9a79888c8 change message when daemon synced and update translations 2023-12-14 12:03:47 -05:00
woodser
94eae8f945 add (via clearnet) to connection status 2023-12-14 12:03:47 -05:00
woodser
acfb4ae4c5 log price provider 2023-12-14 12:03:47 -05:00
woodser
c7277187c5 fix cycling through price providers 2023-12-11 09:06:20 -05:00
woodser
d8ac901d4a call wallet.sync() on startup after background sync with progress 2023-12-10 16:08:45 -05:00
woodser
74cfd474ad clear basic trade process data on payout unlocked 2023-12-10 16:08:45 -05:00
woodser
948be8ce29 rename trade getPayoutAmount() to getPayoutAmountBeforeCost() 2023-12-10 16:08:45 -05:00
woodser
7bfba15109 do not resend deposits confirmed message after payout published 2023-12-10 16:08:45 -05:00
woodser
0c149b780f mark dispute closed per ticket and sync for payout on ack 2023-12-10 16:08:45 -05:00
woodser
3730773006 replace BigInteger.valueOf(0) with BigInteger.ZERO 2023-12-10 16:08:45 -05:00
woodser
cd89b8bf15 update translations for startup syncs 2023-12-10 16:08:45 -05:00
woodser
41ed01dbde update translation: Connecting to Haveno network 2023-12-10 16:08:45 -05:00
woodser
8800d9ea46 set buyer and seller payout tx fee and amount, fix csv export #720 2023-12-10 16:08:45 -05:00