Neil Booth
82d57dc90f
Accept IPv6 addresses in DAEMON_URL
...
Fixes #126
2017-02-16 08:00:08 +09:00
Neil Booth
60ad792179
Update docs
2017-02-12 08:35:47 +09:00
Neil Booth
616bcf6bfd
Add daemon_url RPC call and document it.
...
Closes #111
2017-01-31 08:13:25 +09:00
Neil Booth
cd078be882
Fix some typos
2017-01-29 18:43:58 +09:00
Neil Booth
d0ecdcc5bc
Add docs/PROTOCOL.rst
2017-01-29 18:38:23 +09:00
Neil Booth
4a8cec9988
Prepare 0.10.14
2017-01-29 08:29:41 +09:00
Neil Booth
0202b2210a
Add peer discovery document
2017-01-29 08:24:18 +09:00
Neil Booth
e56f188816
Implement peer subscriptions
...
Incremental updates are passed.
Also implement a server.features RPC
2017-01-25 20:28:19 +09:00
Neil Booth
a7462a6ea3
Complete rewrite of JSON RPC infrastructure
...
Aim to be easier for clients to use, because to do peer
discovery we must act as a client to other servers.
Split out JSON session concept from the asyncio protocol
concept. This makes the JSON RPC support more easily
testable and usable as a stand-alone library.
In addition, support JSON RPC v1 and v2, and auto-detection
of peer's version.
2017-01-23 23:36:02 +09:00
Neil Booth
05a6da1920
Move peer management to peers.py from irc
...
It's cleaner and will be useful for peer-to-peer comms later
2017-01-22 23:34:44 +09:00
Neil Booth
c958b3af49
Remove LMDB
...
Performance of history writes was very poor even with
the code rewritten to accommodate the environment concept
(see db_abstraction branch)
2017-01-16 22:03:45 +09:00
Neil Booth
5aaee6b608
Update docs
2017-01-16 19:32:22 +09:00
Neil Booth
8d58d2a0e7
Clean up shutdown logic and logging
...
Add RPC "stop" command, and document it.
Fixes the 2nd part of #100
2017-01-16 19:31:57 +09:00
Neil Booth
d2da494120
Clarify README; no need to resync.
...
Update HOWTO and docs
2017-01-12 22:40:21 +09:00
Neil Booth
2ad64f6243
Add an RPC call to force a reorg at run-time
...
This required a large rework block processor and prefetcher
interaction, and led to various cleanups
Closes #103
2017-01-09 17:14:06 +09:00
Neil Booth
15051124af
Make flushes and reorgs async
...
Apart from the flush on shutdown and the flush when caught up,
neither of which matter, this makes flushes asynchronous.
Also, block processing for reorgs is now asynchronous.
This also removes the FORCE_REORG debug envvar; I want to
put that into the RPC interface.
Closes #102
2017-01-09 16:15:17 +09:00
Neil Booth
dcc2c92bd6
Rename NETWORK envvar to NET
...
For consistency with lib/coins.py
SegWit testnet needs its own NET
2017-01-08 10:07:58 +09:00
Neil Booth
91ca5fc14a
Split out history into its own DB.
2017-01-07 11:51:12 +09:00
Neil Booth
0f43ce564a
Fix log message
2017-01-07 11:51:00 +09:00
Neil Booth
038d9a9720
Tweak documentation for clarity
2017-01-07 11:51:00 +09:00
Neil Booth
9ca68a5084
Update the ARCHITECTURE document
...
Also has a pretty line diagram
2017-01-03 17:05:39 +09:00
Neil Booth
beb546219a
Move ENV-NOTES to ENVIRONMENT.rst
...
Improve environment documentation
2017-01-03 14:18:59 +09:00
Neil Booth
b29ce0604d
Explain what logging a session means
2017-01-03 09:18:30 +09:00
Neil Booth
5bf59a1cc7
Add documentation of the RPC interface
2017-01-02 19:29:19 +09:00
Neil Booth
e2f4847632
New env var MAX_SESSIONS
...
When the number of sessions reaches MAX_SESSIONS, which defaults
to 1,000, turn off TCP and SSL listening sockets to prevent new
connections. When the session count falls below a low watermark,
currently 90% of MAX_SESSIONS, the listening sockets will be re-opened.
Helps prevent DoS and limit open file usage.
Bug fix: do not start serving paused connections until the buffer
socket is sufficiently drained. Also, loop.
2016-12-13 22:47:03 +09:00
Neil Booth
6fcb8b0574
Fix cut-n-pasteo
2016-12-10 09:07:08 +09:00
Neil Booth
99d7e65de8
Give sockets a grace period to close
...
Defaults to 15 seconds for now.
Update docs on systemd and process limits.
Fixes #62
2016-12-10 08:52:24 +09:00
Neil Booth
643c990684
Revert "Add feature to rate limit connections"
...
This reverts commit a82ab0b075 .
2016-12-05 23:27:36 +09:00
Neil Booth
a82ab0b075
Add feature to rate limit connections
2016-12-04 21:14:45 +09:00
Neil Booth
26de3f0261
Prepare 0.8.1
2016-12-03 20:24:53 +09:00
Neil Booth
3d2824218b
Close stale sessions
...
New envvar SESSION_TIMEOUT
A session with no activity is cut off after this time
Fixes #56
2016-12-03 13:06:20 +09:00
Shane Moore
0edff0056d
Add Tor-specific port options for IRC
2016-12-01 03:21:52 -08:00
Shane Moore
95c848a720
Add IRC option to publish Tor address
2016-11-30 23:50:20 -08:00
Neil Booth
cc6d183ec4
Prepare 0.7.14
2016-11-29 22:22:07 +09:00
Neil Booth
c08ade5861
Add session logging facility
...
Move session logging code to protocol.py from electrum_rpc.py
Use it for periodic logging controlled by envvar LOG_SESSIONS
For each session, track sent transaction stats and show that
per-session instead of errors
2016-11-29 08:00:54 +09:00
Neil Booth
9eb701f220
Replace $VERSION in the banner file
...
with the ElectrumX version string
2016-11-26 18:19:53 +09:00
Neil Booth
4e26e0fe96
Bump default value of MAX_SEND to 1m bytes.
...
Otherwise historic large txs could not be served to clients.
2016-11-26 15:22:42 +09:00
Neil Booth
9157618089
Tweak ENV-NOTES
2016-11-26 10:13:19 +09:00
Neil Booth
9544170c55
Prepare release-0.7.10
2016-11-26 09:53:47 +09:00
Neil Booth
292073f2c7
Log large requests and reject them
2016-11-26 09:32:29 +09:00
Neil Booth
9f2bd981f0
Prepare 0.7.9
2016-11-25 21:23:14 +09:00
Neil Booth
2dbb9f44f6
Prepare release 0.7.8
2016-11-25 08:10:53 +09:00
Neil Booth
86b0f7fa72
Prepare 0.7.7
2016-11-24 23:42:49 +09:00
Neil Booth
de4930b96d
Introduce MAX_HIST environment variable.
2016-11-24 23:30:40 +09:00
Neil Booth
70ee7eebd8
Prepare 0.7.6
2016-11-23 22:52:23 +09:00
Neil Booth
86086cac63
Prepare 0.7.5
2016-11-23 17:59:18 +09:00
Neil Booth
f20859a8a6
Prepare 0.7.4
2016-11-23 09:55:54 +09:00
Neil Booth
640360c809
Add feature to simulate reorgs for debugging
2016-11-23 09:52:30 +09:00
Neil Booth
39021792ca
Prepare 0.7.3
2016-11-22 08:11:05 +09:00
Neil Booth
10e0ff2e01
Update REL-NOTES
2016-11-22 07:06:00 +09:00