Commit graph

47 commits

Author SHA1 Message Date
Jack Robison
aa4240de85
track successful reflector uploads in sqlite to minimize how many streams are attempted by auto re-reflect
-increase the default `auto_re_reflect_interval` to a day
2018-05-08 14:41:56 -04:00
Jack Robison
9a9b2f47ce
pass sd_hash to reflector client factory instead of looking it up 2018-03-29 09:46:34 -04:00
Jack Robison
3085e28490
don't try to resend failed blobs to reflector
-fixes infinite loop where client keeps trying to send failing blobs, which may be failing because they are invalid

-return list of reflected blob hashes from BlobReflectorClient
2018-03-22 16:53:16 -04:00
Jack Robison
679c2f403f
fix incorrectly raised DownloadCanceledError for already verified blobs
-make InvalidDataError message clearer
-fix BlobReflectorClient result
2018-03-22 13:23:12 -04:00
Jack Robison
b28bdbd752
rename existing reupload.reflect_stream --> reupload.reflect_file, add a reupload.reflect_stream function 2018-03-19 13:55:11 -04:00
Jack Robison
9a8cac20e7
update reflector client and server to use SQLiteStorage 2018-02-13 10:27:51 -05:00
Alex Grintsvayg
ebed4f010b fixes #1029 - stupid error messages 2017-12-13 13:56:44 -05:00
Jack Robison
329d74f6be
don't include file names when logging stream related info 2017-12-06 15:09:35 -05:00
Kay Kurokawa
70709b4ca4
remove use of name from reflector client, use file name instead 2017-11-28 11:53:15 -05:00
Kay Kurokawa
0a919c3eab fix inconsistency in how blob_hashes_to_send is used, preventing proper reflecting 2017-10-03 11:22:07 -04:00
Kay Kurokawa
6268e43509 make sure to close blob files when connection is lost on reflector client 2017-10-02 16:30:58 -04:00
Kay Kurokawa
a4ea49cf65 read handle was not being closed after file transfer 2017-09-27 17:30:20 -04:00
Kay Kurokawa
aab43c8d6c close the reader directly instead of calling close_read_handle() 2017-09-27 17:30:20 -04:00
Jack Robison
6cbe86d057
rename is_validated() to get_is_verified() to distinguish from verified property 2017-09-20 14:02:34 -04:00
Jack Robison
b98cd24e10
don't reflect empty last blob 2017-09-20 13:59:20 -04:00
Jack Robison
9744287370 change attribute "uri" to "name" 2017-03-07 18:29:44 -05:00
jobevers
9e2cda0cdc remove more upload_allowed arguments 2017-02-15 06:48:58 -06:00
Job Evers-Meltzer
2a45c91175 fix get_blob calls with upload_allowed arguments 2017-02-15 06:48:58 -06:00
Jack Robison
7720724ec0 reflect lbry_files in looping call in EncryptedFileManager
-remove ManagedEncryptedFileDownloader._reupload

-clean up reflector functions in Daemon, move to reflector.reupload

-check ConnectionLost in reflector client

-close sd blob file handle when it wont be sent (otherwise read handle stays open)

-log reflector sd info

-give reflector client factory a lbry file
2017-02-13 15:13:37 -05:00
Alex Grintsvayg
c7106dfc97 reduce loudness of reflector message 2017-02-13 12:12:32 -05:00
Jack Robison
777419b4a9 log traceback on failed blob upload
-move status message on connectionDone to client, indicate if blobs
were sent or not (and how many blobs reflector still needs, if any)

-only try uploading failed blob once after first failure, to prevent
indefinite retries
2017-02-08 16:18:34 -05:00
Jack Robison
f2ddc9bd98 fix recursion depth bug upon failed blob 2017-02-08 14:28:30 -05:00
Jack Robison
d053db8dfd add uri to stream reflector for better logging 2017-02-08 14:28:16 -05:00
Jack Robison
a58a81a841 stopProducing in reflector client file_sender when uploading is done
this fixes exceptions.ValueError: I/O operation on closed file in
twisted.protocols.basic.ResumeProducing
2017-02-08 14:09:03 -05:00
Jack Robison
6fae07d29e reflector v2
-add {‘sd_blob_hash’: …, ‘sd_blob_size ‘: …} query type with
{‘send_sd_blob’: True/False, ‘needed_blobs’: []} response

this allows the reflector client to know how much of a stream reflector
already has covered, as to minimize the number of subsequent requests
and prevent streams from being partially reflected

-remove empty {} request
2017-02-06 15:55:46 -05:00
Jack Robison
74a872d763 fix pylint errors 2017-01-25 13:10:38 -05:00
Jack Robison
5fa2dfeca7 try reflecting all the blobs in a stream
previously only the sd blob was reflected, if the server indicated it
needed the blob then the rest of the stream would follow. this allowed
for many streams to be partially reflected, where for whatever reason
the connection was broken before the full upload was completed. this
meant that on a subsequent run, the client would falsely believe
reflector had the whole stream when it actually only had some portion
of it.

this solution isn’t ideal, I’m most of the way done with a better one,
but this can be deployed now.
2017-01-25 13:03:48 -05:00
Job Evers-Meltzer
fa8190356a replace log_support.failure calls 2016-12-15 18:58:15 -06:00
Job Evers-Meltzer
b64fa51567 fixup long lines 2016-12-07 09:38:34 -05:00
Job Evers-Meltzer
0941618048 move reflector blob client to its own module 2016-11-14 19:33:36 -06:00
Job Evers-Meltzer
85dee27c92 whitespace 2016-11-14 19:33:36 -06:00
Jack
9de7354ea0 drop connection on failed read blob 2016-11-01 16:32:34 -04:00
Jack
4cffc32328 catch availability check error 2016-11-01 13:05:19 -04:00
Jack
369cd516c0 move availability check and fix from ManagedEncryptedFileDownloader to ReflectorAvailabilityHelper 2016-10-26 16:17:01 -04:00
Jack
3dd99fdc92 upload unavailable streams to reflector on startup 2016-10-20 15:40:35 -04:00
Job Evers-Meltzer
7dbeb1f2cf Remove LBRY prefix from class and module names
This is the result of running:
    grep -RlI LBRY . | xargs sed -i 's/LBRY\([A-Z]\)/\1/g'
2016-09-27 11:18:35 -07:00
Job Evers-Meltzer
550fd185a3 rename LBRYFile to EncryptedFile 2016-09-27 11:18:16 -07:00
Jack
be3633622c whoops 2016-08-26 20:13:10 -04:00
Jack
b235f6fc6b send all blobs to reflector 2016-08-26 19:58:53 -04:00
Job Evers-Meltzer
0a07c8f131 log on closed/lost connection 2016-08-10 19:39:28 -05:00
Job Evers-Meltzer
35481a92f5 actually cleanup patched time.time 2016-08-10 19:36:52 -05:00
Job Evers-Meltzer
1a42e43573 log all the things 2016-08-10 19:06:26 -05:00
Jack
132aa569fe move run_reflector_server into settings file and add debug lines 2016-08-10 16:51:46 -04:00
Jimmy Kiselak
7e2ad58edd get reflector client and server working; add func test to prove it 2016-08-09 00:59:50 -04:00
Jimmy Kiselak
b7e2e87ac1 fill in much of the skeleton for the reflector protocol 2016-08-07 22:33:40 -04:00
Jimmy Kiselak
1dea20a358 include sd blob hashes in list of blob hashes to send via reflector 2016-08-03 23:11:29 -04:00
Jimmy Kiselak
191f661b35 skeleton for reflector protocol 2016-08-03 23:03:14 -04:00