You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On startup, GigaChannel Manager checks for the existence of personal channel download. If it does not exist, it will restart it. Unfortunately, Libtorrent Wrapper starts downloads asynchronously, so there is a race condition between these two processes. If GigaChannel Manager wins the race, it will re-download the personal channel download.
EDIT:
Apparently, the problem is not that GigaChannel Manager can't resume the seeding. It is that it can't handle some broken configurations of the DB-torrent-files mutual state.
In general, we have 4 different states that should all be consistent with each other for the system to operate:
1 Personal channel state in the DB: Channel entry, it's state, timestamp, local version, contents states, etc.
2 Channel dir with mdblob files on disk: the dir, the blobs.
3 Channel torrent file and mdblob on disk (used as a backup and for manual sharing).
4 Torrents handled by libtorrent wrapper: .state files, etc.
It is generally very hard to tell if one of these is not consistent with the others since complete consistency checks are very costly. So, we can't do the checks at the Tribler startup or at any other user-induced action. One solution to this problem would be to create a periodic checker process that will do the "maintenance", say, once a day. Another possibility is to add a "Check consistency" button to the Settings screen, so users can initiate the check on their own.
The text was updated successfully, but these errors were encountered:
ichorid
changed the title
GigaChannel Manager restarts personal channel download each time Tribler starts
GigaChannel Manager can't restore the personal channel in some cases
Jul 5, 2019
On startup, GigaChannel Manager checks for the existence of personal channel download. If it does not exist, it will restart it. Unfortunately, Libtorrent Wrapper starts downloads asynchronously, so there is a race condition between these two processes. If GigaChannel Manager wins the race, it will re-download the personal channel download.
EDIT:
Apparently, the problem is not that GigaChannel Manager can't resume the seeding. It is that it can't handle some broken configurations of the DB-torrent-files mutual state.
In general, we have 4 different states that should all be consistent with each other for the system to operate:
1 Personal channel state in the DB: Channel entry, it's state, timestamp, local version, contents states, etc.
2 Channel dir with mdblob files on disk: the dir, the blobs.
3 Channel torrent file and mdblob on disk (used as a backup and for manual sharing).
4 Torrents handled by libtorrent wrapper:
.state
files, etc.It is generally very hard to tell if one of these is not consistent with the others since complete consistency checks are very costly. So, we can't do the checks at the Tribler startup or at any other user-induced action. One solution to this problem would be to create a periodic checker process that will do the "maintenance", say, once a day. Another possibility is to add a "Check consistency" button to the Settings screen, so users can initiate the check on their own.
The text was updated successfully, but these errors were encountered: