ABP Framework version: v5.1.2
UI type: Angular
DB provider: EF Core
Tiered (MVC) or Identity Server Separated (Angular): yes
Exception message and stack trace: StackExchange.Redis.RedisTimeoutException HResult=0x80131505 Message=Timeout performing HMGET (5000ms), inst: 424, qu: 61, qs: 0, aw: True, bw: Starting, rs: ReadAsync, ws: Idle, in: 0, in-pipe: 0, out-pipe: 0, serverEndpoint: 127.0.0.1:6379, mc: 1/1/0, mgr: 10 of 10 available, clientName: DESKTOP-2DFLJPM, IOCP: (Busy=0,Free=1000,Min=16,Max=1000), WORKER: (Busy=51,Free=32716,Min=16,Max=32767), v: 2.2.4.27433 (Please take a look at this article for some common client-side issues that can cause timeouts: https://stackexchange.github.io/StackExchange.Redis/Timeouts) Source=StackExchange.Redis StackTrace: at StackExchange.Redis.ConnectionMultiplexer.ExecuteSyncImpl[T](Message message, ResultProcessor
1 processor, ServerEndPoint server) in /_/src/StackExchange.Redis/ConnectionMultiplexer.cs:line 2809 at StackExchange.Redis.RedisBase.ExecuteSync[T](Message message, ResultProcessor
1 processor, ServerEndPoint server) in //src/StackExchange.Redis/RedisBase.cs:line 54 at StackExchange.Redis.RedisDatabase.HashGet(RedisKey key, RedisValue[] hashFields, CommandFlags flags) in //src/StackExchange.Redis/RedisDatabase.cs:line 324 at Microsoft.Extensions.Caching.StackExchangeRedis.RedisExtensions.HashMemberGet(IDatabase cache, String key, String[] members) at Microsoft.Extensions.Caching.StackExchangeRedis.RedisCache.GetAndRefresh(String key, Boolean getData) at Microsoft.Extensions.Caching.StackExchangeRedis.RedisCache.Get(String key) at Volo.Abp.Caching.DistributedCache2.Get(TCacheKey key, Nullable
1 hideErrors, Boolean considerUow)Steps to reproduce the issue:"
I have a contractor GetListAsync which returns contractors. The method was generated from the abp suite. I need to get all the records which currently is about 800. In the constructor of the class I am using this code
LimitedResultRequestDto.DefaultMaxResultCount = 1000; LimitedResultRequestDto.MaxMaxResultCount = 1000;
When I run the code, I am getting a redis error (above). How can I fix this so we do not get an error with redis?
3 Answer(s)
-
0
-
0
So if I set Redis, IsEnabled: false in configuration this appears to stop and things seem to work. My question, how can I enable redis and not get this error? Is there a way to turn redis off for specific queries?
-
0
As I see, this is a typical Redis timeout error. If the redis is deployed to a different server, that means you have to transfer entire data from redis to app, or app to redis and with 1000 count of data it might be costful. You can configure a bigger timeout value for redis or optimize the data that you transferred.
I can't find an exact answer for that. I don't know how you use the Redis. You can share Steps to reproduce the issue or provide a sample project so we can investigate if the problem is related to ABP or not but it seems it's not related to ABP, it seems it's a common Redis usage issue.