Activities of "zhongfang"

Question
  • ABP Framework version: v4.3.3

  • UI type: Blazor (Server Side)

  • DB provider: EF Core

  • Tiered (MVC) or Identity Server Separated (Angular): yes

  • Exception message and stack trace: [2021-12-07T03:00:03.979Z] Error: Volo.Abp.AbpException: Setting value for 'Abp.Mailing.DefaultFromAddress' is null or empty! at Volo.Abp.Emailing.EmailSenderConfiguration.GetNotEmptySettingValueAsync(String name) at Volo.Abp.Emailing.EmailSenderBase.NormalizeMailAsync(MailMessage mail) at Volo.Abp.Emailing.EmailSenderBase.SendAsync(MailMessage mail, Boolean normalize) at Volo.Abp.Emailing.EmailSenderBase.SendAsync(String to, String subject, String body, Boolean isBodyHtml)

  • Steps to reproduce the issue:" 1)get encypted password in debug mode. 2)store setting values in appsettings.json as follow "Settings": { "Abp.Localization.DefaultLanguage": "zh-Hans", "Volo.Abp.LeptonTheme.Style": "Style6", "Volo.Abp.LeptonTheme.Layout.MenuPlacement": "Top", "Volo.Abp.LeptonTheme.Layout.MenuStatus": "AlwaysOpened", "Volo.Abp.LeptonTheme.Layout.Boxed": "False", "Abp.Mailing.Smtp.Host": "smtp.exmail.qq.com", "Abp.Mailing.Smtp.Port": "465", "Abp.Mailing.Smtp.UserName": "no-reply@.com", "Abp.Mailing.Smtp.Password": "w8rSB5k/dFA==", "Abp.Mailing.Smtp.Domain": "", "Abp.Mailing.Smtp.EnableSsl": "true", "Abp.Mailing.Smtp.UseDefaultCredentials": "false", "Abp.Mailing.DefaultFromAddress": "no-reply@.com", "Abp.Mailing.DefaultFromDisplayName": "" } 3)prepare an empty Blazor razor page as below public partial class SendEmail { private readonly IEmailSender _emailSender; public SendEmail( IEmailSender emailSender) { _emailSender = emailSender; } protected override async Task OnInitializedAsync() { await this.SendTest(); }

      public async Task SendTest()
      {
          await _emailSender.SendAsync("****@qq.com",
              "测试",
              "正文内容.....");
      }
    

    } 4) in olde project ,got an exception as step 2. 5) I create a new solution via ABP suite 4.3.3, Blazor Server Side Application. with no error. but I can not receive the mail.

  1. the ABP version is 4.3.3, too.
  2. the new project is 4.3.3, too.
  3. the logs of the new project (no error, no mail) is: 2021-12-07 14:39:21.176 +08:00 [INF] Authorization failed. These requirements were not met: PermissionRequirement: SettingManagement.Emailing 2021-12-07 14:39:21.177 +08:00 [INF] Authorization failed. These requirements were not met: PermissionRequirement: AbpAccount.SettingManagement 2021-12-07 14:39:21.177 +08:00 [INF] Authorization failed. These requirements were not met: PermissionRequirement: AbpIdentity.SettingManagement 2021-12-07 14:39:21.178 +08:00 [INF] Authorization failed. These requirements were not met: PermissionRequirement: LeptonThemeManagement.Settings 2021-12-07 14:39:21.246 +08:00 [INF] Authorization failed. These requirements were not met: DenyAnonymousAuthorizationRequirement: Requires an authenticated user. 2021-12-07 14:39:21.261 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44313/images/logo/logo-light.png - - 2021-12-07 14:39:21.261 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44313/libs/flag-icon-css/flags/1x1/gb.svg - - 2021-12-07 14:39:21.261 +08:00 [INF] The file /images/logo/logo-light.png was not modified 2021-12-07 14:39:21.262 +08:00 [INF] The file /libs/flag-icon-css/flags/1x1/gb.svg was not modified 2021-12-07 14:39:21.262 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44313/images/logo/logo-light.png - - - 304 - image/png 0.5777ms 2021-12-07 14:39:21.262 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44313/libs/flag-icon-css/flags/1x1/gb.svg - - - 304 - image/svg+xml 0.3216ms 2021-12-07 14:40:21.339 +08:00 [WRN] Unhandled exception rendering component: Syntax error, command unrecognized. The server response was: System.Net.Mail.SmtpException: Syntax error, command unrecognized. The server response was: at System.Net.Mail.SmtpConnection.ConnectAndHandshakeAsyncResult.End(IAsyncResult result) at System.Net.Mail.SmtpClient.ConnectCallback(IAsyncResult result) --- End of stack trace from previous location --- at Volo.Abp.Emailing.Smtp.SmtpEmailSender.SendEmailAsync(MailMessage mail) at Volo.Abp.Emailing.EmailSenderBase.SendAsync(MailMessage mail, Boolean normalize) at Volo.Abp.Emailing.EmailSenderBase.SendAsync(String to, String subject, String body, Boolean isBodyHtml) at Demo433.Blazor.Pages.Test.SendEmail.SendTest() in C:\dev\gitlab\Demo433\aspnet-core\src\Demo433.Blazor\Pages\Test\SendEmail.razor.cs:line 24 at Demo433.Blazor.Pages.Test.SendEmail.OnInitializedAsync() in C:\dev\gitlab\Demo433\aspnet-core\src\Demo433.Blazor\Pages\Test\SendEmail.razor.cs:line 19 at Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync() at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle) 2021-12-07 14:40:21.348 +08:00 [ERR] Unhandled exception in circuit 'kwUp1jmtH_Rc6-MDm2vn3Xykyz2QDXAFIZQT4z2Fwfw'. System.Net.Mail.SmtpException: Syntax error, command unrecognized. The server response was: at System.Net.Mail.SmtpConnection.ConnectAndHandshakeAsyncResult.End(IAsyncResult result) at System.Net.Mail.SmtpClient.ConnectCallback(IAsyncResult result) --- End of stack trace from previous location --- at Volo.Abp.Emailing.Smtp.SmtpEmailSender.SendEmailAsync(MailMessage mail) at Volo.Abp.Emailing.EmailSenderBase.SendAsync(MailMessage mail, Boolean normalize) at Volo.Abp.Emailing.EmailSenderBase.SendAsync(String to, String subject, String body, Boolean isBodyHtml) at Demo433.Blazor.Pages.Test.SendEmail.SendTest() in C:\dev\gitlab\Demo433\aspnet-core\src\Demo433.Blazor\Pages\Test\SendEmail.razor.cs:line 24 at Demo433.Blazor.Pages.Test.SendEmail.OnInitializedAsync() in C:\dev\gitlab\Demo433\aspnet-core\src\Demo433.Blazor\Pages\Test\SendEmail.razor.cs:line 19 at Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync() at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle) 2021-12-07 14:40:21.368 +08:00 [INF] Executed endpoint '/_blazor' 2021-12-07 14:40:21.368 +08:00 [INF] Request finished HTTP/1.1 GET https://localhost:44313/_blazor?id=ehsPS3cBwAdsduTL_unX1w - - - 101 - - 60206.4197ms 2021-12-07 14:40:43.449 +08:00 [INF] Request starting HTTP/2 POST https://localhost:44313/_blazor/disconnect multipart/form-data;+boundary=---------------------------4834409823873905815870511039 393 2021-12-07 14:40:43.452 +08:00 [INF] No CORS policy found for the specified request. 2021-12-07 14:40:43.452 +08:00 [INF] Executing endpoint 'Blazor disconnect' 2021-12-07 14:40:43.453 +08:00 [INF] Executed endpoint 'Blazor disconnect' 2021-12-07 14:40:43.453 +08:00 [INF] Request finished HTTP/2 POST https://localhost:44313/_blazor/disconnect multipart/form-data;+boundary=---------------------------4834409823873905815870511039 393 - 200 0 - 3.4877ms

