Commit Graph

352 Commits

Author SHA1 Message Date
Neil Booth
f600d3bd87 Fix a couple of issues with 0.9.0
Fixes #69
2016-12-12 07:24:00 +09:00
Neil Booth
d36925d459 Prepare 0.9.0a 2016-12-12 00:44:04 +09:00
Neil Booth
f1ea36126c Fix typo 2016-12-12 00:42:57 +09:00
Neil Booth
72ae3eabfc Prepare 0.9.0 2016-12-12 00:11:48 +09:00
Neil Booth
1ef6a4d785 Split mempool out into new file.
Rework mempool handling
2016-12-12 00:05:42 +09:00
Neil Booth
ed3db731c2 Prepare 0.8.12 2016-12-10 18:06:14 +09:00
Neil Booth
263e88ad57 Tweak request handling
Pause serving sessions whose socket buffer is full (anti-DoS)
Serve requests in batches of 8
Don't store the session in the request
RPC has priority 0; every other session at least 1
Periodically consolidate small session groups into 1
2016-12-10 18:06:13 +09:00
Neil Booth
b3b3f047c2 Better columns 2016-12-10 18:06:13 +09:00
Neil Booth
cfb92a139f Prefer transport.abort() 2016-12-10 13:52:05 +09:00
Neil Booth
89d83349e1 Prepare 0.8.11 2016-12-10 11:08:44 +09:00
Neil Booth
d1e314a48b Show group session count in the groups RPC call 2016-12-10 11:05:57 +09:00
Neil Booth
c181f8df82 Put a try/except around socket.shutdown 2016-12-10 10:43:01 +09:00
Neil Booth
97d1397f2c Prepare 0.8.10 2016-12-10 09:08:28 +09:00
Neil Booth
6fcb8b0574 Fix cut-n-pasteo 2016-12-10 09:07:08 +09:00
Neil Booth
c9035795c7 Prepare 0.8.9 2016-12-10 08:56:05 +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
b8239c54d9 Catch UnicodeError in IRC gethostbyname
Fixes #68
2016-12-10 08:52:24 +09:00
Neil Booth
c523064632 Improve RPC groups call
Show columns correctly for RPC sessions call
2016-12-10 08:52:23 +09:00
Neil Booth
e5bda647df Update version 2016-12-09 22:41:26 +09:00
Neil Booth
9bdad7ad66 Fix column ordering. 2016-12-09 22:40:36 +09:00
Neil Booth
5f73fa02a3 Prepare 0.8.8 2016-12-09 22:10:59 +09:00
Neil Booth
2a461bd98c Serve sessions in a priority queue.
Add new RPC command requests.
Adjust sessions RPC command to show pending requests.
Only keep first 15 chars in version string.
Set socket timeout
Try more forceful closing of socket
Fixes #67
2016-12-09 22:06:04 +09:00
Neil Booth
1a9e8cdcd4 More work 2016-12-09 08:06:03 +09:00
Neil Booth
21d1825f09 Prepare 0.8.7 2016-12-09 07:41:24 +09:00
Neil Booth
7399452294 Temporary hack to fix initial sync slowdown 2016-12-08 22:47:29 +09:00
Neil Booth
cbb1e504cc Cache headers. 2016-12-08 06:31:15 +09:00
Neil Booth
e40db63beb Queue requests, which have a process method. 2016-12-08 00:29:46 +09:00
Neil Booth
2d411ab20a Prepare 0.8.6 2016-12-07 19:46:45 +09:00
Neil Booth
4e512343be Fix other JSON bugs introduced in 0.8.5
Further clean up the JSON code.
2016-12-07 19:44:36 +09:00
Neil Booth
b9f28ba9dc Prepare 0.8.5 2016-12-07 08:16:23 +09:00
Neil Booth
b2e4d32de6 Remove special-casing of all_seeing_eye 2016-12-07 08:11:30 +09:00
Neil Booth
f904ce2f5d Rework the JSON layer
Batch requests are now processed and encoded incrementally.
Their bandwidth usage is also incrementally added, and so overlarge
responses are rejected as soon as they become too large.
JSON text is also more memory efficient than the python data
structures they represent.
2016-12-07 08:11:30 +09:00
Neil Booth
b116040365 Clean up param verification code 2016-12-07 08:11:29 +09:00
Neil Booth
36a06ea2c2 Prepare 0.8.4 2016-12-06 06:40:19 +09:00
Neil Booth
1f1f0f42f8 Remove invalidated history cache on notifications 2016-12-06 06:36:11 +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
be8adbbcd5 Fix some typos. 2016-12-04 23:41:07 +09:00
Neil Booth
a82ab0b075 Add feature to rate limit connections 2016-12-04 21:14:45 +09:00
Neil Booth
3f88bc1ab9 Prepare 0.8.3 2016-12-04 12:04:38 +09:00
Neil Booth
79a9e91994 Handle closing sessions a little differently
Move connection type to first flag letter.

All seeing eye is not stale.
2016-12-04 11:57:25 +09:00
Neil Booth
fcf696d3f3 Don't require 2 params for version requests 2016-12-04 10:54:22 +09:00
Neil Booth
9456b75a91 Prepare 0.8.2 2016-12-03 23:39:46 +09:00
Neil Booth
238b9e0285 Process blocks in the executor
This should eliminate latency when new blocks come in
and prevent sessions being dropped whilst they are processed.
2016-12-03 23:32:20 +09:00
Neil Booth
26de3f0261 Prepare 0.8.1 2016-12-03 20:24:53 +09:00
Neil Booth
656f749c70 Add LRU cache for history 2016-12-03 20:20:28 +09:00
Neil Booth
556574640f IRC encoding fix 2016-12-03 20:19:58 +09:00
Neil Booth
04369dd228 Forcefully drop stale sessions or if shutting down
Don't wait for the socket
2016-12-03 18:33:23 +09:00
Neil Booth
aaf0592f52 Fix typo 2016-12-03 15:10:57 +09:00
Neil Booth
33b1ce8f6d Prepare 0.8.0 2016-12-03 14:39:36 +09:00
Neil Booth
c4e7878407 Add session ID for each session
Show it in the logs with each session-specific message.
Show the sessions ID in the sessions list with an L suffix if logging.
Add RPC commands to toggle logging of, and disconnect, a session.
Closes #55
2016-12-03 14:32:09 +09:00