Support

Akeeba Backup for Joomla!

#31263 remote backup quotas not working as expected

Posted in ‘Akeeba Backup for Joomla! 4 & 5’
This is a public ticket

Everybody will be able to see its contents. Do not include usernames, passwords or any other sensitive information.

Environment Information

Joomla! version
n/a
PHP version
n/a
Akeeba Backup version
n/a

Latest post by nicholas on Sunday, 21 April 2019 10:33 CDT

snowgoose
Please look at the bottom of this page (under Support Policy Summary) for our support policy summary, containing important information regarding our working hours and our support policy. Thank you!

EXTREMELY IMPORTANT: Please attach a ZIP file containing your Akeeba Backup log file in order for us to help you with any backup or restoration issue. If the file is over 2Mb, please upload it on your server and post a link to it.

Description of my issue:
I am using Akeeba Backup to transfer the backup to OneDrive (personal not business version). In the config, I have ticked 'enable remote files quota'. I have ticked 'enable size quota' and have set this to 1024mb. However, the backups do not follow this rule and my OneDrive fills up and transfer of my backups fails. I have to manually delete the files from OneDrive. I have attached the log but a relvant section is shown below, where the last line seems to imply that no files were found to apply the quota to.

Thank you
Dave

WARNING |190418 00:02:08|Error quotaLimitReached: Insufficient Space Available
DEBUG |190418 00:02:08|Akeeba\Engine\Postproc\Onedrive::Akeeba\Engine\Postproc\Onedrive::processPart - Maximum number of retries exceeded. The upload has failed.
WARNING |190418 00:02:08|Failed to upload kickstart.php
WARNING |190418 00:02:08|Error received from the post-processing engine:
WARNING |190418 00:02:08|Error quotaLimitReached: Insufficient Space Available \n Failed to process file <root>administrator/components/com_akeeba/backup/site-pixielox.co.uk-20190418-000003bst.jpa \n Post-processing interrupted -- no more files will be transferred \n Error quotaLimitReached: Insufficient Space Available \n Failed to upload kickstart.php
DEBUG |190418 00:02:08|Akeeba\Engine\Core\Domain\Finalization::_run() Running built-in method apply_quotas
DEBUG |190418 00:02:08|Processing size quotas
DEBUG |190418 00:02:08|Akeeba\Engine\Core\Domain\Finalization::_run() Running built-in method apply_remote_quotas
DEBUG |190418 00:02:08|Applying remote file quotas
DEBUG |190418 00:02:08|Processing remote size quotas
DEBUG |190418 00:02:08|No remote files to apply quotas to were found

nicholas
Akeeba Staff
Manager
The remote quotas do work, however there are a couple of implementation details which might get you -- especially if you are using such a high threshold for deleting old backups.

Caveat 1. Quotas (including remote quotas) are applied per backup profile. Only backups taken from the same backup profile are considered when applying quotas. If you have 600MB in profile #1 and 900MB in profile #2 you have not reached the 1024MB quota in either backup profile, despite their combined size being nearly 1.5GB.

If you have multiple backup profiles you need to adjust the size quotas according to their expected contribution to the total size of backups stored.

Caveat 2. Remote backup quotas are processed based on backup attempts information stored in the database, NOT disk usage in the remote storage. This is on purpose and extremely important: querying a remote storage location's disk usage is slow and leads to timeout errors. Moreover, a remote storage location may include other files which might be backups taken by another profile or even site, or not even Akeeba Backup backup archives. We can't go around deleting random files. That's why we rely on information stored in the database to apply quotas.

There's a complication to that. If your files are only stored on the remote server, the backup records in your database are considered obsolete. This means that the obsolete records quota will delete older records of remotely stored backup archives. Therefore, these old records will not participate in the quotas.

For example, if you have 100MB backups, a size quota of 1024 MB and an obsolete records quota of 10 records you will never see any old backup archives being removed. Why? Because you are keeping at most 10 "obsolete" (remotely stored backup) records which amount to 10 x 100MB = 1000MB. This is under the 1024MB threshold for applying size quotas. The 11th backup you take will cause first the 1st backup record to be removed then the quotas to be calculated. Once again, the surviving 10 records are under the quota limit, therefore no quotas are applied.

I recommend disabling the obsolete records quota for your backup profile.

Also note that all the older backups, records for which do not appear in your database, must be deleted manually by you. They will never be considered in future runs.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

Support Information

Working hours: We are open Monday to Friday, 9am to 7pm Cyprus timezone (EET / EEST). Support is provided by the same developers writing the software, all of which live in Europe. You can still file tickets outside of our working hours, but we cannot respond to them until we're back at the office.

Support policy: We would like to kindly inform you that when using our support you have already agreed to the Support Policy which is part of our Terms of Service. Thank you for your understanding and for helping us help you!