()
| 112 | |
| 113 | let redisGroupQueue: ExtendedRedis; |
| 114 | export function getRedisGroupQueue() { |
| 115 | if (!redisGroupQueue) { |
| 116 | // Dedicated Redis connection for GroupWorker to avoid blocking BullMQ |
| 117 | redisGroupQueue = createRedisClient('redis-group-queue', REDIS_URL, { |
| 118 | ...options, |
| 119 | enableReadyCheck: false, |
| 120 | maxRetriesPerRequest: null, |
| 121 | enableOfflineQueue: true, |
| 122 | }); |
| 123 | } |
| 124 | |
| 125 | return redisGroupQueue; |
| 126 | } |
| 127 | |
| 128 | export async function getLock(key: string, value: string, timeout: number) { |
| 129 | const lock = await getRedisCache().set(key, value, 'PX', timeout, 'NX'); |
no test coverage detected