If the most recent backups were partials (and not followed by a full
backup), they should not be removed. A partial backup should only be
removed if it is followed by a full backup.
This concerns issue #3982.
We declare this to be a partial backup, with the presumption being that
a synthetic filelist is only created when a backup is interrupted.
This concerns issue #3982.
Previously, all filesets would be displayed as partial. Now, we obtain
the partial/full type from the fileset file (not the fileset.json) file
in the dlist file. If this file does not exist, the backup type
defaults fo full.
Note that this requires downloading and uncompressing the dlist file, so
performance of populating the restore list may be impacted
significantly.
This concerns issue #3982.
Previously, a yellow warning icon would be displayed but the logs did
not contain any details regarding the cause of the warning.
This concerns issue #3982.
According to the current implementation, the progress bar does not advance
when files are skipped by FilePreFilterProcess. This causes users'
confusion since the web frontend will get stuck at a certain stage for a
long time. This commit addresses this issue.
When support for parallel uploads was implemented, we overlooked a case
where a failed put of a dblock file is retried with a different
filename. In this case, an instance of TemporaryIndexVolume was created
in the DataBlockProcessor or SpillCollectorProcess prior to the
attempted put. The put would fail, and then retried with a different
filename. While the Remotevolume table in the database would reflect
the new filename, the TemporaryIndexVolume still contained a reference
to the old dblock filename. This would cause issues in direct restores,
etc., when the referenced dblock file could not be found.
Now, the TemporaryIndexVolume is only created after the dblock put has
completed.
This addresses issue #3932.
This fixes a regression introduced around revisions e0899a2a91 ("add
method to add the filelist file") and 3b5af1cf01 ("add method to add
filelist file"), where the filelist was not written by all usages of the
FilesetVolumeWriter. Previously, one would have to invoke
AddFilelistFile with each usage. Now, we simply do so when the
FilesetVolumeWriter is closed.
We also modified the UploadSyntheticFilelist so that the usage of the
FilesetVolumeWriter is contained in a using statement, which will ensure
that it is disposed.
This fixes issue #3924.