nopSolutions / nopCommerce

ASP.NET Core eCommerce software. nopCommerce is a free and open-source shopping cart.
https://www.nopcommerce.com
Other
9.19k stars 5.28k forks source link

Redis Error Clear Cash Error #6571

Closed streamzyuk closed 1 year ago

streamzyuk commented 1 year ago

nopCommerce version: 4.70 Dev

Steps to reproduce the problem:

Run the app. Login and go to Administration.

Select Clear Cache from top right corner.

You get this exception

StackExchange.Redis.RedisCommandException: This operation is not available unless admin mode is enabled: FLUSHDB at StackExchange.Redis.ConnectionMultiplexer.CheckMessage(Message message) in //src/StackExchange.Redis/ConnectionMultiplexer.cs:line 523 at StackExchange.Redis.RedisBase.ExecuteAsync[T](Message message, ResultProcessor`1 processor, ServerEndPoint server) in //src/StackExchange.Redis/RedisBase.cs:line 47 at StackExchange.Redis.RedisServer.ExecuteAsync[T](Message message, ResultProcessor1 processor, ServerEndPoint server) in /_/src/StackExchange.Redis/RedisServer.cs:line 602 at StackExchange.Redis.RedisServer.FlushDatabaseAsync(Int32 database, CommandFlags flags) in /_/src/StackExchange.Redis/RedisServer.cs:line 255 at Nop.Services.Caching.RedisConnectionWrapper.<FlushDatabaseAsync>b__14_0(EndPoint endPoint) in C:\Streamzy\Source29122022\src\Libraries\Nop.Services\Caching\RedisConnectionWrapper.cs:line 198 at Nop.Services.Caching.RedisConnectionWrapper.FlushDatabaseAsync() in C:\Streamzy\Source29122022\src\Libraries\Nop.Services\Caching\RedisConnectionWrapper.cs:line 197 at Nop.Services.Caching.RedisCacheManager.ClearAsync() in C:\Streamzy\Source29122022\src\Libraries\Nop.Services\Caching\RedisCacheManager.cs:line 81 at Nop.Web.Areas.Admin.Controllers.CommonController.ClearCache(String returnUrl) in C:\Streamzy\Source29122022\src\Presentation\Nop.Web\Areas\Admin\Controllers\CommonController.cs:line 370 at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask1 actionResultValueTask) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.gAwaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.gAwaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResourceExecutedContextSealed context) at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.gAwaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Logged|17_1(ResourceInvoker invoker) at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.gLogged|17_1(ResourceInvoker invoker) at Microsoft.AspNetCore.Routing.EndpointMiddleware.gAwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger) at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context) at Nop.Services.Authentication.AuthenticationMiddleware.InvokeAsync(HttpContext context) in C:\Streamzy\Source29122022\src\Libraries\Nop.Services\Authentication\AuthenticationMiddleware.cs:line 94 at StackExchange.Profiling.MiniProfilerMiddleware.Invoke(HttpContext context) in C:\projects\dotnet\src\MiniProfiler.AspNetCore\MiniProfilerMiddleware.cs:line 121 at WebMarkupMin.AspNetCore7.WebMarkupMinMiddleware.InvokeCore(HttpContext context, Boolean useMinification, Boolean useCompression) at WebMarkupMin.AspNetCore7.WebMarkupMinMiddleware.InvokeCore(HttpContext context, Boolean useMinification, Boolean useCompression) at NWebsec.AspNetCore.Middleware.Middleware.CspMiddleware.Invoke(HttpContext context) at Nop.Web.Framework.Infrastructure.Extensions.ApplicationBuilderStrmzyExtensions.<>c.<b__0_3>d.MoveNext() in C:\Streamzy\Source29122022\src\Presentation\Nop.Web.Framework\Strmzy\Infrastructure\Extensions\ApplicationBuilderStrmzyExtensions.cs:line 39 --- End of stack trace from previous location --- at NWebsec.AspNetCore.Middleware.Middleware.MiddlewareBase.Invoke(HttpContext context) at NWebsec.AspNetCore.Middleware.Middleware.MiddlewareBase.Invoke(HttpContext context) at NWebsec.AspNetCore.Middleware.Middleware.MiddlewareBase.Invoke(HttpContext context) at NWebsec.AspNetCore.Middleware.Middleware.MiddlewareBase.Invoke(HttpContext context) at Microsoft.AspNetCore.Localization.RequestLocalizationMiddleware.Invoke(HttpContext context) at Microsoft.AspNetCore.Session.SessionMiddleware.Invoke(HttpContext context) at Microsoft.AspNetCore.Session.SessionMiddleware.Invoke(HttpContext context) at Nop.Services.Installation.InstallUrlMiddleware.InvokeAsync(HttpContext context, IWebHelper webHelper) in C:\Streamzy\Source29122022\src\Libraries\Nop.Services\Installation\InstallUrlMiddleware.cs:line 52 at Nop.Services.Common.KeepAliveMiddleware.InvokeAsync(HttpContext context, IWebHelper webHelper) in C:\Streamzy\Source29122022\src\Libraries\Nop.Services\Common\KeepAliveMiddleware.cs:line 49 at Microsoft.AspNetCore.ResponseCompression.ResponseCompressionMiddleware.InvokeCore(HttpContext context) at Microsoft.AspNetCore.Diagnostics.StatusCodePagesMiddleware.Invoke(HttpContext context) at Microsoft.AspNetCore.Diagnostics.StatusCodePagesMiddleware.Invoke(HttpContext context) at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddlewareImpl.gAwaited|8_0(ExceptionHandlerMiddlewareImpl middleware, HttpContext context, Task task)

skoshelev commented 1 year ago

Hi, @streamzyuk. This is not an issue, it's just that you do not have enough rights to the operation to clear the database, one of the solutions is given here