In new project (4.3.3), I changed the setting value of "UseDefaultCredentials" from "true" to "yes". I got new exception as below

2021-12-07 14:42:55.020 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44313/images/logo/logo-light.png - -
2021-12-07 14:42:55.020 +08:00 [INF] The file /images/logo/logo-light.png was not modified
2021-12-07 14:42:55.021 +08:00 [INF] Request starting HTTP/2 GET https://localhost:44313/libs/flag-icon-css/flags/1x1/gb.svg - -
2021-12-07 14:42:55.021 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44313/images/logo/logo-light.png - - - 304 - image/png 1.8345ms
2021-12-07 14:42:55.022 +08:00 [INF] The file /libs/flag-icon-css/flags/1x1/gb.svg was not modified
2021-12-07 14:42:55.022 +08:00 [INF] Request finished HTTP/2 GET https://localhost:44313/libs/flag-icon-css/flags/1x1/gb.svg - - - 304 - image/svg+xml 0.9580ms
2021-12-07 14:43:55.081 +08:00 [WRN] Unhandled exception rendering component: Syntax error, command unrecognized. The server response was: 
System.Net.Mail.SmtpException: Syntax error, command unrecognized. The server response was: 
   at System.Net.Mail.SmtpConnection.ConnectAndHandshakeAsyncResult.End(IAsyncResult result)
   at System.Net.Mail.SmtpClient.ConnectCallback(IAsyncResult result)
--- End of stack trace from previous location ---
   at Volo.Abp.Emailing.Smtp.SmtpEmailSender.SendEmailAsync(MailMessage mail)
   at Volo.Abp.Emailing.EmailSenderBase.SendAsync(MailMessage mail, Boolean normalize)
   at Volo.Abp.Emailing.EmailSenderBase.SendAsync(String to, String subject, String body, Boolean isBodyHtml)
   at Demo433.Blazor.Pages.Test.SendEmail.SendTest() in C:\dev\gitlab\Demo433\aspnet-core\src\Demo433.Blazor\Pages\Test\SendEmail.razor.cs:line 24
   at Demo433.Blazor.Pages.Test.SendEmail.OnInitializedAsync() in C:\dev\gitlab\Demo433\aspnet-core\src\Demo433.Blazor\Pages\Test\SendEmail.razor.cs:line 19
   at Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync()
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle)
2021-12-07 14:43:55.086 +08:00 [ERR] Unhandled exception in circuit 'Z-ckYB7CxK-4rit3lI4lU8efC-nRB7_EBhVTR5INWf8'.
System.Net.Mail.SmtpException: Syntax error, command unrecognized. The server response was: 
   at System.Net.Mail.SmtpConnection.ConnectAndHandshakeAsyncResult.End(IAsyncResult result)
   at System.Net.Mail.SmtpClient.ConnectCallback(IAsyncResult result)
