Commit Graph

1478 Commits

Author SHA1 Message Date
Neil Booth
d3f9ba386c Move flush_state() to db.py 2018-08-10 11:10:13 +09:00
Neil Booth
d1510b1192 Move bulk of UTXO flush logic to db.py 2018-08-10 11:10:13 +09:00
Neil Booth
9515e1a1e4 Improve flow for opening DBs 2018-08-10 11:10:13 +09:00
Neil Booth
aac84ade75 Sleep at shutdown 2018-08-10 11:10:13 +09:00
Neil Booth
c9631f3438 Move history flushing to DB.flush_history() 2018-08-10 11:10:13 +09:00
Neil Booth
11c6c919a6 Move fs_flush to db.py and merge with fs_update 2018-08-10 11:10:13 +09:00
Neil Booth
d87c3dedcf Move assert_flushed DB logic to db.py 2018-08-10 11:10:13 +09:00
Neil Booth
70319bb22d Merge branch 'master' into devel 2018-08-10 11:06:49 +09:00
Neil Booth
dd67b57c30 Catch and log failures in the main peers task
Closes #565
2018-08-10 09:52:49 +09:00
Neil Booth
afae1b4a42 Fix rare race condition
Closes #567
2018-08-10 09:20:56 +09:00
Neil Booth
83813ff1ac Extend SUPPRESS_MESSAGE_REGEX
Fixes #521
2018-08-10 06:25:27 +09:00
Neil Booth
7f28677549 Merge branch 'master' into devel 2018-08-09 18:19:16 +09:00
Neil Booth
9dff85c027 Prepare 1.8.2 2018-08-09 18:16:18 +09:00
Neil Booth
028374ede4 Shield the taking of the lock, otherwise it is lost 2018-08-09 17:28:34 +09:00
Neil Booth
e95f556234 Merge branch 'master' into devel 2018-08-09 15:40:07 +09:00
Neil Booth
e2d3f655fb Set retry_event on correct object
Fixes #564
2018-08-09 15:29:10 +09:00
Neil Booth
9a2dfa9ab0 Merge branch 'master' into devel 2018-08-09 06:36:24 +09:00
Neil Booth
ab848ed312 Update aiorpcX dep in setup.py
Fixes #563
2018-08-09 06:25:23 +09:00
Neil Booth
87d55c3fc5 Prepare 1.8.1 2018-08-08 23:18:06 +09:00
Neil Booth
9b22fd3a15 Peer verification needs to be serial... 2018-08-08 20:32:51 +09:00
Neil Booth
09edee6091 Merge branch 'mc-initialization' into devel 2018-08-08 17:51:01 +09:00
Neil Booth
e0ccf0cce3 Populate the header merkle cache in a thread
- It can take a while
- Client requests that need it will block until it's done
- It's a function of FS state so move it to the DB
- Tweak docs

Fixes #558
2018-08-08 17:26:34 +09:00
Neil Booth
0a8045278a Merge branch 'no-shutdown-hacks' into devel 2018-08-08 16:34:21 +09:00
Neil Booth
2803ef913e Merge branch 'master' into devel 2018-08-08 16:33:11 +09:00
Neil Booth
28ea9ae2f4 Remove hackery 2018-08-08 14:58:52 +09:00
Neil Booth
12c49bbe75 Suppress accept_connection2 asyncio log spew 2018-08-08 12:48:22 +09:00
Neil Booth
931b227618 Verify a peer concurrently 2018-08-08 12:40:48 +09:00
Neil Booth
9b4276c68d Have peers.py use its own task group 2018-08-08 12:35:58 +09:00
Neil Booth
9c5d59e997 Use new Session interface 2018-08-08 12:19:26 +09:00
Neil Booth
2d66a4f5aa aiorpcX 0.7.0 has better string text for TaskTimeout 2018-08-08 12:19:18 +09:00
Neil Booth
6697614427 Use close from aiorpcX 0.7.0 2018-08-08 12:19:09 +09:00
Neil Booth
962b4679d7 Require aiorpcX 0.7.0 2018-08-08 12:18:57 +09:00
Neil Booth
a3afab83d6 Better handle bad input to query RPC call
Based on #559.  Also:

- remove unused import
- restore timeout to 15s
- handle invalid input by catching at a higher level
  and converting to RPCError
2018-08-07 21:21:27 +09:00
Neil Booth
1badab2186 Add documentation of proposed protocol 1.5 changes 2018-08-07 15:09:26 +09:00
Neil Booth
74e6fe416f Move close() up to the base class
Fixes #557
2018-08-07 10:46:12 +09:00
Neil Booth
955a8e927d Put flushing-to-DB in a thread
- flush() and backup_flush() are now async
2018-08-06 22:28:25 +09:00
Neil Booth
1efc8cb8ec Make the merkle cache and read_headers async
read_headers runs in a thread to avoid blocking
2018-08-06 21:49:26 +09:00
Neil Booth
db5d516756 Make raw_header async 2018-08-06 21:49:26 +09:00
Neil Booth
f24b022fa4 Remove dead code 2018-08-06 21:49:26 +09:00
Neil Booth
12dbf2c74a Rename get_history to limited_history
- make it async and run in a thread
2018-08-06 21:49:26 +09:00
Neil Booth
a036a2eb3f Rename get_utxos to all_utxos.
- no longer takes a limit
- runs in a thread to avoid blocking
2018-08-06 21:38:53 +09:00
Neil Booth
0c8d5ddf63 Mark as dev branch 2018-08-06 21:38:53 +09:00
Neil Booth
78388999a7 Prepare 1.8 2018-08-06 18:55:47 +09:00
Neil Booth
c9f97d98e0 Improve electrumx_rpc error handling 2018-08-06 18:35:55 +09:00
Neil Booth
c141bfffd9 Remove some dead debug code 2018-08-06 18:17:46 +09:00
Neil Booth
55da063f6b Tweak exception output to use !r 2018-08-06 18:04:20 +09:00
Neil Booth
1956b9d659 Use a regex for message suppression 2018-08-06 14:55:25 +09:00
Neil Booth
09e840de3c Fix spawn call 2018-08-06 14:47:53 +09:00
Neil Booth
4bb78ecbbb Move history cache to session_mgr 2018-08-06 14:34:44 +09:00
Neil Booth
790d462b55 Use a list for order 2018-08-06 11:59:55 +09:00