diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo/Abp/OpenIddict/AbpOpenIddictStoreOptions.cs b/modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo/Abp/OpenIddict/AbpOpenIddictStoreOptions.cs index 43343da9b8..cfc9878c86 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo/Abp/OpenIddict/AbpOpenIddictStoreOptions.cs +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo/Abp/OpenIddict/AbpOpenIddictStoreOptions.cs @@ -4,10 +4,13 @@ namespace Volo.Abp.OpenIddict; public class AbpOpenIddictStoreOptions { - public IsolationLevel? DefaultIsolationLevel { get; set; } + public IsolationLevel? PruneIsolationLevel { get; set; } + + public IsolationLevel? DeleteIsolationLevel { get; set; } public AbpOpenIddictStoreOptions() { - DefaultIsolationLevel = IsolationLevel.RepeatableRead; + PruneIsolationLevel = IsolationLevel.RepeatableRead; + DeleteIsolationLevel = IsolationLevel.Serializable; } } diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo/Abp/OpenIddict/Applications/AbpOpenIddictApplicationStore.cs b/modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo/Abp/OpenIddict/Applications/AbpOpenIddictApplicationStore.cs index db75bfa665..31c49807e2 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo/Abp/OpenIddict/Applications/AbpOpenIddictApplicationStore.cs +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo/Abp/OpenIddict/Applications/AbpOpenIddictApplicationStore.cs @@ -61,7 +61,7 @@ public class AbpOpenIddictApplicationStore : AbpOpenIddictStoreBase PruneAsync(DateTimeOffset threshold, CancellationToken cancellationToken) { - using (var uow = UnitOfWorkManager.Begin(requiresNew: true, isTransactional: true, isolationLevel: StoreOptions.Value.DefaultIsolationLevel)) + using (var uow = UnitOfWorkManager.Begin(requiresNew: true, isTransactional: true, isolationLevel: StoreOptions.Value.PruneIsolationLevel)) { var date = threshold.UtcDateTime; var count = await Repository.PruneAsync(date, cancellationToken: cancellationToken); diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo/Abp/OpenIddict/Tokens/AbpOpenIddictTokenStore.cs b/modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo/Abp/OpenIddict/Tokens/AbpOpenIddictTokenStore.cs index e8bcfff58d..c8d1f0895c 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo/Abp/OpenIddict/Tokens/AbpOpenIddictTokenStore.cs +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.Domain/Volo/Abp/OpenIddict/Tokens/AbpOpenIddictTokenStore.cs @@ -311,7 +311,7 @@ public class AbpOpenIddictTokenStore : AbpOpenIddictStoreBase PruneAsync(DateTimeOffset threshold, CancellationToken cancellationToken) { - using (var uow = UnitOfWorkManager.Begin(requiresNew: true, isTransactional: true, isolationLevel: StoreOptions.Value.DefaultIsolationLevel)) + using (var uow = UnitOfWorkManager.Begin(requiresNew: true, isTransactional: true, isolationLevel: StoreOptions.Value.PruneIsolationLevel)) { var date = threshold.UtcDateTime; var count = await Repository.PruneAsync(date, cancellationToken: cancellationToken);