1
0
Fork 0
mirror of https://github.com/ton-blockchain/ton synced 2025-03-09 15:40:10 +00:00

Recent updates in storage (#667)

* Fix error handling in Torrent.cpp, improve choosing peers for upload

* Various improvements in storage daemon

"get-pieces-info"
Store "added at"
Improve calculating up/down speed
Improve TL protocol for future compatibility
Remove empty directories on "--remove-files"
Better windows support
Debug logs in PeerActor
More restrictions on TorrentInfo
Bugfixes

* Global speed limits for download and upload

+bugfix

* Reset download/upload speed on changing settings or completion

* Exclude some system files in TorrentCreator
This commit is contained in:
SpyCheese 2023-04-07 12:50:07 +00:00 committed by GitHub
parent e3af63e6c0
commit bb21f732fd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
21 changed files with 974 additions and 213 deletions

View file

@ -59,6 +59,10 @@ class PeerActor : public td::actor::Actor {
// startSession
td::uint64 node_session_id_;
td::Bitset peer_have_pieces_;
std::shared_ptr<TorrentInfo> torrent_info_;
std::vector<tl_object_ptr<ton_api::storage_Update>> pending_update_peer_parts_;
void process_update_peer_parts(const tl_object_ptr<ton_api::storage_Update> &update);
// update
td::optional<td::uint64> peer_session_id_;
@ -112,6 +116,7 @@ class PeerActor : public td::actor::Actor {
td::BufferSlice create_update_query(ton::tl_object_ptr<ton::ton_api::storage_Update> update);
void loop_node_get_piece();
void node_get_piece_query_ready(PartId part, td::Result<td::Unit> R);
void loop_peer_get_piece();