/// <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)); }); }
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) )); }); }