If it is failing during the backup portion of the process it is probably due to cs-cart's use of the Phar archiver. It wants to take your site and put it into memory in order to archive it (stupid approach). So if your Apache Timeout value is set to 300 or greater, then Phar is probably the culprit. Usually you can go to a different page on your site and you will see an error notification that Phar failed (but it won't be logged anywhere).
To proceed, you will have to do a backup outside of cs-cart and then disable the backup within the upgrade process. Here's the response from helpdesk after 10 days to one-message-per-day resolution. Hopefully this will help others get past this issue since cs-cart won't accept responsibility for choosing to use the Phar archiver.
I have not yet done this but probably will later today. The whole upgrade process has gone downhill since V3.
Update: have done this and it gets beyond the failure. Note that you have to re-comment out those lines between each upgrade since a new file is part of the upgrade. This new checking of time out is kind of a heavy-handed way to do so. Not sure why you wouldn't just do:
set_timeout(3600);
$set_time = ini_get('max_execution_time').
If not requested timeout is not accepted then $set_time will hold the actual value of max_execution_time that PHP is current using.
As an alternative, we suggest that you create a store and database backup using server methods (via cPanel, for example) and disable the backup process during upgrade. In order to do it, open the app/Tygh/UpgradeCenter/App.php file and comment out the following part of code:
$logger->add('Backup files and Database');
Output::display(__('backup_data'), '', true);
$backup_file = DataKeeper::backup(array(
'pack_name' => $backup_filename,
'compress' => 'zip',
'set_comet_steps' => false,
'move_progress' => false,
));
if (empty($backup_file)) {
$logger->add('Upgrade stopped: Failed to backup DB/Files');
return array(false, array(__('backup') => __('text_uc_failed_to_backup_tables')));
}
// Send mail to admin e-mail with information about backup
Mailer::sendMail(array(
'to' => 'company_site_administrator',
'from' => 'default_company_site
_administrator’,
‘data’ => array(
‘backup_file’ => $backup_file,
‘settings_section_url’ => fn_url(‘settings.manage’),
‘restore_link’ => Registry::get(‘config.http_location’) . ‘/var/upgrade/restore.php?uak=’ . $restore_key,
),
‘tpl’ => ‘upgrade/backup_info.tpl’,
), ‘A’, Registry::get(‘settings.Appearance.backend_default_language’));