diff --git a/src/Akka.Persistence.Azure/Snapshot/AzureBlobSnapshotStore.cs b/src/Akka.Persistence.Azure/Snapshot/AzureBlobSnapshotStore.cs index ee23b674..8d60a489 100644 --- a/src/Akka.Persistence.Azure/Snapshot/AzureBlobSnapshotStore.cs +++ b/src/Akka.Persistence.Azure/Snapshot/AzureBlobSnapshotStore.cs @@ -260,7 +260,13 @@ protected override async Task DeleteAsync(SnapshotMetadata metadata) cts.CancelAfter(_settings.RequestTimeout); using (cts) { - await blobClient.DeleteIfExistsAsync(cancellationToken: cts.Token); + var response = await blobClient.GetPropertiesAsync(cancellationToken: cts.Token); + if (response.HasValue) + { + var timestamp = new DateTime(long.Parse(response.Value.Metadata[TimeStampMetaDataKey])); + if(timestamp <= metadata.Timestamp) + await blobClient.DeleteAsync(cancellationToken: cts.Token); + } } }