Merge branch 'feature/fix_race_in_unittest'
This commit is contained in:
@@ -700,7 +700,14 @@ namespace Duplicati.Library.Main.Operation
|
||||
|
||||
m_database.BuildLookupTable(m_options);
|
||||
m_transaction = m_database.BeginTransaction();
|
||||
|
||||
var repcnt = 0;
|
||||
while(repcnt < 100 && m_database.GetRemoteVolumeID(filesetvolume.RemoteFilename) >= 0)
|
||||
filesetvolume.ResetRemoteFilename(m_options, m_database.OperationTimestamp.AddSeconds(repcnt++));
|
||||
|
||||
if (m_database.GetRemoteVolumeID(filesetvolume.RemoteFilename) >= 0)
|
||||
throw new Exception("Unable to generate a unique fileset name");
|
||||
|
||||
m_result.OperationProgressUpdater.UpdatePhase(OperationPhase.Backup_ProcessingFiles);
|
||||
var filesetvolumeid = m_database.RegisterRemoteVolume(filesetvolume.RemoteFilename, RemoteVolumeType.Files, RemoteVolumeState.Temporary, m_transaction);
|
||||
m_database.CreateFileset(filesetvolumeid, VolumeBase.ParseFilename(filesetvolume.RemoteFilename).Time, m_transaction);
|
||||
|
||||
@@ -40,12 +40,17 @@ namespace Duplicati.Library.Main.Volumes
|
||||
|
||||
}
|
||||
|
||||
public void ResetRemoteFilename(Options options, DateTime timestamp)
|
||||
{
|
||||
m_volumename = GenerateFilename(this.FileType, options.Prefix, GenerateGuid(options), timestamp, options.CompressionModule, options.NoEncryption ? null : options.EncryptionModule);
|
||||
}
|
||||
|
||||
public VolumeWriterBase(Options options, DateTime timestamp)
|
||||
: base(options)
|
||||
{
|
||||
m_localfile = new Library.Utility.TempFile();
|
||||
|
||||
m_volumename = GenerateFilename(this.FileType, options.Prefix, GenerateGuid(options), timestamp, options.CompressionModule, options.NoEncryption ? null : options.EncryptionModule);
|
||||
ResetRemoteFilename(options, timestamp);
|
||||
m_compression = DynamicLoader.CompressionLoader.GetModule(options.CompressionModule, m_localfile, options.RawOptions);
|
||||
|
||||
if(m_compression == null)
|
||||
|
||||
Reference in New Issue
Block a user