Merge remote-tracking branch 'refs/remotes/duplicati/master' into TestIntegrateNewSharpAESCrypt

This commit is contained in:
FootStark
2016-03-05 10:55:54 +01:00
4 changed files with 14 additions and 10 deletions
+4 -3
View File
@@ -67,10 +67,11 @@ Restore a specific file
Usage: backup <storage-URL> "<source-path>" [<options>]
Makes a backup of <source-path> and stores it in <storage-URL>. The format for <storage-URL> is protocol://username:password@hostname:port/path?backend
_option1=value1&backend_option2=value2. Multiple source paths can be specified if they are separated by a space. Defaults are: The maximum file size is 100MB, backups are deleted when they are older than one month.
Makes a backup of <source-path> and stores it in <storage-URL>. The format for <storage-URL> is
protocol://username:password@hostname:port/path?backend_option1=value1&backend_option2=value2.
Multiple source paths can be specified if they are separated by a space.
<username> must not contain : and <password> must not contain @. If they do, specify username and password using --auth-username and --auth-password.
<username> must not contain : and <password> must not contain @. If they do, specify username and password using --auth-username and --auth-password, or url-encode them.
--auth-password=<string>
The password that is required to authenticate with the server the backup is stored on.
@@ -84,9 +84,9 @@ namespace Duplicati.Library.Main.Database
sql = string.Format(
@" INSERT INTO ""{0}"" (""FileId"", ""TotalBlocks"", ""TotalSize"", ""BlocksRestored"", ""SizeRestored"") "
+ @" SELECT ""F"".""ID"", COUNT(""B"".""ID""), SUM(""B"".""Size"")"
+ @" , COUNT(CASE ""B"".""Restored"" WHEN 1 THEN ""B"".""ID"" ELSE NULL END) "
+ @" , SUM(CASE ""B"".""Restored"" WHEN 1 THEN ""B"".""Size"" ELSE 0 END) "
+ @" SELECT ""F"".""ID"", IFNULL(COUNT(""B"".""ID""), 0), IFNULL(SUM(""B"".""Size""), 0)"
+ @" , IFNULL(COUNT(CASE ""B"".""Restored"" WHEN 1 THEN ""B"".""ID"" ELSE NULL END), 0) "
+ @" , IFNULL(SUM(CASE ""B"".""Restored"" WHEN 1 THEN ""B"".""Size"" ELSE 0 END), 0) "
+ @" FROM ""{1}"" ""F"" LEFT JOIN ""{2}"" ""B""" // allow for emtpy files (no data Blocks)
+ @" ON ""B"".""FileID"" = ""F"".""ID"" "
+ @" WHERE ""B"".""Metadata"" IS NOT 1 " // Use "IS" because of Left Join
@@ -101,10 +101,10 @@ namespace Duplicati.Library.Main.Database
+ @" ""TotalFiles"", ""TotalBlocks"", ""TotalSize"" "
+ @", ""FilesFullyRestored"", ""FilesPartiallyRestored"", ""BlocksRestored"", ""SizeRestored"""
+ @" ) "
+ @" SELECT COUNT(""P"".""FileId""), SUM(""P"".""TotalBlocks""), SUM(""P"".""TotalSize"") "
+ @" , COUNT(CASE WHEN ""P"".""BlocksRestored"" = ""P"".""TotalBlocks"" THEN 1 ELSE NULL END) "
+ @" , COUNT(CASE WHEN ""P"".""BlocksRestored"" BETWEEN 1 AND ""P"".""TotalBlocks"" - 1 THEN 1 ELSE NULL END) "
+ @" , SUM(""P"".""BlocksRestored""), SUM(""P"".""SizeRestored"") "
+ @" SELECT IFNULL(COUNT(""P"".""FileId""), 0), IFNULL(SUM(""P"".""TotalBlocks""), 0), IFNULL(SUM(""P"".""TotalSize""), 0) "
+ @" , IFNULL(COUNT(CASE WHEN ""P"".""BlocksRestored"" = ""P"".""TotalBlocks"" THEN 1 ELSE NULL END), 0) "
+ @" , IFNULL(COUNT(CASE WHEN ""P"".""BlocksRestored"" BETWEEN 1 AND ""P"".""TotalBlocks"" - 1 THEN 1 ELSE NULL END), 0) "
+ @" , IFNULL(SUM(""P"".""BlocksRestored""), 0), IFNULL(SUM(""P"".""SizeRestored""), 0) "
+ @" FROM ""{1}"" ""P"" "
, m_totalprogtable, m_fileprogtable);
+1
View File
@@ -11,6 +11,7 @@ Software Development:
Sebastian Fahrenholz
Malte Neumann
Mostafa Aghajani
Stefan Lück
The theme for Duplicati (ngax):
Alexander Franzelin
+2
View File
@@ -13,6 +13,8 @@ Duplicati is a free, open source, backup client that securely stores encrypted,
* Google Drive (Google Docs)
* Rackspace Cloud Files
* HubiC
* Backblaze (B2)
* Amazon Cloud Drive (AmzCD)
* Swift / OpenStack
* WebDAV
* SSH (SFTP)