Commit Graph

986 Commits (3a1eafb203d054a34b8929227e7563ae34aff108)

Author SHA1 Message Date
Zlatin Balevsky dce659d463
variable name 2020-10-24 12:47:55 +01:00
Zlatin Balevsky f5f84899ec
change state on observation even if there is not enough history yet. Initialize MC with last state from DB 2020-10-24 12:38:18 +01:00
Zlatin Balevsky e1b2582ca6
do not prepend an S to the history 2020-10-24 12:29:50 +01:00
Zlatin Balevsky 58a8364901
do not transition when only predicting 2020-10-24 12:18:20 +01:00
Zlatin Balevsky 340ff339b3
reinit MC with last observed state 2020-10-24 11:32:14 +01:00
Zlatin Balevsky 8a4a2a75c4
up min profile history to 5 2020-10-24 10:18:26 +01:00
Zlatin Balevsky 43a503514b
introduce minimum history size for Markov computation 2020-10-23 20:29:30 +01:00
Zlatin Balevsky 7c0443abff
change initial probabilities to reduce the number of connects to consecutively failing nodes 2020-10-23 20:20:05 +01:00
Zlatin Balevsky 33f38144eb
record the number of connections in the db every minute. Gitlab issue #49 2020-10-23 07:32:54 +01:00
Zlatin Balevsky 44eaa3986b
fix verification 2020-10-22 21:08:34 +01:00
Zlatin Balevsky b01d8708f2
Release 0.8.1 2020-10-22 16:38:31 +01:00
Zlatin Balevsky 98bed8bfc8
force US locale to make sure BigDecimal parses 2020-10-22 16:24:42 +01:00
Zlatin Balevsky 7c653e83e0
Release 0.8.0 2020-10-22 12:02:26 +01:00
Zlatin Balevsky 3dfc0be63b
guard against NaN going in the DB 2020-10-22 11:52:48 +01:00
Zlatin Balevsky 0e658d39a4
use a nested sql statement for tstamp deletion 2020-10-22 10:40:39 +01:00
Zlatin Balevsky a795fec72c
fix deleting of old items 2020-10-22 10:20:31 +01:00
Zlatin Balevsky 19b7e8bc53
fix variable name, limit deletions 2020-10-22 09:56:55 +01:00
Zlatin Balevsky 4e6c90b98c
try to fix purging of old entries within the same day 2020-10-22 09:34:53 +01:00
Zlatin Balevsky aa3cf2cf84
fix plugin build 2020-10-22 09:33:18 +01:00
Zlatin Balevsky d0c505ee94
merge from h2-hostcache branch 2020-10-22 08:57:27 +01:00
Zlatin Balevsky 7d8c43c9d3
more logging 2020-10-22 08:49:38 +01:00
Zlatin Balevsky 6107d1e298
continuously update the Markov chain, purge old records 2020-10-22 07:20:16 +01:00
Zlatin Balevsky b2a98f6ce8
more logging 2020-10-21 14:41:18 +01:00
Zlatin Balevsky 917c231d51
flush gzipped streams in finally and try-catch 2020-10-21 14:32:59 +01:00
Zlatin Balevsky 688beae1d6
wrap closing of compressed streams in try-catch 2020-10-21 14:10:59 +01:00
Zlatin Balevsky cafe8858b9
more logging 2020-10-21 14:10:17 +01:00
Zlatin Balevsky c922a61838
fix table name 2020-10-21 12:43:48 +01:00
Zlatin Balevsky 0552000d59
logging changes 2020-10-21 11:59:02 +01:00
Zlatin Balevsky aeb392eba9
avoid npe for first time failed incoming attempts 2020-10-21 11:18:02 +01:00
Zlatin Balevsky dce69bbbbe
recalc MCs on first history item, gitlab issue #46 2020-10-21 11:06:42 +01:00
Zlatin Balevsky efae38a400
make sure hosts with successful attempts can be advertised 2020-10-21 06:10:14 +01:00
Zlatin Balevsky 38bf4f2ea2
start with optimistic profile if received from hostcache or a new successful connection has been made 2020-10-21 05:46:32 +01:00
Zlatin Balevsky 768673e979
purging of hopeless hosts 2020-10-21 05:21:32 +01:00
Zlatin Balevsky 07a87e6257
fix predicate 2020-10-21 04:06:00 +01:00
Zlatin Balevsky 2574f27fe8
Add determination of hopelessness, advertisability to hosts. Fix MuWire status panel 2020-10-21 03:57:45 +01:00
Zlatin Balevsky 6806542808
proper calculation of probabilities 2020-10-20 20:12:54 +01:00
Zlatin Balevsky 68f00042c6
fix toString 2020-10-20 20:12:37 +01:00
Zlatin Balevsky ae45570005
delete history of attempts when threshold reached, log profile probabilities 2020-10-20 19:46:32 +01:00
Zlatin Balevsky cc8e6e312b
update DB2CSV tool to export profiles 2020-10-20 19:15:57 +01:00
Zlatin Balevsky 5e1a796663
fix up sql 2020-10-20 19:02:49 +01:00
Zlatin Balevsky a4e2d28072
fix table and column names 2020-10-20 18:39:04 +01:00
Zlatin Balevsky b1f58b0948
add optimistic profiles to newly discovered hosts 2020-10-20 18:15:10 +01:00
Zlatin Balevsky a725837769
use the Markov chain in the hostcache 2020-10-20 18:11:04 +01:00
Zlatin Balevsky dd967cc0f0
wip on Markov chain 2020-10-20 16:46:30 +01:00
Zlatin Balevsky e5adcd181f
update test 2020-10-20 16:45:39 +01:00
Zlatin Balevsky 8798e83ab7
wip on Markov chain 2020-10-20 16:19:36 +01:00
Zlatin Balevsky 315f29c668
invert probability 2020-10-20 15:15:39 +01:00
Zlatin Balevsky 3b10640904
first pass at a Markov chain 2020-10-20 15:14:17 +01:00
Zlatin Balevsky 9389fbbc12
increase batch size 2020-10-20 10:05:37 +01:00
Zlatin Balevsky 0873d472e8
pass browse UUID from UI for correct dispatching. Allow multiple concurrent browses 2020-10-20 06:02:22 +01:00
Zlatin Balevsky ffc7f1748a
fix conversion logic 2020-10-19 17:43:05 +01:00
Zlatin Balevsky 798125e645
csv conversion tool 2020-10-19 17:14:56 +01:00
Zlatin Balevsky 52fb67b35c
use Timestamp intead of java.sql.Date 2020-10-19 17:14:37 +01:00
Zlatin Balevsky a7d25a1b75
verify hosts every hour, record results in db 2020-10-19 16:49:19 +01:00
Zlatin Balevsky 1ed74768fb
fix assignment 2020-10-18 19:48:45 +01:00
Zlatin Balevsky 7dd47c6fcb
better filtering of candidate hosts 2020-10-18 19:13:04 +01:00
Zlatin Balevsky 749bfaa532
more plumbing 2020-10-18 18:54:33 +01:00
Zlatin Balevsky 84f6091935
more of the plumbing for using DB/ML 2020-10-18 18:05:28 +01:00
Zlatin Balevsky 4a261ed724
split HostCache into base class and SimpleHostCache. Skeleton of H2HostCache. 2020-10-18 16:38:30 +01:00
Zlatin Balevsky 16c755e6c6
Release 0.7.7 2020-10-16 08:06:09 +01:00
Zlatin Balevsky 5bddfc10e9
assume all persisted sources were successful 2020-10-12 14:54:55 +01:00
Zlatin Balevsky 9fc2a0c4c5
show total up & down speeds 2020-10-11 17:42:47 +01:00
Zlatin Balevsky fca3478698
make excludePeerCaps configurable by the user, exclude KLMNO by default 2020-10-11 15:49:16 +01:00
Zlatin Balevsky e5815bed88
reuse header parsing code 2020-10-11 15:34:16 +01:00
Zlatin Balevsky 8f923ec06e
do not steal pieces from already queued requests 2020-10-11 15:32:56 +01:00
Zlatin Balevsky d4eb8631d0
check for updates later 2020-10-11 14:12:47 +01:00
Zlatin Balevsky 9e3a9e2737
Send browse results to UI in batches. Github issue #49 2020-10-10 16:18:50 +01:00
Zlatin Balevsky 45c2bec0ad
Release 0.7.6 2020-10-09 18:31:09 +01:00
Zlatin Balevsky ef34291124
use the new bandwidth tracker for downloads as well 2020-10-07 08:17:12 +01:00
Zlatin Balevsky 7cbf466b9b
move bandwidth smoothing logic in its own class, use it in uploader 2020-10-07 07:51:45 +01:00
Zlatin Balevsky 3e188f5d4a
Implement variable length request queue, size based on piece size 2020-10-06 22:49:46 +01:00
Zlatin Balevsky fdf3a46ad4
rework the upload speed smoothing to persist across requests 2020-10-06 20:28:00 +01:00
Zlatin Balevsky 56e02c4981
do not update speed reading if the sampling is too frequent 2020-10-06 20:25:56 +01:00
Zlatin Balevsky cac3ff0bcf
flush only the first GET request, let the passive flusher do the subsequent ones 2020-10-06 18:51:26 +01:00
Zlatin Balevsky ef71a42dd4
rewrite the smoothing of download speed 2020-10-06 17:47:26 +01:00
Zlatin Balevsky 0046694173
ignore InterruptedExceptions in chat links 2020-10-06 15:14:05 +01:00
Zlatin Balevsky e1ebb2208c
fix race condition that would cause new connections to stop being established 2020-10-06 12:38:31 +01:00
Zlatin Balevsky 034e706d17
Release 0.7.5 2020-10-05 07:03:18 +01:00
Zlatin Balevsky a8c91d4a3c
update unit test 2020-10-05 00:19:40 +01:00
Zlatin Balevsky 4b8e1705d8
pipeline download requests 2020-10-04 23:45:59 +01:00
Zlatin Balevsky 8dfb5cbd84
double ping interval 2020-10-04 13:05:00 +01:00
Zlatin Balevsky 72985bacb6
add ability to disable updates completely, intended for 3rd party packaging 2020-09-26 17:53:29 +01:00
Zlatin Balevsky 3387d22a6c
remove HOPELESS downloads from the download list via an event 2020-09-26 17:10:24 +01:00
Zlatin Balevsky 10bd566d58
Release 0.7.4 2020-09-25 16:51:40 +01:00
Zlatin Balevsky 964e315367
add a hopeless state for a download where all sources are hopeless 2020-09-23 14:17:40 +01:00
Zlatin Balevsky 140231e362
Give up on download sources after a number of attempts 2020-09-23 14:00:52 +01:00
Zlatin Balevsky c73a821c67
put verified sources in the responder cache as well 2020-09-23 11:30:20 +01:00
Zlatin Balevsky 0ebe00b526
reduce hopeless interval to 1hr and purge interval to 24hrs 2020-09-22 16:08:17 +01:00
Zlatin Balevsky b2a3bfce54
make sure we have the Persona of the altloc 2020-09-22 16:07:18 +01:00
Zlatin Balevsky c490a511bd
distinguish between discovered sources and verified sources. Only propagate and persist verified sources 2020-09-22 13:34:49 +01:00
Zlatin Balevsky cbaa3470d2
make responder cache size configurable 2020-09-22 12:17:27 +01:00
Zlatin Balevsky 84d61fccd5
cache recent responders and always forward queries to them. Thanks to qtm for the idea 2020-09-21 15:28:15 +01:00
Zlatin Balevsky a88db8f50f
FixedSizeFIFOSet 2020-09-21 15:13:44 +01:00
Zlatin Balevsky 5a38154e15
make sure the pongs uuid matches the last sent ping uuid 2020-09-20 18:42:26 +01:00
Zlatin Balevsky e5891de136
send and read up to 2 hosts per pong 2020-09-20 18:26:29 +01:00
Zlatin Balevsky 1e729bae1c
implement forgetting of hopeless hosts after some time 2020-09-20 17:49:07 +01:00
Zlatin Balevsky 3e6e0c7e9f
cache calls to System.currenTimeMillis() 2020-09-20 17:34:28 +01:00
Zlatin Balevsky 44af23c162
restrict forwarding of queries to sqrt of neighboring connections. Thanks to 'qtm' for the idea 2020-09-19 17:28:19 +01:00
Zlatin Balevsky a262c99efe
reduce limit on peer connections 2020-09-19 17:16:36 +01:00
Zlatin Balevsky 9eff723dd3
Release 0.7.3 2020-09-18 18:44:15 +01:00