Support

Akeeba Backup for WordPress

#30007 Error upload to Google Cloud Storage

Posted in ‘Akeeba Backup for WordPress’
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

WordPress version
n/a
PHP version
n/a
Akeeba Backup version
n/a

Latest post by nicholas on Tuesday, 11 September 2018 23:57 CDT

alexndlm
Hello.
I am receive error:

DEBUG |180725 16:28:24|Loading post-processing engine object (googlestoragejson)
INFO |180725 16:28:24|Beginning post processing file <root>wp-content/plugins/akeebabackupwp/app/backups/site-horeca.in.ua-20180725-192748eest.jpa
DEBUG |180725 16:28:24|Akeeba\Engine\Postproc\Googlestoragejson::Akeeba\Engine\Postproc\Googlestoragejson::processPart - Using chunked upload, part size 10485760
DEBUG |180725 16:28:24|Akeeba\Engine\Postproc\Googlestoragejson::Akeeba\Engine\Postproc\Googlestoragejson::processPart - Creating new upload session
WARNING |180725 16:28:25|The upload session for remote file horeca-in-ua/site-horeca.in.ua-20180725-192748eest.jpa cannot be created. Debug info: #500 – Could not start an upload session
WARNING |180725 16:28:25|Failed to process file <root>wp-content/plugins/akeebabackupwp/app/backups/site-horeca.in.ua-20180725-192748eest.jpa
WARNING |180725 16:28:25|Error received from the post-processing engine:
WARNING |180725 16:28:25|The upload session for remote file horeca-in-ua/site-horeca.in.ua-20180725-192748eest.jpa cannot be created. Debug info: #500 – Could not start an upload session \n Failed to process file <root>wp-content/plugins/akeebabackupwp/app/backups/site-horeca.in.ua-20180725-192748eest.jpa

tampe125
Akeeba Staff
Hello,

next time please upload the whole log file, since it contains several info that I need to check to understand what's going on.
However, I think that the main problem is a bug that we have already fixed in the next version of Akeeba Backup.

Inside the Configuration page, Post-Processing Engine, please remove the check from the option Enable chunk upload, that should fix the problem.

Davide Tampellini

Developer and Support Staff

🇮🇹Italian: native 🇬🇧English: good • 🕐 My time zone is Europe / Rome (UTC +1)
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

