Add cleanup job for downloaded ids
This commit is contained in:
@@ -142,6 +142,20 @@ func (t *TorrentManager) refreshTorrents() []string {
|
||||
})
|
||||
})
|
||||
|
||||
t.workerPool.Submit(func() {
|
||||
// update DownloadedIDs field of torrents
|
||||
allTorrents.IterCb(func(accessKey string, torrent *Torrent) {
|
||||
deletedIDs := torrent.DownloadedIDs.Difference(freshIDs)
|
||||
if deletedIDs.Cardinality() > 0 {
|
||||
deletedIDs.Each(func(id string) bool {
|
||||
torrent.DownloadedIDs.Remove(id)
|
||||
return false
|
||||
})
|
||||
t.writeTorrentToFile(torrent)
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
return updatedPaths.ToSlice()
|
||||
}
|
||||
|
||||
|
||||
@@ -174,7 +174,7 @@ func (rd *RealDebrid) GetTorrents(onlyOne bool) ([]Torrent, int, error) {
|
||||
page := 1
|
||||
// compute ceiling of totalCount / limit
|
||||
maxPages := (totalCount + rd.cfg.GetTorrentsCount() - 1) / rd.cfg.GetTorrentsCount()
|
||||
rd.log.Debugf("Torrents total count is %d, total page count is %d", totalCount, maxPages)
|
||||
rd.log.Debugf("Torrents total count is %d", totalCount)
|
||||
maxParallelThreads := 4
|
||||
if maxPages < maxParallelThreads {
|
||||
maxParallelThreads = maxPages
|
||||
@@ -370,7 +370,7 @@ func (rd *RealDebrid) GetDownloads() []Download {
|
||||
|
||||
// compute ceiling of totalCount / limit
|
||||
maxPages := (totalCount + limit - 1) / limit
|
||||
rd.log.Debugf("Total downloads count is %d, total page count is %d", totalCount, maxPages)
|
||||
rd.log.Debugf("Total downloads count is %d", totalCount)
|
||||
maxParallelThreads := 8
|
||||
if maxPages < maxParallelThreads {
|
||||
maxParallelThreads = maxPages
|
||||
|
||||
Reference in New Issue
Block a user