--- End of stack trace from previous location ---
   at Volo.Abp.Emailing.Smtp.SmtpEmailSender.SendEmailAsync(MailMessage mail)
   at Volo.Abp.Emailing.EmailSenderBase.SendAsync(MailMessage mail, Boolean normalize)
   at Volo.Abp.Emailing.EmailSenderBase.SendAsync(String to, String subject, String body, Boolean isBodyHtml)
   at Demo433.Blazor.Pages.Test.SendEmail.SendTest() in C:\dev\gitlab\Demo433\aspnet-core\src\Demo433.Blazor\Pages\Test\SendEmail.razor.cs:line 24
   at Demo433.Blazor.Pages.Test.SendEmail.OnInitializedAsync() in C:\dev\gitlab\Demo433\aspnet-core\src\Demo433.Blazor\Pages\Test\SendEmail.razor.cs:line 19
   at Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync()
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle)
2021-12-07 14:43:55.242 +08:00 [INF] Executed endpoint '/_blazor'
2021-12-07 14:43:55.242 +08:00 [INF] Request finished HTTP/1.1 GET https://localhost:44313/_blazor?id=Gi7V50X6Age10rvWYS56cA - - - 101 - - 60354.8596ms
2021-12-07 14:44:48.678 +08:00 [DBG] Stopped background worker: Volo.Abp.BackgroundJobs.BackgroundJobWorker
2021-12-07 14:44:48.678 +08:00 [DBG] Stopped background worker: Volo.Abp.IdentityServer.Tokens.TokenCleanupBackgroundWorker
2021-12-07 14:44:48.678 +08:00 [INF] Application is shutting down...

Now, I changed a mail provider. Use port 25 with no SSL The I send email successfully in NEW blank Project. If I use port 465 with SSL enabled. It can not send email.

But still get same error in old project.

2021-12-07 16:16:27.331 +08:00 [INF] Request finished HTTP/2 POST https://localhost:44314/_blazor/negotiate?negotiateVersion=1 text/plain;charset=UTF-8 0 - 200 316 application/json 2.3743ms
2021-12-07 16:16:27.397 +08:00 [INF] Request starting HTTP/1.1 GET https://localhost:44314/_blazor?id=rkA99C1LoRKNTZGVyxkcbQ - -
2021-12-07 16:16:27.399 +08:00 [INF] Executing endpoint '/_blazor'
2021-12-07 16:16:27.435 +08:00 [INF] Authorization failed. These requirements were not met:
PermissionRequirement: SettingManagement.Emailing
2021-12-07 16:16:27.436 +08:00 [INF] Authorization failed. These requirements were not met:
PermissionRequirement: AbpAccount.SettingManagement
2021-12-07 16:16:27.436 +08:00 [INF] Authorization failed. These requirements were not met:
PermissionRequirement: AbpIdentity.SettingManagement
2021-12-07 16:16:27.436 +08:00 [INF] Authorization failed. These requirements were not met:
PermissionRequirement: LeptonThemeManagement.Settings
2021-12-07 16:16:27.463 +08:00 [INF] Authorization failed. These requirements were not met:
PermissionRequirement: SettingManagement.Emailing
2021-12-07 16:16:27.464 +08:00 [INF] Authorization failed. These requirements were not met:
PermissionRequirement: CmsKit.SettingManagement
2021-12-07 16:16:27.534 +08:00 [WRN] Unhandled exception rendering component: Setting value for 'Abp.Mailing.DefaultFromAddress' is null or empty!
Volo.Abp.AbpException: Setting value for 'Abp.Mailing.DefaultFromAddress' is null or empty!
   at Volo.Abp.Emailing.EmailSenderConfiguration.GetNotEmptySettingValueAsync(String name)
   at Volo.Abp.Emailing.EmailSenderBase.NormalizeMailAsync(MailMessage mail)
   at Volo.Abp.Emailing.EmailSenderBase.SendAsync(MailMessage mail, Boolean normalize)
   at Volo.Abp.Emailing.EmailSenderBase.SendAsync(String to, String subject, String body, Boolean isBodyHtml)
   at Yee.Change.Brain.Blazor.Pages.Test.SendEmail.SendTest() in C:\dev\gitlab\brain\src\Yee.Change.Brain.Blazor\Pages\Test\SendEmail.razor.cs:line 24
   at Yee.Change.Brain.Blazor.Pages.Test.SendEmail.OnInitializedAsync() in C:\dev\gitlab\brain\src\Yee.Change.Brain.Blazor\Pages\Test\SendEmail.razor.cs:line 19
   at Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync()
2021-12-07 16:16:27.543 +08:00 [ERR] Unhandled exception in circuit 'yITQ9Kj0Ksm4paz4ASdjsAZ-GQLWBaLiV9xulv8L27I'.
Volo.Abp.AbpException: Setting value for 'Abp.Mailing.DefaultFromAddress' is null or empty!
   at Volo.Abp.Emailing.EmailSenderConfiguration.GetNotEmptySettingValueAsync(String name)
   at Volo.Abp.Emailing.EmailSenderBase.NormalizeMailAsync(MailMessage mail)
   at Volo.Abp.Emailing.EmailSenderBase.SendAsync(MailMessage mail, Boolean normalize)
   at Volo.Abp.Emailing.EmailSenderBase.SendAsync(String to, String subject, String body, Boolean isBodyHtml)
   at Yee.Change.Brain.Blazor.Pages.Test.SendEmail.SendTest() in C:\dev\gitlab\brain\src\Yee.Change.Brain.Blazor\Pages\Test\SendEmail.razor.cs:line 24
   at Yee.Change.Brain.Blazor.Pages.Test.SendEmail.OnInitializedAsync() in C:\dev\gitlab\brain\src\Yee.Change.Brain.Blazor\Pages\Test\SendEmail.razor.cs:line 19
   at Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync()