alexndlm
Hello.
Still not work :(

I am attach log file.

alexndlm
log file

tampe125
Akeeba Staff
Can you please install the latest dev release and try again?
It contains the fix for your issue.

Davide Tampellini

Developer and Support Staff

🇮🇹Italian: native 🇬🇧English: good • 🕐 My time zone is Europe / Rome (UTC +1)
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

alexndlm
Hello.
Still not work :(

I am attach log file.

tampe125
Akeeba Staff
mhm... that's pretty strange.
I'd wish to connect to your site to run some tests and see what's going on.

Please provide me with the following information:
  1. The URL to your site's administrator login page
  2. Super Administrator username and password
  3. FTP connection information

Please allow up to one business day (GMT+2 timezone) for me to log in to your site and debug this issue. When I'm done I will post back. Once the issue is fixed, you can revoke my access e.g. by changing the Super Administrator and FTP passwords.

IMPORTANT INFORMATION
In order for me to help you fast and accurately, please provide the information by copying the form below, paste it into your reply and fill in the information:

----- Access Information Form -- START -----
Super Administrator access
  • URL to site's administrator page (e.g. http://www.example.com/administrator?foobar):
  • Super Administrator username:
  • Super Administrator password:

FTP connection information
  • FTP methods supported (e.g. FTP, FTPS, SFTP):
  • FTP Hostname:
  • FTP Username:
  • FTP Password:
  • FTP Port (if other than 21 for FTP and 22 for SFTP, ask your host):

----- Access Information Form -- END -----

Please make sure that you have tested the Super Administrator connection using a different browser or machine than the one you are using daily. Double check that logging in is possible and that the user has Super Administrator (Super User) privileges, i.e. it's not a regular Administrator. Make sure that your site does not block whole countries or IP ranges which would make it impossible for me to log in / connect by FTP. Finally, please do make sure that the FTP connection works and that logging in to it I have access to your site's files.

Davide Tampellini

Developer and Support Staff

🇮🇹Italian: native 🇬🇧English: good • 🕐 My time zone is Europe / Rome (UTC +1)
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

alexndlm
Hello.
I prepared a test site, you can freely break it :)

(REDACTED)

tampe125
Akeeba Staff
Thank you very much for your time and the test site.
There was indeed a bug in the post processing engine. We just fixed it and I uploaded a dev release on your test site, now the upload works correctly.

Thanks again for your time!

Please note that per the European Union's General Data Protection Regulation we are taking the following actions with regards to Personally Identifiable Information (PII) included in your previous post(s):

  • Any access / connection details you provided to your site will be moved into a hidden managers-only area (Manager Notes) which is going to be automatically purged upon closing the ticket.

Davide Tampellini

Developer and Support Staff

🇮🇹Italian: native 🇬🇧English: good • 🕐 My time zone is Europe / Rome (UTC +1)
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

alexndlm
Hello.
There are no errors, but the file with a backup copy is not uploaded to Google Cloud Storage

nicholas
Akeeba Staff
Manager
I cannot reproduce your issue. I have tried uploading several backups of different sizes without a problem.

Just one note, though. Google Storage creates a folder named “/” (a single forward slash) when you do not use a directory name in the bucket. If you are using Google Cloud Console to view your bucket's contents you can see it like the attached image. The file is inside that folder. Depending on what you are using to view the contents of your bucket you may be unable to see that file.

If, however, the log file shows an implausibly fast upload (under a second per chunk) the problem is with the host. We've seen many hosts which use a proxy or cache for outgoing server connections. In this case they just immediately send an HTTP 200 OK response when we try to upload something to Google Storage without actually bothering to send the data to Google Storage at all! From the point of view of our application the transfer has completed successfully (200 OK is how Google's API signals successful uploads) but, in fact, nothing was transferred. There is no workaround we can employ on our side; you'll have to ask your host to fix that issue on their side.

I hope that helps!

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!

alexndlm
Hello.
I use a купгдфк вкщздуе on the Digital Ocean.
I set it up for myself, the proxy is not there.

Can you check my settings for the Akeeba plugin?

nicholas
Akeeba Staff
Manager
I checked your settings. It's a variation of what I said last time about using the root folder of the bucket. Let me quote:

Just one note, though. Google Storage creates a folder named “/” (a single forward slash) when you do not use a directory name in the bucket. If you are using Google Cloud Console to view your bucket's contents you can see it like the attached image. The file is inside that folder. Depending on what you are using to view the contents of your bucket you may be unable to see that file.


It turns out that the same problem occurs when you leave the Directory field blank, like you did. The file is uploaded there but you cannot download / delete it through Akeeba Backup. You can only see it through the Google Cloud Console.

I changed the upload directory to akeeba-test in your configuration and ran the backup again, on the test site which you gave us access to. As you can see this time it worked just fine.

I want to clarify that not being able to use the root folder of the bucket is a bug. I already fixed this and the fix will be made available in the next stable release, scheduled for the week of September 3rd to 7th.

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!

alexndlm
Thank you. Everything is working.

Another question is why the backup is divided into parts, if this option is disabled.

nicholas
Akeeba Staff
Manager
There are two different things. Both are applied per backup profile.

The backup itself may be split into one or more parts. Each part is a separate file. This will happen only if you enable it and for the part size you have configured.

Each backup file (be it part of a multi-part set of files or just a single part backup archive) needs to be uploaded to Google Storage. Google's API allows us to upload the site in chunks. Instead of transferring, say, a 2GB file we can transfer 200 chunks of that file, each chunk being 10MB. This means that each upload operation takes just a few seconds and is unlikely to time out. At the end, Google Storage stitches together all the pieces we uploaded and we have one single file. If you disable that and try to upload the whole 2GB file I can guarantee that the upload will time out and fail.

