Support

Akeeba Backup for Joomla!

#8756 After 3 weeks working PERFECTLY, it fails and re-installation now also fails: HELP !

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 Thursday, 30 December 2010 07:39 CST

PeterNent
After buying Akeeba pro backup, I installed it and got it working within a few minutes: since then, it automatically sends a timed FTP file+DB backlup to my FTP-server: NICE and exactly what I want/need !

But after a few days, I recognized that the ZIP-backup files were NOT deleted automatically in the /administrator/components/com_akeeba/backup directory....although I set the parameter.....

The problems started a few days later after I manually deleted these backup-ZIP files:
- I could go to the back-end component part of AkeeBa (it timed out)
Strange enought, the automatic daily FTP-backups still worked perfectly and I could also make backups by hand (thus non-timed/automatically)....


In order to recover this problem, I tried to uninstall and then re-install my Akeeba Pro v3.1.5 again, but everytime this ends with an error message (cannot copy file, etc.), errormessages which I didn't get when installing it the first time a few weeks ago....

I also tried to install it manually (un-ZIP on local HDD and then FTP manually as described in your manual), but this also didn't work.....


Please HELP!

nicholas
Akeeba Staff
Manager
I am going to publish version 3.2.b1 tomorrow which fixes this issue. Alternatively, if you do not wish to upgrade to the beta release just yet, you can enable count quotas and use a count quote of 1 as a workaround.

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!

PeterNent
Dear Nicholas,

in the meantime, I discovered the reason and was able to solve my own problem: I had to set all permissions OK, I deleted everything en reinstalled AkeeBa Pro 3.1.5 again: this time, it installed perfectly and already had made a (manually initiated) backup.

Thus the problem is finally solved: case close !


Although, I normally wait until non-Beta versions are avaliable, I do want to test the new version, but only after you helped me with one question:
- As I'm sending the backup (approx. 1.2GB) by FTP, it regularly ends with an time-out error message in the last phase: sending it by FTP. Although I'm using a very fast 120Mb/s fast internet and a fast FTP server (aprox. 5Mb/s), this FTP sending/receiving takes approx. 4-5-6 minutes, thus ending in a error message, which is actually NOT an error, as the backup themselves is going perfectly !

The settings I'm using are: Min.time: 2s, max.time: 7s, Execution time: 50% (as advised by your manual)

HOW can I solve this problem ?

--------/the last few sentences from the LOG file/-------
[101229 21:06:04] ====== Starting Step number 96 ======
[101229 21:06:04] Loading post-processing engine object (ftp)
[101229 21:06:04] Beginning post processing file /tmp/groepen.hcc.nl-20101229-210055.zip
[101229 21:06:04] AEPostprocFtp:: Connecting to remote FTP
[101229 21:11:43] Finished post-processing file /tmp/groepen.hcc.nl-20101229-210055.zip
[101229 21:11:43] Post-processing has finished for all files
[101229 21:11:43] ----- Finished operation 1 ------
[101229 21:11:43] Successful Smart algorithm on AECoreDomainFinalization
[101229 21:11:43] Kettenrad :: More work required in domain 'finale'
[101229 21:11:43] ====== Finished Step number 96 ======
[101229 21:11:43] *** Batching of engine steps finished. I will now return control to the caller.
[101229 21:11:43] No need to sleep; execution time: 338599.581003 msec; min. exec. time: 2000 msec
[101229 21:11:43] Saving Kettenrad instance backend
[101229 21:13:10] Kettenrad :: Attempting to load from database
[101229 21:13:10] -- Loaded stored Akeeba Factory
[101229 21:13:15] Kettenrad :: Attempting to load from database
[101229 21:13:16]
[101229 21:13:20]
[101229 21:17:07] Kettenrad :: Attempting to load from database
[101229 21:17:12]
[101229 21:18:13] Kettenrad :: Attempting to load from database
[101229 21:18:18]

nicholas
Akeeba Staff
Manager
The timeout error during FTP transfer could also cause the non-deletion to happen. The sequence of operations is take the backup, mark the backup as complete ("ok" status), send the files to the remote location, delete the local files, update the backup entry noting that the files have been removed ("obsolete" status).