2021-12-07 16:16:27.555 +08:00 [INF] Authorization failed. These requirements were not met:
DenyAnonymousAuthorizationRequirement: Requires an authenticated user.
2021-12-07 16:16:27.561 +08:00 [INF] Executed endpoint '/_blazor'
2021-12-07 16:16:27.562 +08:00 [INF] Request finished HTTP/1.1 GET https://localhost:44314/_blazor?id=rkA99C1LoRKNTZGVyxkcbQ - - - 101 - - 164.3937ms

Now, I removed setting values from appsettings.json in all projects which is Blazor, HttpApi.Host. Only configure the value via Blazor UI. Then I restart the computer. Still got the same Exception.

  • ABP Framework version: v5.0.0
  • UI type: Blazor (Server Side)
  • DB provider: EF Core / SqlServer
  • Tiered (MVC) or Identity Server Separated (Angular): yes
  • Exception message and stack trace:
[22:40:25 DBG] Login Return Url Parameter: ReturnUrl
[22:40:25 DBG] Logout Url: /Account/Logout
[22:40:25 DBG] ConsentUrl Url: /Consent
[22:40:25 DBG] Consent Return Url Parameter: returnUrl
[22:40:25 DBG] Error Url: /Account/Error
[22:40:25 DBG] Error Id Parameter: errorId
[22:40:25 WRN] The operation was canceled.
System.OperationCanceledException: The operation was canceled.
   at System.Threading.CancellationToken.ThrowOperationCanceledException()
   at System.Threading.CancellationToken.ThrowIfCancellationRequested()
   at Microsoft.Extensions.Caching.StackExchangeRedis.RedisCache.GetAsync(String key, CancellationToken token)
   at Volo.Abp.Caching.DistributedCache`2.GetAsync(TCacheKey key, Nullable`1 hideErrors, Boolean considerUow, CancellationToken token)
