Commit Graph

2490 Commits

Author SHA1 Message Date
Dmitri Bogomolov 0c4d4de82f
Changed the daemon check approach in other places, where it makes sense 2018-01-17 13:58:37 +02:00
Dmitri Bogomolov 1b921a718c
Check daemon status in singleinstance instead of config 2018-01-17 13:58:37 +02:00
Peter Šurda c9851b9f41
Connection lookups invalid data handling
- shouldn't throw an exception if argument is a string rather than Peer
2018-01-02 22:23:03 +01:00
Peter Šurda f74f82e54f
Start downloading earlier 2018-01-02 22:20:33 +01:00
Peter Šurda 4086253730
Bandwidth limit optimisation
- should be slightly more accurate and use slightly fewer resources
2018-01-02 15:24:47 +01:00
Peter Šurda 8788f2d349
Server full and duplicate handling
- will try to report "Server full" over protocol for 10 extra
connections over limit, instead of simply dropping them
- if connected to the same host inbound and outbound, handle as server
full (prevents duplicate connections)
2018-01-02 14:29:21 +01:00
Peter Šurda 9b58f35b80
App name in version 2018-01-02 13:56:03 +01:00
Peter Šurda bb5f1d6f98
Setup.py typo
- surprisingly, it only was broken on some systems, e.g. Debian 8
2018-01-02 10:29:21 +01:00
Peter Šurda 6b54a4ab0e
Daemonize fix
- forgot to revert a line in previous commit
2018-01-01 13:10:19 +01:00
Peter Šurda d9a4263083
Daemonising fixes
- change forking exit order as systemd expects (wait until child is
ready, then exit parent, then grandparent)
- fix signal handler if prctl not installed
- revert recent PID file changes
2018-01-01 13:08:12 +01:00
Peter Šurda baba0ae206
Remove obsolete code 2018-01-01 13:04:58 +01:00
Peter Šurda 36cc5b9cf5
Download optimisations
- don't make empty download requests
- use smaller chunks when they can be spread across multiple
connections
2018-01-01 12:51:35 +01:00
Peter Šurda 1864762a0a
Apply bandwidth limits without restart
- also minor style fixes
2018-01-01 12:49:08 +01:00
Peter Šurda bcc5a210a4
Fix PID file if not daemonized 2017-12-29 09:13:41 +01:00
Peter Šurda e9b1aa48a9
Protocol error handler fixes
- was broken if there was no error message in "raise"
- added default texts for network exceptions
2017-12-29 08:49:08 +01:00
Peter Šurda 02490e3286
Don't break if over 50k messages
- typo if there were over 50k messages in inventory caused PyBM to stall
2017-12-29 08:41:15 +01:00
Peter Šurda 3cb9547389
Only write PID after last fork
- should fix systemd integration
2017-12-21 14:26:51 +01:00
Peter Šurda 6fb5a751c6
Add collectd monitoring script 2017-12-20 09:41:36 +01:00
Peter Šurda 395812c0f8
Systemd config file
- tested on Debian 9, you may have to adjust paths/uids if your
deployment differs
2017-12-20 09:20:24 +01:00
sandakersmann dd780f8d80
This type of data is called metadata 2017-12-07 00:27:59 +01:00
Peter Šurda 5605672f75
Fix tag search when inventory contains blobs
- recent changes caused the "tag" (and "payload") columns in the
inventory table in messages.dat to be stored as blobs. Searches by tag
(e.g. pubkey lookups) stopped working. This fixes it.
2017-12-02 02:48:10 +01:00
Peter Šurda a3398d6a17
Don't crash download thread if no connections 2017-12-02 00:50:58 +01:00
Peter Šurda 41ead2bfb5
Distribute downloads more evenly
- also increases expireation of missing objects from 10 minutes to an
hour
2017-12-02 00:48:08 +01:00
Peter Šurda 3b86dfc639
Log missing indicator plugin 2017-12-02 00:45:01 +01:00
Peter Šurda 4ee9d05446
Randomise key order during decryption
- may help against timing/radio attacks
2017-11-30 20:08:14 +01:00
Peter Šurda 6c224447a6
Minor fixes that came over BM
- typo in quit confirmation dialog
- nicer traceback in unhandled exceptions
2017-11-30 19:44:03 +01:00
Peter Šurda 48c0a2ae2e
Arithmetic fix for preceding commit 2017-11-30 19:42:49 +01:00
Peter Šurda 6ce3ce6b22
Chunking helper for sql statements with too many variables
- preparation for #1081
2017-11-30 19:39:31 +01:00
PyBitmessage Translations 52162046bd
Auto-updated language ru from transifex 2017-11-29 10:38:58 +01:00
Peter Šurda 44dd08a228
Remove obsolete code in cleaner thread 2017-11-22 21:13:35 +01:00
Peter Šurda 6ca3460090
Put garbage collection into the cleaner thread
- this maybe addresses #1079
2017-11-22 14:49:18 +01:00
Peter Šurda e558b1fb72
Error handling
- proxy connections didn't init fullyEstablished
2017-11-19 13:48:43 +01:00
Peter Šurda fdfbb77ed2
Close filehandles on connection reaping
- I thought this is done automatically through garbage collection, but I
think as the channel is still assigned in the asyncore map, it needs
to be done manually. Basically filehandle limit exceeded and it
crashed
2017-11-19 00:05:55 +01:00
Peter Šurda 5e042b76e7
Typo
- missing brackets
2017-11-18 10:05:41 +01:00
Peter Šurda 3aa6f386db
Dandelion fixes
- dandelion would always think there is a cycle and trigger fluff
- cycle fluff trigger didn't correctly re-download and re-announce the
object. Now it remembers between (d)inv and object commands that it's
in a fluff trigger phase.
2017-11-18 09:47:17 +01:00
Peter Šurda 4690dd6f00
Copy object contents from buffers on instantiation
- this may fix some memory issues
2017-11-17 23:53:46 +01:00
Peter Šurda 3c3d69e5de
Reap closed connection fix 2017-11-17 19:50:39 +01:00
Peter Šurda 1e02d2b48a
Download optimisation
- pending download tracking now per-connection instead of globally
2017-11-17 19:49:51 +01:00
Peter Šurda 5a787f41d2
Socket closing changes
- explicit close only through asyncore error handler
- implicit close through garbage collector
- avoid duplicate closing
2017-11-17 13:37:51 +01:00
Peter Šurda 2da1115d17
Typo
Typo in 89567cecfa
2017-11-14 23:46:07 +01:00
Peter Šurda 1792289e00
close handling fix
- don't close a connection twice
2017-11-14 23:43:05 +01:00
Peter Šurda d2f79d3172
sqlite storage fix
- typo on cleaning
2017-11-14 23:20:15 +01:00
Peter Šurda 89567cecfa
Notifier plugin fix
- NotifyOSD doesn't like too many notification objects in a queue, so
just create one on init and update its contents if there is a new
notification
2017-11-14 23:19:16 +01:00
PyBitmessage Translations d6e94cf77f
Auto-updated language zh_cn from transifex 2017-11-02 12:42:50 +01:00
PyBitmessage Translations 8b7b91b23d
Auto-updated language de from transifex 2017-10-31 09:40:18 +01:00
Dmitri Bogomolov e17d33cd75
Respect user selected sort order on "Network Status" tab 2017-10-24 14:02:15 +03:00
Peter Šurda 4b40d4bce1
Download thread error handling 2017-10-22 15:28:30 +02:00
Peter Šurda 75a6f605c1
Download optimisation
- more accurate tracking
- randomise download order
- longer cycle
2017-10-22 11:32:37 +02:00
Peter Šurda 8b06fdf648
checkdeps OS version handler fix
- it didn't work if OS version didn't contain a quote
2017-10-21 21:55:12 +02:00
Peter Šurda b025624f2a
missingObjects fix
- didn't notice valid objects arriving (only invalid)
2017-10-20 23:21:25 +02:00