In order to avoid the timeout during file transfer, you can use split archives. This will cause the backup archive to be split in multiple files. Just go to the Configuration page, find the Archiver Engine row and click on the "Configure..." button. Drag the "part size for split archives" slider to a setting around 700Mb and save your configuration. The result will be a backup split in two files, with extensions .jpa and .j01 (if using the JPA format) or .zip and .z01 (if using the ZIP format). When you need to restore that archive, just download both parts so that Kickstart or Akeeba eXtract Wizard can locate and extract them. So simple!

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!

PeterNent
Many thanks for your suggestion: I'll try that in the comming minutes/hours....!

But I also have a suggestion for a future release: why don't you introduce 2 different time-out mechanisms:
1) time-out local webserver (pre-processing)
2) time-out saving backup
Both should have their own time-out settings, as both have a totally different source of error-sources: 1) is local on webserver and 2) is sometimes locally, but often depending on 'external' factors such as in my case the FTP-transfer time......

Good idea ?

nicholas
Akeeba Staff
Manager
There is exactly one source of timeouts: the value of PHP's max_execution_time. All web software is bound by its limits. Akeeba Backup tries to chunk the backup process to individual steps. The shortest duration possible is that of an atomic operation, i.e. an operation which can't be further cut to smaller pieces. If this is too long when compared to max_execution_time, a timeout occurs.

Transferring files by FTP is an atomic operation. Most FTP servers I have encountered do not support multipart uploads (or, more correctly, appending to existing files). Moreover, PHP doesn't support appending to existing files over FTP unless your host allows the ftp fopen() wrapper. According to harsh experience, the chances of something like that working range from abysmal to outright impossible, hence I never tried to make use of that PHP feature.

Thereofre, the only possible and reliable workaround is splitting the archive file, making each atomic operation last less than the max_execution_time. This is actually what is already documented, albeit the documentation tries to give an explanation in layman's terms of what is going on and why you need to do that.

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!

PeterNent
First of all Nicholas, I followed the manual and your advise EXACTLY and now the time-out has disappeared!: everything seems to be working perfectly !

As functional designer and Business Analist, I understand your technical PHP-limitations (and actually I respect that you explain them so clearly !), but I hope that you agree that looking to this matter from a non-technical, but more functional standpoint of view, it would be a great solution, as the SOURCE of the problem can/will be different in these two parts (as I already described) in practical life....

Second advise: your documentation is really great, but as a functional designer, I'm missing a globale workflow (BPM) scheme, where the user can overview how the logical flow of working Akeeba backup is....!

Anyhow: I like to thank you sincerely for making a real GREAT product and also giving GREAT support and making GREAT documentation!

nicholas
Akeeba Staff
Manager
I agree with you, but both changes are impossible to do.

1. PHP won't let me know why the timeout occurred. At best, if the FTP transfer times out because of a network or server issue, it will return "false" (that's all the information it gives!!!) and I'll issue a warning stating that the upload was impossible. I am telling you as much as PHP lets me know ;) If it is a PHP timeout, the causes can be numerous. Analyzing them would take a lot of code and a lot of time. However, as soon as PHP times out, it only gives me a few milliseconds to shut down the process gracefully. All I can do in this timeframe is to put a notice in the log that the backup timed out.

As a result, I can't do anything about that. The user has to read the manual and follow its troubleshooting instructions. Think the car analogy. Modern cars light up an engine icon which, according to the manual, means "Go to your mechanic a.s.a.p.". The causes of this could be numerous, but your car won't tell you. The car's computer keeps a log and your mechanic can read it and tell you what's wrong.

2. Since Akeeba Backup offers many different functionalities and different alternatives for accomplishing similar goals, a functional diagram would be so convoluted that most users would perceive the software as byzantine upon setting eyes on it. To my defense, many people use OpenOffice.org Writer or Microsoft Word. They would have equally and even more complex functional diagrams, yet people find their way through them. So, I think I'd better stick to not having to build a workflow chart as it would ultimately confuse most users.

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!