Not enough Disk Space warning improvement
Posted: June 4th, 2013, 2:02 pm
I'm on Linux, SABnzbd 0.7.11. I'll update to 0.7.12 when my queue is empty, which could be awhile....
I have a few mount points, for example:
/mnt/category_test/ (2 TB)
/mnt/downloads/ (750 GB)
Let's assume that /mnt/downloads has 500GB free and /mnt/category_test has 1 TB free.
Temporary Download Folder: /mnt/downloads/incomplete
Completed Download Folder: /mnt/downloads/complete
Category: new_category; Priority: default; Processing: +Delete; Folder/Path: /mnt/category_test/
If I add a few items to the queue in new_category that are individually less than 500 GB yet sum to more than 500 GB then I get an erroneous Not enough Disk Space warning from SABnzbd regarding /mnt/downloads.
It is erroneous because SABnzbd will download 1 item (ITEM1, 200 GB), unpack it to /mnt/category_test/ITEM1_unpack, and delete /mnt/downloads/incomplete/ITEM1. Then it has the same amount of disk space available for ITEM2 on /mnt/downloads as it did for ITEM1. It is also a problem that SABnzbd ignores the free disk space on /mnt/category_test
We could make the disk space warning smarter by checking each item in the queue (path and post-processing) and having queue tallies for each mount point:
List mount points on the system and compare them to Completed Download Folder path, Temporary Download Folder path, and the path specified for each category. Check free disk space for each mount point that is relevant to SABnzbd.
Create a queue tally for each mount point and check which type of post-processing is set:
-if it is Download or Repair then add the actual download size to the appropriate queue tally
-if it is Unpack or Delete then add two times the actual download size to the appropriate queue tally
Compare the total of each queue tally to the space free on the corresponding mount point and have multiple lines for free disk space information below the queue. We can also include a grand tally for total queue size remaining but there is no reason to compare it to free disk space.
I have a few mount points, for example:
/mnt/category_test/ (2 TB)
/mnt/downloads/ (750 GB)
Let's assume that /mnt/downloads has 500GB free and /mnt/category_test has 1 TB free.
Temporary Download Folder: /mnt/downloads/incomplete
Completed Download Folder: /mnt/downloads/complete
Category: new_category; Priority: default; Processing: +Delete; Folder/Path: /mnt/category_test/
If I add a few items to the queue in new_category that are individually less than 500 GB yet sum to more than 500 GB then I get an erroneous Not enough Disk Space warning from SABnzbd regarding /mnt/downloads.
It is erroneous because SABnzbd will download 1 item (ITEM1, 200 GB), unpack it to /mnt/category_test/ITEM1_unpack, and delete /mnt/downloads/incomplete/ITEM1. Then it has the same amount of disk space available for ITEM2 on /mnt/downloads as it did for ITEM1. It is also a problem that SABnzbd ignores the free disk space on /mnt/category_test
We could make the disk space warning smarter by checking each item in the queue (path and post-processing) and having queue tallies for each mount point:
List mount points on the system and compare them to Completed Download Folder path, Temporary Download Folder path, and the path specified for each category. Check free disk space for each mount point that is relevant to SABnzbd.
Create a queue tally for each mount point and check which type of post-processing is set:
-if it is Download or Repair then add the actual download size to the appropriate queue tally
-if it is Unpack or Delete then add two times the actual download size to the appropriate queue tally
Compare the total of each queue tally to the space free on the corresponding mount point and have multiple lines for free disk space information below the queue. We can also include a grand tally for total queue size remaining but there is no reason to compare it to free disk space.