Version Description
04/Sep/2015 =
FIX: Dropbox introduced an un-documented, un-announced change to their server, which caused new site authentications in UpdraftPlus to no longer work. Now fixed with this release.
FIX: If backing up multiple extra directories under "more files", if large directories required a resumption, then inclusion of the files multiple times in the backup was possible.
TWEAK: Tweak the auto-split algorithm to not avoid firing in a particular case (that relies on a sequence of unlikely I/O events, seen on GoDaddy) if there's no resumption scheduled
TWEAK: Add mysql.sql to the (changeable) default configuration for excludes from wp-content - on WP Engine this is an unreadable file that they create that thus produces a backup warning
TWEAK: Add a dashboard warning (+ link to documentation) if UD appears to be incompletely installed
TWEAK: Add UPDRAFTPLUS_WEBDAV_NEVER_CHUNK constant for WebDAV servers that return the wrong error code when chunking fails
TWEAK: Introduce a UPDRAFTPLUS_REMOTESEND_DEFAULT_CHUNK_BYTES constant allowing the over-riding of the remote-send (Migrator) starting chunk size in wp-config.php (expert users)
TWEAK: Add CSS classes to dashboard updates notices, so that people can hide them more easily if they wish
TWEAK: If gzopen() is disabled, then test binzip without trying to use PclZip to verify the results
TWEAK: Add work-around for PHP bug https://bugs.php.net/bug.php?id=62852
Release Info
Developer | DavidAnderson |
Plugin | UpdraftPlus WordPress Backup Plugin |
Version | 1.11.9 |
Comparing to | |
See all releases |
Code changes from version 1.11.8 to 1.11.9
- backup.php +9 -4
- includes/Dropbox/OAuth/Consumer/ConsumerAbstract.php +1 -1
- readme.txt +2 -2
- updraftplus.php +1 -1
@@ -885,17 +885,21 @@ class UpdraftPlus_Backup {
|
|
885 |
$possible_backups = $updraftplus->get_backupable_file_entities(true);
|
886 |
|
887 |
// Was there a check-in last time? If not, then reduce the amount of data attempted
|
888 |
-
if ($job_status != 'finished' && $updraftplus->current_resumption >= 2
|
889 |
-
$maxzipbatch = $updraftplus->jobdata_get('maxzipbatch', 26214400);
|
890 |
-
if ((int)$maxzipbatch < 1) $maxzipbatch = 26214400;
|
891 |
|
892 |
# NOTYET: Possible amendment to original algorithm; not just no check-in, but if the check in was very early (can happen if we get a very early checkin for some trivial operation, then attempt something too big)
|
|
|
893 |
|
|
|
|
|
894 |
if (!empty($updraftplus->no_checkin_last_time) || !$updraftplus->newresumption_scheduled) {
|
895 |
// Apr 2015: !$updraftplus->newresumption_scheduled added after seeing a log where there was no activity on resumption 9, and extra resumption 10 then tried the same operation.
|
896 |
if ($updraftplus->current_resumption - $updraftplus->last_successful_resumption > 2 || !$updraftplus->newresumption_scheduled) {
|
897 |
$this->try_split = true;
|
898 |
-
}
|
|
|
|
|
|
|
899 |
$new_maxzipbatch = max(floor($maxzipbatch * 0.75), 20971520);
|
900 |
if ($new_maxzipbatch < $maxzipbatch) {
|
901 |
$updraftplus->log("No check-in was detected on the previous run - as a result, we are reducing the batch amount (old=$maxzipbatch, new=$new_maxzipbatch)");
|
@@ -1913,6 +1917,7 @@ class UpdraftPlus_Backup {
|
|
1913 |
if (filesize($examine_zip) > 50*1048576) {
|
1914 |
# We could, as a future enhancement, save this back to the job data, if we see a case that needs it
|
1915 |
$this->zip_split_every = max((int)$this->zip_split_every/2, UPDRAFTPLUS_SPLIT_MIN*1048576, filesize($examine_zip));
|
|
|
1916 |
$updraftplus->log("No check-in on last two runs; bumping index and reducing zip split for this job to: ".round($this->zip_split_every/1048576, 1)." Mb");
|
1917 |
$do_bump_index = true;
|
1918 |
}
|
885 |
$possible_backups = $updraftplus->get_backupable_file_entities(true);
|
886 |
|
887 |
// Was there a check-in last time? If not, then reduce the amount of data attempted
|
888 |
+
if ($job_status != 'finished' && $updraftplus->current_resumption >= 2) {
|
|
|
|
|
889 |
|
890 |
# NOTYET: Possible amendment to original algorithm; not just no check-in, but if the check in was very early (can happen if we get a very early checkin for some trivial operation, then attempt something too big)
|
891 |
+
|
892 |
|
893 |
+
// 03-Sep-2015 - came across a case (HS#2052) where there apparently was a check-in 'last time', but no resumption was scheduled because the 'useful_checkin' jobdata was *not* last time - which must indicate dying at a very unfortunate/unlikely point in the code. As a result, the split was not auto-reduced. Consequently, we've added !$updraftplus->newresumption_scheduled as a condition on the first check here (it was already on the second), as if no resumption is scheduled then whatever checkin there was last time was only partial. This was on GoDaddy, for which a number of curious I/O event combinations have been seen in recent months - their platform appears to have some odd behaviour when PHP is killed off.
|
894 |
+
// 04-Sep-2015 - move the '$updraftplus->current_resumption<=10' check to the inner loop (instead of applying to this whole section), as I see no reason for that restriction (case seen in HS#2064 where it was required on resumption 15)
|
895 |
if (!empty($updraftplus->no_checkin_last_time) || !$updraftplus->newresumption_scheduled) {
|
896 |
// Apr 2015: !$updraftplus->newresumption_scheduled added after seeing a log where there was no activity on resumption 9, and extra resumption 10 then tried the same operation.
|
897 |
if ($updraftplus->current_resumption - $updraftplus->last_successful_resumption > 2 || !$updraftplus->newresumption_scheduled) {
|
898 |
$this->try_split = true;
|
899 |
+
} elseif ($updraftplus->current_resumption<=10) {
|
900 |
+
$maxzipbatch = $updraftplus->jobdata_get('maxzipbatch', 26214400);
|
901 |
+
if ((int)$maxzipbatch < 1) $maxzipbatch = 26214400;
|
902 |
+
|
903 |
$new_maxzipbatch = max(floor($maxzipbatch * 0.75), 20971520);
|
904 |
if ($new_maxzipbatch < $maxzipbatch) {
|
905 |
$updraftplus->log("No check-in was detected on the previous run - as a result, we are reducing the batch amount (old=$maxzipbatch, new=$new_maxzipbatch)");
|
1917 |
if (filesize($examine_zip) > 50*1048576) {
|
1918 |
# We could, as a future enhancement, save this back to the job data, if we see a case that needs it
|
1919 |
$this->zip_split_every = max((int)$this->zip_split_every/2, UPDRAFTPLUS_SPLIT_MIN*1048576, filesize($examine_zip));
|
1920 |
+
$updraftplus->jobdata_set('split_every', (int)($this->zip_split_every/1048576));
|
1921 |
$updraftplus->log("No check-in on last two runs; bumping index and reducing zip split for this job to: ".round($this->zip_split_every/1048576, 1)." Mb");
|
1922 |
$do_bump_index = true;
|
1923 |
}
|
@@ -49,7 +49,7 @@ abstract class Dropbox_ConsumerAbstract
|
|
49 |
$this->getAccessToken();
|
50 |
} catch(Exception $e) {
|
51 |
$excep_class = get_class($e);
|
52 |
-
// 04-Sep-2015 - Dropbox started throwing a
|
53 |
if ('Dropbox_BadRequestException' == $excep_class || 'Dropbox_Exception' == $excep_class) {
|
54 |
global $updraftplus;
|
55 |
$updraftplus->log($e->getMessage().' - need to reauthenticate this site with Dropbox (if this fails, then you can also try wiping your settings from the Expert Settings section)');
|
49 |
$this->getAccessToken();
|
50 |
} catch(Exception $e) {
|
51 |
$excep_class = get_class($e);
|
52 |
+
// 04-Sep-2015 - Dropbox started throwing a 400, which caused a Dropbox_BadRequestException which previously wasn't being caught
|
53 |
if ('Dropbox_BadRequestException' == $excep_class || 'Dropbox_Exception' == $excep_class) {
|
54 |
global $updraftplus;
|
55 |
$updraftplus->log($e->getMessage().' - need to reauthenticate this site with Dropbox (if this fails, then you can also try wiping your settings from the Expert Settings section)');
|
@@ -3,7 +3,7 @@ Contributors: Backup with UpdraftPlus, DavidAnderson
|
|
3 |
Tags: backup, backups, restore, amazon backup, s3 backup, dropbox backup, google drive backup, rackspace cloud files, rackspace backup, dreamhost, dreamobjects backup, ftp backup, webdav backup, google cloud storage, onedrive, microsoft one drive, back up, multisite, restoration, sftp backup, ftps, scp backup, migrate, duplicate, copy, mysql backup, database backup, db backups, website backup, wordpress backup, full backup, openstack backup, sicherung
|
4 |
Requires at least: 3.2
|
5 |
Tested up to: 4.3
|
6 |
-
Stable tag: 1.11.
|
7 |
Author URI: https://updraftplus.com
|
8 |
Donate link: http://david.dw-perspective.org.uk/donate
|
9 |
License: GPLv3 or later
|
@@ -1635,4 +1635,4 @@ We recognise and thank the following for code and/or libraries used and/or modif
|
|
1635 |
|
1636 |
|
1637 |
== Upgrade Notice ==
|
1638 |
-
* 1.11.
|
3 |
Tags: backup, backups, restore, amazon backup, s3 backup, dropbox backup, google drive backup, rackspace cloud files, rackspace backup, dreamhost, dreamobjects backup, ftp backup, webdav backup, google cloud storage, onedrive, microsoft one drive, back up, multisite, restoration, sftp backup, ftps, scp backup, migrate, duplicate, copy, mysql backup, database backup, db backups, website backup, wordpress backup, full backup, openstack backup, sicherung
|
4 |
Requires at least: 3.2
|
5 |
Tested up to: 4.3
|
6 |
+
Stable tag: 1.11.9
|
7 |
Author URI: https://updraftplus.com
|
8 |
Donate link: http://david.dw-perspective.org.uk/donate
|
9 |
License: GPLv3 or later
|
1635 |
|
1636 |
|
1637 |
== Upgrade Notice ==
|
1638 |
+
* 1.11.9 : Fix for undocumented change at Dropbox.Com that began preventing authorising new WP sites, plus a few others
|
@@ -4,7 +4,7 @@ Plugin Name: UpdraftPlus - Backup/Restore
|
|
4 |
Plugin URI: https://updraftplus.com
|
5 |
Description: Backup and restore: take backups locally, or backup to Amazon S3, Dropbox, Google Drive, Rackspace, (S)FTP, WebDAV & email, on automatic schedules.
|
6 |
Author: UpdraftPlus.Com, DavidAnderson
|
7 |
-
Version: 1.11.
|
8 |
Donate link: http://david.dw-perspective.org.uk/donate
|
9 |
License: GPLv3 or later
|
10 |
Text Domain: updraftplus
|
4 |
Plugin URI: https://updraftplus.com
|
5 |
Description: Backup and restore: take backups locally, or backup to Amazon S3, Dropbox, Google Drive, Rackspace, (S)FTP, WebDAV & email, on automatic schedules.
|
6 |
Author: UpdraftPlus.Com, DavidAnderson
|
7 |
+
Version: 1.11.9
|
8 |
Donate link: http://david.dw-perspective.org.uk/donate
|
9 |
License: GPLv3 or later
|
10 |
Text Domain: updraftplus
|