Also note that chunked uploads are enabled by default. They can be disabled easily but it's not recommended. Your uploads will fail unless you start splitting the backup archive to many smaller files. When there is an option for chunked uploads ALWAYS use it. It's more efficient. Moreover, by having less backup archive part files to deal with means that restoring is much easier as well.

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!

alexndlm
Okay, I get it. But Google Storage not merge files into one. How do I enable the option?

nicholas
Akeeba Staff
Manager
You are still talking about different things.

You are talking about part files. The backup is split in parts (separate files) for a reason: PHP only supports files up to 2147483647 bytes long. Anything over that will make writing to and reading from the file inaccurate, corrupting the backup archive. These files cannot be and must not be joined together for this reason. If you have set up a small Part Size for Split Archives set it to 2000 MB which is a safe value.

Each part file can be uploaded in multiple chunks. Chunks ARE NOT files. They are a part of a file, transferred to Google Storage. When all chunks of a single part file are transferred to Google Storage they are automatically joined together into a single file. This operation is transparent, i.e. you DO NOT see the chunks as separate entities in your Google Storage.

Think of it like this. You have a shipment of tiles (your backup). It is 20 palettes big (total size of the backup). Each truck (part file) can only fit 12 palettes at most. If you try to fit more palettes in a truck the truck will topple over and crash. Therefore you need to fill two trucks (part files). There is no good way to transfer 12 palettes at once to a truck. Therefore you need to transfer one palette (chunk) at a time using a forklift (upload code). The forklift (upload code) goes to your warehouse (server) and transfers one palette (chunk) at the truck bed (part file on Google Storage) at a time. When the forklift finishes transferring the first twelve palettes (chunks) the truck (part file) is complete. Then it goes on to transfer the palettes (chunks) to the second truck (part file).

If you were using minivans instead of trucks you could only fit one palette per minivan. Your part files are smaller, therefore you need more of them. You can not join together minivans to create a truck. Is it more clear now?

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!

alexndlm
Now I understand.
Thank you very much for your help.

Can you please tell me when all the changes from the alpha version will be released?

nicholas
Akeeba Staff
Manager
The changes are already included in version 6.2.1 released two days ago.

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!

alexndlm
I am cannot update to lates version. I attach screen with error.

WP version - 4.9.8
PHP version - PHP 7.0.30-0ubuntu0.16.04.1 (cli) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
with Zend OPcache v7.0.30-0ubuntu0.16.04.1, Copyright (c) 1999-2017, by Zend Technologies

alexndlm
screen with error.

nicholas
Akeeba Staff
Manager
Give it a day to refresh its update information. If it doesn't work, follow the manual update instructions at https://www.akeebabackup.com/documentation/akeeba-solo/updating.html

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!

alexndlm
Thanks, it works.

Still such question, on one site backup it is created in a root with a file name horeca-in-ua%2Fsite-horeca.in.ua-20180908-202136eest.jpa
On other sites everything works correctly, a folder is created at the root, and backup is placed inside.
How to fix it?

nicholas
Akeeba Staff
Manager
I cannot reproduce your issue. I can only give you some generic advice. When you configure Google Storage in Akeeba Backup you must enter the Directory as:

horeca-in-ua

That is, without any leading or trailing slashes.

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!

alexndlm
Most likely this is a bug, since in version 3.1.1 everything works correctly.

nicholas
Akeeba Staff
Manager
Again, I CANNOT reproduce your issue using the ACTUAL, CURRENT version 3.2.1. Moreover, the code which translates whatever your input is to something that Google Storage will understand without barfing has NOT changed since we introduced this feature.

There was exactly ONE (1) bug which I fixed: if the file to be uploaded was smaller than the part size weird things would start happening.

Now, if your site's URL contains a forward slash then yes, of course, since this is part of the filename it WILL be escaped to %2F. This is not a bug. It's something that makes sense.

Change the template name for the archive naming to something which does not include [HOST] in it and see if your problem goes away.

In any case, this never ending ticket was about a fixed issue. Everything else you have posted is a non-issue. As a result I am closing this ticket. Other clients also need us to help them and I don't see this ticket being productive, especially when you start crying "bug! bug! bug!" like the boy that cried wolf. Sorry, not interested in playing.

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!