Commit Graph
4937 Commits
Author SHA1 Message Date
Rod Savard 4c41fd691a only store inheritance breaks in metadata when true 2020-03-17 06:48:00 -07:00
Kenneth Hsu 5170c6ad1d Remove unused CommonStrings class.
The last usages were removed in revision 62c75d9af9 ("Removed all
informs code (no more 1.3.x UI)").
2020-03-15 14:12:19 -07:00
Kenneth Hsu bf5ae9afac Disable false ReSharper warnings for unused properties.
These properties are referenced in the logs.
2020-03-15 12:11:10 -07:00
Kenneth Hsu 043a11967a Remove unused members from Duplicati.Library.Main.ResultClasses. 2020-03-15 12:09:13 -07:00
Kenneth Hsu 62781b508f Remove unused members from Duplicati.Library.Main.Strings. 2020-03-15 11:13:04 -07:00
Kenneth Hsu a42a0a41b6 Remove unnecessary variable assignment. 2020-03-15 09:58:14 -07:00
Kenneth Hsu 7456d12dac Revert "Ensure that IndexVolumeWriter is disposed."
Since a reference to the IndexVolumeWriter is passed to the
FileEntryItem, we should not dispose of it here.

This reverts commit b6123cc156.

This is a potential fix for issue #4130.
2020-03-15 09:53:21 -07:00
Kenneth Hsu 13e1f0dac6 Remove unused Database members. 2020-03-14 16:45:08 -07:00
Kenneth Hsu 53730b3fc1 Remove comment disabling ReSharper warning.
This warning no longer applies.
2020-03-14 14:14:44 -07:00
Kenneth Hsu 21d0247e6d Throw TimeoutException when an HTTP timeout occurs.
The HttpClient.GetAsync method throws an OperationCanceledException when
the timeout is exceeded.  In order to provide a more informative
exception, we will detect this case and throw a TimeoutException
instead.

This is related to issue #3772.
2020-03-05 12:00:23 -08:00
Sean Templeton 9739517b0a Fix bandwidth throttling inconsistency
In code the throttling generally works backwards than what one would expect.
The streams that are throttled are the streams that operate on files from the local machine.
This fixes the download throttling not working and the upload throttling applying to
both uploads and downloads.

When doing a Put operation the stream on the local machine is reading from the
local filesystem and hence the upload throttle bytes per second needs to be
applied to the reading of the stream, not the writing.

Similarly when doing a Get operation the download throttle bytes per second needs
to be applied to the writing of the stream.

Fixes #4115
2020-03-04 19:57:48 -06:00
Sean Templeton d5e064ae45 Fix a few more issues with stop now
When a backup is interrupted it will now show as a partial backup in the list of backups on the restore files page.

Temporary filelist volumes are protected from deletion in several places. All but the RestoreHandler
only protect the most recent filelist. The RestoreHandler protects all temporary filelist volumes as the user
might be restoring from one that would be deleted.

Prevent the CoCoL BackendRequests channel is retired exception from appearing when the backup is stopped by checking
if the channel is retired before trying to add the FlushRequest to the channel. Any exceptions from the BackendUploader
task will still be thrown.
2020-03-01 21:19:07 -06:00
Sean Templeton 19010e6314 Fix unexpected difference in fileset when using Stop Now
The exception could occur due to the existing delete for FilesetEntry
deleting based on volume ids, which would only match a filelist.
The bsIdsSubQuery would return BlocksetIds that should
be deleted and would delete from the FileLookup table.

FilesetEntry would then have a higher count of rows
than what would be returned by the LEFT OUTER JOINS on all of the
other tables in VerifyConsistency() since more rows had been deleted
from FileLookup.

To fix this when rows are deleted in FileLookup, use the associated metadata id
to delete from FilesetEntry and other tables based on the blockset id for the
metadata id.

Some existing delete statements were moved, none were deleted.
The existing FileLookup delete had the match on metadata id removed as
a blockset id does not equal a metadata id.
2020-03-01 18:16:33 -06:00
warwickmmandGitHub b1d1972cb8 Merge pull request #4114 from seantempleton/syntheticfilelist
Fix issue with synthetic filelist not being uploaded
2020-03-01 12:39:08 -08:00
Kenneth Hsu 197a15e032 Fix log message for retried upload operations.
The number of attempts is one (the first attempt) plus the number of
retries.
2020-03-01 12:07:05 -08:00
Sean Templeton da08be84a6 Convert VolumeID to long instead of int 2020-02-29 16:43:10 -06:00
Rod Savard 1b0f5a8cb0 add descriptive reason for usn soft failure 2020-02-25 15:34:42 -08:00
Sean Templeton 446120ae3e A synthetic filelist could not be uploaded due to the logic in UploadSyntheticFilelist. The code passing in the fileset id to the class would get the id based on if the volume was in the Temporary or Uploading states. If the volume was in the Uploading state, present on the remote backend, and of the right size it would get changed to Uploaded.
One of the first things UploadSyntheticFilelist does is throw an exception if the volume is not in the Uploaded state. Or if it is in the Uploaded state, the next check would prevent a synthetic filelist from being created if the volume was not in the Uploading or Temporary states.

Removed the check for the volume not being in the Uploaded state as the warning in the second check handles that case.

Removed the using statement as it would dispose of the FilesetVolumeWriter after passing it to the UploadChannel. The UploadChannel could not use it since it had been disposed.

Fixed the GetRemoteVolumeFromIDAsync taking a fileset id and matching it up against a volume id. Now it will use fileset id to get the volume that matches the fileset.

Change the StopNow disruption test to not use a synthetic file list. The test was written with it not working and therefore fails a check on the number of filesets after stopping a backup.

Bonus fix for a possible null exception in Dispose for VolumeWriterBase.
2020-02-23 16:50:36 -06:00
Kenneth Hsu 19303614f0 Remove unnecessary call to ToString. 2020-02-18 17:50:26 -08:00
Kenneth Hsu 7e86486f59 Fix logs for custom retention policy to show backup times.
When we modified the code in revision
68ffd86594 (pull request #4018) to
consider collections of IListResultFilesets instead of DateTimes, we
neglected to preserve the backup times in the logs.

This fixes #4109.
2020-02-18 17:50:13 -08:00
Kenneth SkovhedeandGitHub 386374a586 Merge pull request #4105 from warwickmm/fix_sqlite_interop_path
Fix path to SQLite.Interop.dll
2020-02-18 12:18:57 +01:00
Kenneth Hsu 0a91bcf662 Fix path to SQLite.Interop.dll.
This assembly lives in the win32 and win64 subdirectories, and not in
the base path.

This fixes #4093.
2020-02-17 09:34:39 -08:00
warwickmmandGitHub 44f619b725 Merge pull request #4085 from drwtsn32x/improve-usn-snapshot-fails
Improve USN and Snapshot error handling
2020-02-06 19:36:42 -08:00
Rod Savard 235f94c96f change to use custom exception class 2020-02-06 06:34:49 -08:00
Kenneth SkovhedeandGitHub cb7f4483cd Merge pull request #4065 from warwickmm/move_create_fileset_file
Move CreateFilesetFile method to FilesetVolumeWriter class
2020-02-06 08:06:28 +01:00
Kenneth SkovhedeandGitHub e1bab67d90 Merge pull request #4089 from warwickmm/ovh_keystone_v3
Update OVH backend URL to Keystone API v3
2020-02-06 08:05:56 +01:00
Kenneth SkovhedeandGitHub dfbfeda42c Merge pull request #4068 from warwickmm/remove_unused_options_members
Remove unused Options members
2020-02-06 08:05:20 +01:00
Kenneth SkovhedeandGitHub c0213b0bdd Merge pull request #4069 from warwickmm/remove_unused_backend_manager_members
Remove unused BackendManager members
2020-02-06 08:03:50 +01:00
Kenneth Hsu 4acbdb700b Update OVH backend URL to Keystone API v3.
OVH is updating the Keystone API from v2 to v3:

https://ovh.slgnt.eu/optiext/optiextension.dll?ID=dStdoW+qPGF+x+s02CEdQ_I66qw4G_Z_rqsNrzqCkOZiWQwdnmWGsZerWXZIQoWQpcyyq3Su3addd_

This fixes #4087.
2020-02-05 20:41:31 -08:00
warwickmmandGitHub 011c15ca7a Merge pull request #4084 from drwtsn32x/clean-up-options-parsing
Clean up parsing of snapshot-policy and usn-policy options
2020-02-05 19:21:18 -08:00
Rod Savard 63ddc52744 log warning not error when usn policy is On 2020-02-03 21:55:43 -08:00
Rod Savard ec8f897460 log information event when snap policy is Auto 2020-02-03 21:50:27 -08:00
Rod Savard 57d36df981 improve error msg on snapshot failure 2020-02-03 21:47:11 -08:00
Rod Savard b320c8968a clean up usn and snapshot option parsing 2020-02-03 21:19:23 -08:00
warwickmmandGitHub 1dbaf360a6 Merge pull request #4080 from drwtsn32x/improve-config-change-detection
Consider file attributes and max file size exclusions in USN hash
2020-02-02 21:29:44 -08:00
Rod Savard 247a452d2b send array of strings instead of single concatenated string 2020-02-02 20:53:09 -08:00
drwtsn32xandGitHub 6684610ee1 Merge pull request #4070 from warwickmm/add_compression_hints
Add OpenDocument draw files to compression hints
2020-02-02 16:50:29 -08:00
drwtsn32xandGitHub 0440c345da Merge pull request #4064 from warwickmm/remove_unnecessary_assignment
Remove unnecessary variable assignment
2020-02-02 16:48:31 -08:00
drwtsn32xandGitHub 5ad530ef05 Merge pull request #4063 from warwickmm/remove_string_format
Remove redundant calls to String.Format
2020-02-02 16:46:31 -08:00
Rod Savard a85c10fd8c move config hash calculation to UsnJournalService 2020-02-02 15:09:23 -08:00
Rod Savard 685c77a018 remove unused parameter 2020-02-01 23:15:26 -08:00
Rod Savard 0a9880c6cf change config hash calculation 2020-02-01 13:34:21 -08:00
Rod Savard a974310f01 if full scan occurred, do not append previous set 2020-02-01 08:12:16 -08:00
Kenneth Hsu cf16c055aa Add OpenDocument draw files to compression hints.
Closes #4059.
2020-01-26 19:24:02 -08:00
Kenneth Hsu 99b5c2d41d Remove unused Options.HasDeleteAllButN property.
The last reference was removed in revision
3b70f99722.
2020-01-26 12:54:18 -08:00
Kenneth Hsu 34f961b5e0 Remove unused Options.HasDeleteOlderThan property.
The last reference was removed in revision
3b70f99722.
2020-01-26 12:53:09 -08:00
Kenneth Hsu 4e8505e003 Remove unused Options.ParseLogLevel method.
This was introduced in revision 842fd96543
without any usages.
2020-01-26 12:51:01 -08:00
Kenneth Hsu 0c2555bde4 Remove unused Options.SetCompressionModuleDefault method.
The last reference was removed in revision
c7836ce403.
2020-01-26 10:30:48 -08:00
Kenneth Hsu 81eaaa1204 Remove unused Options.SetEncryptionModuleDefault method.
The last reference was removed in revision
c7836ce403.
2020-01-26 10:29:40 -08:00
Kenneth Hsu 855b1e2135 Remove unused Options.DEFAULT_READ_BUFFER_SIZE field.
The last reference was removed in revision
89191a6caf.
2020-01-26 10:27:39 -08:00