/// <inheritdoc/>
 public virtual void Purge()
 {
     Logger.LogWarning(Messages.PurgingStorage);
     // @@review -> drop & create?
     PersistedCommits.DeleteMany(Builders <BsonDocument> .Filter.Empty);
     PersistedStreamHeads.DeleteMany(Builders <BsonDocument> .Filter.Empty);
     PersistedSnapshots.DeleteMany(Builders <BsonDocument> .Filter.Empty);
 }
 /// <inheritdoc/>
 public void Purge(string bucketId)
 {
     Logger.LogWarning(Messages.PurgingBucket, bucketId);
     TryMongo(() =>
     {
         PersistedStreamHeads.DeleteMany(Builders <BsonDocument> .Filter.Eq(MongoStreamHeadFields.FullQualifiedBucketId, bucketId));
         PersistedSnapshots.DeleteMany(Builders <BsonDocument> .Filter.Eq(MongoShapshotFields.FullQualifiedBucketId, bucketId));
         PersistedCommits.DeleteMany(Builders <BsonDocument> .Filter.Eq(MongoCommitFields.BucketId, bucketId));
     });
 }
Exemplo n.º 3
0
        public void EmptyRecycleBin()
        {
            var lastCheckpointNumber = GetLastCommittedCheckPointNumber();

            TryMongo(() =>
            {
                PersistedCommits.DeleteMany(Builders <BsonDocument> .Filter.And(
                                                Builders <BsonDocument> .Filter.Eq(MongoCommitFields.BucketId, MongoSystemBuckets.RecycleBin),
                                                Builders <BsonDocument> .Filter.Lt(MongoCommitFields.CheckpointNumber, lastCheckpointNumber)
                                                ));
            });
        }