[22:40:25 INF] Entity Framework Core 6.0.0 initialized 'SettingManagementDbContext' using provider 'Microsoft.EntityFrameworkCore.SqlServer:6.0.0' with options: QuerySplittingBehavior=SplitQuery
[22:40:25 ERR] An error occurred using the connection to database 'Rms_Main6' on server '(local)'.
[22:40:25 ERR] An exception occurred while iterating over the results of a query for context type 'Volo.Abp.SettingManagement.EntityFrameworkCore.SettingManagementDbContext'.
System.Threading.Tasks.TaskCanceledException: A task was canceled.
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenInternalAsync(Boolean errorsExpected, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenInternalAsync(Boolean errorsExpected, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenAsync(CancellationToken cancellationToken, Boolean errorsExpected)
   at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReaderAsync(RelationalCommandParameterObject parameterObject, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Query.Internal.SplitQueryingEnumerable`1.AsyncEnumerator.InitializeReaderAsync(AsyncEnumerator enumerator, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerExecutionStrategy.ExecuteAsync[TState,TResult](TState state, Func`4 operation, Func`4 verifySucceeded, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Query.Internal.SplitQueryingEnumerable`1.AsyncEnumerator.MoveNextAsync()
System.Threading.Tasks.TaskCanceledException: A task was canceled.
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenInternalAsync(Boolean errorsExpected, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenInternalAsync(Boolean errorsExpected, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenAsync(CancellationToken cancellationToken, Boolean errorsExpected)
   at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReaderAsync(RelationalCommandParameterObject parameterObject, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Query.Internal.SplitQueryingEnumerable`1.AsyncEnumerator.InitializeReaderAsync(AsyncEnumerator enumerator, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerExecutionStrategy.ExecuteAsync[TState,TResult](TState state, Func`4 operation, Func`4 verifySucceeded, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Query.Internal.SplitQueryingEnumerable`1.AsyncEnumerator.MoveNextAsync()
   at Microsoft.EntityFrameworkCore.EntityFrameworkQueryableExtensions.ToListAsync[TSource](IQueryable`1 source, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.EntityFrameworkQueryableExtensions.ToListAsync[TSource](IQueryable`1 source, CancellationToken cancellationToken)
   at Volo.Abp.SettingManagement.EntityFrameworkCore.EfCoreSettingRepository.GetListAsync(String providerName, String providerKey, CancellationToken cancellationToken)
   at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
   at Volo.Abp.Uow.UnitOfWorkInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
   at Volo.Abp.SettingManagement.SettingManagementStore.SetCacheItemsAsync(String providerName, String providerKey, String currentName, SettingCacheItem currentCacheItem)
   at Volo.Abp.SettingManagement.SettingManagementStore.GetCacheItemAsync(String name, String providerName, String providerKey)
   at Volo.Abp.SettingManagement.SettingManagementStore.GetOrNullAsync(String name, String providerName, String providerKey)
   at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
   at Volo.Abp.Uow.UnitOfWorkInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
   at Volo.Abp.Settings.TenantSettingValueProvider.GetOrNullAsync(SettingDefinition setting)
   at Volo.Abp.Settings.SettingProvider.GetOrNullValueFromProvidersAsync(IEnumerable`1 providers, SettingDefinition setting)
   at Volo.Abp.Settings.SettingProvider.GetOrNullAsync(String name)
   at Microsoft.AspNetCore.RequestLocalization.DefaultAbpRequestLocalizationOptionsProvider.GetLocalizationOptionsAsync()
   at Microsoft.AspNetCore.RequestLocalization.AbpRequestLocalizationMiddleware.InvokeAsync(HttpContext context, RequestDelegate next)
   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass6_1.<<UseMiddlewareInterface>b__1>d.MoveNext()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Builder.ApplicationBuilderAbpJwtTokenMiddlewareExtension.<>c__DisplayClass0_0.<<UseJwtTokenMiddleware>b__0>d.MoveNext()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
   at Volo.Abp.AspNetCore.Tracing.AbpCorrelationIdMiddleware.InvokeAsync(HttpContext context, RequestDelegate next)
   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass6_1.<<UseMiddlewareInterface>b__1>d.MoveNext()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Watch.BrowserRefresh.BrowserRefreshMiddleware.InvokeAsync(HttpContext context)
[22:40:25 ERR] Connection id "0HMDVR3A9T76B", Request id "0HMDVR3A9T76B:00000011": An unhandled exception was thrown by the application.
System.Threading.Tasks.TaskCanceledException: A task was canceled.
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenInternalAsync(Boolean errorsExpected, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenInternalAsync(Boolean errorsExpected, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenAsync(CancellationToken cancellationToken, Boolean errorsExpected)
   at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReaderAsync(RelationalCommandParameterObject parameterObject, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Query.Internal.SplitQueryingEnumerable`1.AsyncEnumerator.InitializeReaderAsync(AsyncEnumerator enumerator, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerExecutionStrategy.ExecuteAsync[TState,TResult](TState state, Func`4 operation, Func`4 verifySucceeded, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Query.Internal.SplitQueryingEnumerable`1.AsyncEnumerator.MoveNextAsync()
   at Microsoft.EntityFrameworkCore.EntityFrameworkQueryableExtensions.ToListAsync[TSource](IQueryable`1 source, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.EntityFrameworkQueryableExtensions.ToListAsync[TSource](IQueryable`1 source, CancellationToken cancellationToken)
   at Volo.Abp.SettingManagement.EntityFrameworkCore.EfCoreSettingRepository.GetListAsync(String providerName, String providerKey, CancellationToken cancellationToken)
   at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
   at Volo.Abp.Uow.UnitOfWorkInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
  • Steps to reproduce the issue:" 1)Start ABP Suite; 2)Create a new Module withe the name is "Rms" 3)Open solution with Visual Studio 2022 4)Open shell over IdentityServer 5)Run command dotnet ef database update 6)Debug only Identity Server project.

Sometimes, I start the project. I see below exception on command line.

[10:25:44 WRN] ERR Error running script (call to f_3915ee22fda531a1d5661f2523d0443fd35ff0a4): @user_script:2: @user_script: 2: Wrong number of args calling Redis command From Lua script
StackExchange.Redis.RedisServerException: ERR Error running script (call to f_3915ee22fda531a1d5661f2523d0443fd35ff0a4): @user_script:2: @user_script: 2: Wrong number of args calling Redis command From Lua script
   at Volo.Abp.Caching.StackExchangeRedis.AbpRedisCache.SetManyAsync(IEnumerable`1 items, DistributedCacheEntryOptions options, CancellationToken token)
   at Volo.Abp.Caching.DistributedCache`2.&lt;&gt;c__DisplayClass54_0.&lt;&lt;SetManyAsync&gt;g__SetRealCache|0>d.MoveNext()
[10:25:44 WRN] ERR Error running script (call to f_3915ee22fda531a1d5661f2523d0443fd35ff0a4): @user_script:2: @user_script: 2: Wrong number of args calling Redis command From Lua script
StackExchange.Redis.RedisServerException: ERR Error running script (call to f_3915ee22fda531a1d5661f2523d0443fd35ff0a4): @user_script:2: @user_script: 2: Wrong number of args calling Redis command From Lua script
   at Volo.Abp.Caching.StackExchangeRedis.AbpRedisCache.SetManyAsync(IEnumerable`1 items, DistributedCacheEntryOptions options, CancellationToken token)
   at Volo.Abp.Caching.DistributedCache`2.&lt;&gt;c__DisplayClass54_0.&lt;&lt;SetManyAsync&gt;g__SetRealCache|0>d.MoveNext()
[10:25:44 INF] Initialized all ABP modules.
[10:25:44 INF] Now listening on: https://localhost:44330
[10:25:44 INF] Application started. Press Ctrl+C to shut down.
[10:25:44 INF] Hosting environment: Development
[10:25:44 INF] Content root path: D:\dev\gitlab\abp6\modules\Yee.Change.Rms\host\Yee.Change.Rms.IdentityServer
[10:25:45 INF] Request starting HTTP/2 GET https://localhost:44330/ - -
[10:25:45 ERR] Connection id "0HME07DEID4R4", Request id "0HME07DEID4R4:0000000F": An unhandled exception was thrown by the application.
System.InvalidOperationException: Cannot find compilation library location for package 'ConfigureAwait.Fody'
   at Microsoft.Extensions.DependencyModel.CompilationLibrary.ResolveReferencePaths(ICompilationAssemblyResolver resolver, List`1 assemblies)
   at Microsoft.Extensions.DependencyModel.CompilationLibrary.ResolveReferencePaths()
   at Microsoft.AspNetCore.Mvc.ApplicationParts.AssemblyPartExtensions.<>c.<GetReferencePaths>b__0_0(CompilationLibrary library)
   at System.Linq.Enumerable.SelectManySingleSelectorIterator`2.MoveNext()
   at System.Collections.Generic.List`1.InsertRange(Int32 index, IEnumerable`1 collection)
   at Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.RazorReferenceManager.GetReferencePaths()
   at Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.RazorReferenceManager.GetCompilationReferences()
   at System.Threading.LazyInitializer.EnsureInitializedCore[T](T& target, Boolean& initialized, Object& syncLock, Func`1 valueFactory)
   at System.Threading.LazyInitializer.EnsureInitialized[T](T& target, Boolean& initialized, Object& syncLock, Func`1 valueFactory)
   at Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.RazorReferenceManager.get_CompilationReferences()
   at Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.LazyMetadataReferenceFeature.get_References()
   at Microsoft.CodeAnalysis.Razor.CompilationTagHelperFeature.GetDescriptors()
   at Microsoft.AspNetCore.Razor.Language.DefaultRazorTagHelperBinderPhase.ExecuteCore(RazorCodeDocument codeDocument)
   at Microsoft.AspNetCore.Razor.Language.RazorEnginePhaseBase.Execute(RazorCodeDocument codeDocument)
   at Microsoft.AspNetCore.Razor.Language.DefaultRazorEngine.Process(RazorCodeDocument document)
   at Microsoft.AspNetCore.Razor.Language.DefaultRazorProjectEngine.ProcessCore(RazorCodeDocument codeDocument)
   at Microsoft.AspNetCore.Razor.Language.RazorProjectEngine.Process(RazorProjectItem projectItem)
   at Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.RuntimeViewCompiler.CompileAndEmit(String relativePath)
   at Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.RuntimeViewCompiler.OnCacheMiss(String normalizedPath)
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.DefaultPageLoader.LoadAsyncCore(PageActionDescriptor actionDescriptor, EndpointMetadataCollection endpointMetadata)
   at Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.PageLoaderMatcherPolicy.ApplyAsyncAwaited(CandidateSet candidates, Task`1 actionDescriptorTask, Int32 index)

[10:39:13 INF] Starting web host.
[10:39:21 INF] User profile is available. Using 'C:\Users\David\AppData\Local\ASP.NET\DataProtection-Keys' as key repository and Windows DPAPI to encrypt keys at rest.
[10:39:21 INF] Loaded ABP modules:
[10:39:21 INF] - Yee.Change.Rms.RmsIdentityServerModule
[10:39:21 INF]   - Volo.Abp.Account.Web.AbpAccountPublicWebIdentityServerModule
[10:39:21 INF]     - Volo.Abp.Account.Public.Web.AbpAccountPublicWebModule
[10:39:21 INF]       - Volo.Abp.ExceptionHandling.AbpExceptionHandlingModule
[10:39:21 INF]         - Volo.Abp.Localization.AbpLocalizationModule
[10:39:21 INF]           - Volo.Abp.VirtualFileSystem.AbpVirtualFileSystemModule
[10:39:21 INF]           - Volo.Abp.Settings.AbpSettingsModule
[10:39:21 INF]             - Volo.Abp.Localization.AbpLocalizationAbstractionsModule
[10:39:21 INF]             - Volo.Abp.Security.AbpSecurityModule
[10:39:21 INF]             - Volo.Abp.MultiTenancy.AbpMultiTenancyModule
[10:39:21 INF]               - Volo.Abp.Data.AbpDataModule
[10:39:21 INF]                 - Volo.Abp.ObjectExtending.AbpObjectExtendingModule
[10:39:21 INF]                   - Volo.Abp.Validation.AbpValidationAbstractionsModule
[10:39:21 INF]                 - Volo.Abp.Uow.AbpUnitOfWorkModule
[10:39:21 INF]                 - Volo.Abp.EventBus.Abstractions.AbpEventBusAbstractionsModule
[10:39:21 INF]       - Volo.Abp.Identity.AspNetCore.AbpIdentityAspNetCoreModule
[10:39:21 INF]         - Volo.Abp.Identity.AbpIdentityDomainModule
[10:39:21 INF]           - Volo.Abp.Domain.AbpDddDomainModule
[10:39:21 INF]             - Volo.Abp.Auditing.AbpAuditingModule
[10:39:21 INF]               - Volo.Abp.Json.AbpJsonModule
[10:39:21 INF]                 - Volo.Abp.Timing.AbpTimingModule
[10:39:21 INF]               - Volo.Abp.Threading.AbpThreadingModule
[10:39:21 INF]               - Volo.Abp.Auditing.AbpAuditingContractsModule
[10:39:21 INF]             - Volo.Abp.EventBus.AbpEventBusModule
[10:39:21 INF]               - Volo.Abp.Guids.AbpGuidsModule
[10:39:21 INF]               - Volo.Abp.BackgroundWorkers.AbpBackgroundWorkersModule
[10:39:21 INF]               - Volo.Abp.DistributedLocking.AbpDistributedLockingAbstractionsModule
[10:39:21 INF]             - Volo.Abp.ObjectMapping.AbpObjectMappingModule
[10:39:21 INF]             - Volo.Abp.Specifications.AbpSpecificationsModule
[10:39:21 INF]           - Volo.Abp.Identity.AbpIdentityDomainSharedModule
[10:39:21 INF]             - Volo.Abp.Users.AbpUsersDomainSharedModule
[10:39:21 INF]             - Volo.Abp.Validation.AbpValidationModule
[10:39:21 INF]             - Volo.Abp.Features.AbpFeaturesModule
[10:39:21 INF]               - Volo.Abp.Authorization.AbpAuthorizationAbstractionsModule
[10:39:21 INF]           - Volo.Abp.Users.AbpUsersDomainModule
[10:39:21 INF]             - Volo.Abp.Users.AbpUsersAbstractionModule
[10:39:21 INF]           - Volo.Abp.AutoMapper.AbpAutoMapperModule
[10:39:21 INF]       - Volo.Abp.Sms.AbpSmsModule

I have tried the bat and run app with debug mode.

Just the same result as before.

UPDATE [IdentityServerClients] SET [AbsoluteRefreshTokenLifetime] = @p117, [AccessTokenLifetime] = @p118, [AccessTokenType] = @p119, [AllowAccessTokensViaBrowser] = @p120, [AllowOfflineAccess] = @p121, [AllowPlainTextPkce] = @p122, [AllowRememberConsent] = @p123, [AllowedIdentityTokenSigningAlgorithms] = @p124, [AlwaysIncludeUserClaimsInIdToken] = @p125, [AlwaysSendClientClaims] = @p126, [AuthorizationCodeLifetime] = @p127, [BackChannelLogoutSessionRequired] = @p128, [BackChannelLogoutUri] = @p129, [ClientClaimsPrefix] = @p130, [ClientId] = @p131, [ClientName] = @p132, [ClientUri] = @p133, [ConcurrencyStamp] = @p134, [ConsentLifetime] = @p135, [CreationTime] = @p136, [CreatorId] = @p137, [DeleterId] = @p138, [DeletionTime] = @p139, [Description] = @p140, [DeviceCodeLifetime] = @p141, [EnableLocalLogin] = @p142, [Enabled] = @p143, [ExtraProperties] = @p144, [FrontChannelLogoutSessionRequired] = @p145, [FrontChannelLogoutUri] = @p146, [IdentityTokenLifetime] = @p147, [IncludeJwtId] = @p148, [IsDeleted] = @p149, [LastModificationTime] = @p150, [LastModifierId] = @p151, [LogoUri] = @p152, [PairWiseSubjectSalt] = @p153, [ProtocolType] = @p154, [RefreshTokenExpiration] = @p155, [RefreshTokenUsage] = @p156, [RequireClientSecret] = @p157, [RequireConsent] = @p158, [RequirePkce] = @p159, [RequireRequestObject] = @p160, [SlidingRefreshTokenLifetime] = @p161, [UpdateAccessTokenClaimsOnRefresh] = @p162, [UserCodeType] = @p163, [UserSsoLifetime] = @p164
WHERE [Id] = @p165 AND [ConcurrencyStamp] = @p166;
SELECT @@ROWCOUNT;

UPDATE [IdentityServerClients] SET [AbsoluteRefreshTokenLifetime] = @p167, [AccessTokenLifetime] = @p168, [AccessTokenType] = @p169, [AllowAccessTokensViaBrowser] = @p170, [AllowOfflineAccess] = @p171, [AllowPlainTextPkce] = @p172, [AllowRememberConsent] = @p173, [AllowedIdentityTokenSigningAlgorithms] = @p174, [AlwaysIncludeUserClaimsInIdToken] = @p175, [AlwaysSendClientClaims] = @p176, [AuthorizationCodeLifetime] = @p177, [BackChannelLogoutSessionRequired] = @p178, [BackChannelLogoutUri] = @p179, [ClientClaimsPrefix] = @p180, [ClientId] = @p181, [ClientName] = @p182, [ClientUri] = @p183, [ConcurrencyStamp] = @p184, [ConsentLifetime] = @p185, [CreationTime] = @p186, [CreatorId] = @p187, [DeleterId] = @p188, [DeletionTime] = @p189, [Description] = @p190, [DeviceCodeLifetime] = @p191, [EnableLocalLogin] = @p192, [Enabled] = @p193, [ExtraProperties] = @p194, [FrontChannelLogoutSessionRequired] = @p195, [FrontChannelLogoutUri] = @p196, [IdentityTokenLifetime] = @p197, [IncludeJwtId] = @p198, [IsDeleted] = @p199, [LastModificationTime] = @p200, [LastModifierId] = @p201, [LogoUri] = @p202, [PairWiseSubjectSalt] = @p203, [ProtocolType] = @p204, [RefreshTokenExpiration] = @p205, [RefreshTokenUsage] = @p206, [RequireClientSecret] = @p207, [RequireConsent] = @p208, [RequirePkce] = @p209, [RequireRequestObject] = @p210, [SlidingRefreshTokenLifetime] = @p211, [UpdateAccessTokenClaimsOnRefresh] = @p212, [UserCodeType] = @p213, [UserSsoLifetime] = @p214
WHERE [Id] = @p215 AND [ConcurrencyStamp] = @p216;
SELECT @@ROWCOUNT;
[10:50:21 WRN] ERR Error running script (call to f_3915ee22fda531a1d5661f2523d0443fd35ff0a4): @user_script:2: @user_script: 2: Wrong number of args calling Redis command From Lua script
StackExchange.Redis.RedisServerException: ERR Error running script (call to f_3915ee22fda531a1d5661f2523d0443fd35ff0a4): @user_script:2: @user_script: 2: Wrong number of args calling Redis command From Lua script
   at Volo.Abp.Caching.StackExchangeRedis.AbpRedisCache.SetManyAsync(IEnumerable`1 items, DistributedCacheEntryOptions options, CancellationToken token)
   at Volo.Abp.Caching.DistributedCache`2.&lt;&gt;c__DisplayClass54_0.&lt;&lt;SetManyAsync&gt;g__SetRealCache|0>d.MoveNext()
[10:50:21 WRN] ERR Error running script (call to f_3915ee22fda531a1d5661f2523d0443fd35ff0a4): @user_script:2: @user_script: 2: Wrong number of args calling Redis command From Lua script
StackExchange.Redis.RedisServerException: ERR Error running script (call to f_3915ee22fda531a1d5661f2523d0443fd35ff0a4): @user_script:2: @user_script: 2: Wrong number of args calling Redis command From Lua script
   at Volo.Abp.Caching.StackExchangeRedis.AbpRedisCache.SetManyAsync(IEnumerable`1 items, DistributedCacheEntryOptions options, CancellationToken token)
   at Volo.Abp.Caching.DistributedCache`2.&lt;&gt;c__DisplayClass54_0.&lt;&lt;SetManyAsync&gt;g__SetRealCache|0>d.MoveNext()
[10:50:21 INF] Initialized all ABP modules.
[10:50:21 INF] Now listening on: https://localhost:44330
[10:50:21 INF] Application started. Press Ctrl+C to shut down.
[10:50:21 INF] Hosting environment: Development
[10:50:21 INF] Content root path: D:\dev\gitlab\abp6\modules\Yee.Change.Rms\host\Yee.Change.Rms.IdentityServer
[10:50:22 INF] Request starting HTTP/2 GET https://localhost:44330/ - -
[10:50:22 ERR] Connection id "0HME07R6P1V4E", Request id "0HME07R6P1V4E:0000000F": An unhandled exception was thrown by the application.
System.InvalidOperationException: Cannot find compilation library location for package 'ConfigureAwait.Fody'
   at Microsoft.Extensions.DependencyModel.CompilationLibrary.ResolveReferencePaths(ICompilationAssemblyResolver resolver, List`1 assemblies)
   at Microsoft.Extensions.DependencyModel.CompilationLibrary.ResolveReferencePaths()
   at Microsoft.AspNetCore.Mvc.ApplicationParts.AssemblyPartExtensions.<>c.<GetReferencePaths>b__0_0(CompilationLibrary library)
   at System.Linq.Enumerable.SelectManySingleSelectorIterator`2.MoveNext()
   at System.Collections.Generic.List`1.InsertRange(Int32 index, IEnumerable`1 collection)
   at Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.RazorReferenceManager.GetReferencePaths()
   at Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.RazorReferenceManager.GetCompilationReferences()
   at System.Threading.LazyInitializer.EnsureInitializedCore[T](T& target, Boolean& initialized, Object& syncLock, Func`1 valueFactory)
   at System.Threading.LazyInitializer.EnsureInitialized[T](T& target, Boolean& initialized, Object& syncLock, Func`1 valueFactory)
   at Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.RazorReferenceManager.get_CompilationReferences()
   at Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.LazyMetadataReferenceFeature.get_References()
   at Microsoft.CodeAnalysis.Razor.CompilationTagHelperFeature.GetDescriptors()
   at Microsoft.AspNetCore.Razor.Language.DefaultRazorTagHelperBinderPhase.ExecuteCore(RazorCodeDocument codeDocument)
   at Microsoft.AspNetCore.Razor.Language.RazorEnginePhaseBase.Execute(RazorCodeDocument codeDocument)
   at Microsoft.AspNetCore.Razor.Language.DefaultRazorEngine.Process(RazorCodeDocument document)
   at Microsoft.AspNetCore.Razor.Language.DefaultRazorProjectEngine.ProcessCore(RazorCodeDocument codeDocument)
   at Microsoft.AspNetCore.Razor.Language.RazorProjectEngine.Process(RazorProjectItem projectItem)
   at Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.RuntimeViewCompiler.CompileAndEmit(String relativePath)
   at Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.RuntimeViewCompiler.OnCacheMiss(String normalizedPath)
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.DefaultPageLoader.LoadAsyncCore(PageActionDescriptor actionDescriptor, EndpointMetadataCollection endpointMetadata)
   at Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.PageLoaderMatcherPolicy.ApplyAsyncAwaited(CandidateSet candidates, Task`1 actionDescriptorTask, Int32 index)
   at Microsoft.AspNetCore.Routing.Matching.DfaMatcher.SelectEndpointWithPoliciesAsync(HttpContext httpContext, IEndpointSelectorPolicy[] policies, CandidateSet candidateSet)
   at Microsoft.AspNetCore.Routing.EndpointRoutingMiddleware.<Invoke>g__AwaitMatch|8_1(EndpointRoutingMiddleware middleware, HttpContext httpContext, Task matchTask)
   at Volo.Abp.AspNetCore.Tracing.AbpCorrelationIdMiddleware.InvokeAsync(HttpContext context, RequestDelegate next)
   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass6_1.<<UseMiddlewareInterface>b__1>d.MoveNext()
--- End of stack trace from previous location ---
   at Microsoft.WebTools.BrowserLink.Net.BrowserLinkMiddleware.ExecuteWithFilterAsync(IHttpSocketAdapter injectScriptSocket, String requestId, HttpContext httpContext)
   at Microsoft.AspNetCore.Watch.BrowserRefresh.BrowserRefreshMiddleware.InvokeAsync(HttpContext context)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)
[10:50:22 INF] Request finished HTTP/2 GET https://localhost:44330/ - - - 500 0 - 195.0034ms
Showing 1 to 10 of 142 entries
Made with ❤️ on ABP v8.2.0-preview Updated on March 25, 2024, 15:11