@@ -220,6 +220,20 @@ export class DefaultQueueManager implements QueueManager {
220220 return { queueName : overriddenQueueName ?? defaultQueueName , taskTtl : undefined } ;
221221 }
222222
223+ // When queue is overridden, we only need TTL from the task (no queue join needed)
224+ if ( overriddenQueueName ) {
225+ const task = await this . prisma . backgroundWorkerTask . findFirst ( {
226+ where : {
227+ workerId : worker . id ,
228+ runtimeEnvironmentId : environment . id ,
229+ slug : taskId ,
230+ } ,
231+ select : { ttl : true } ,
232+ } ) ;
233+
234+ return { queueName : overriddenQueueName , taskTtl : task ?. ttl } ;
235+ }
236+
223237 const task = await this . prisma . backgroundWorkerTask . findFirst ( {
224238 where : {
225239 workerId : worker . id ,
@@ -237,7 +251,7 @@ export class DefaultQueueManager implements QueueManager {
237251 environmentId : environment . id ,
238252 } ) ;
239253
240- return { queueName : overriddenQueueName ?? defaultQueueName , taskTtl : undefined } ;
254+ return { queueName : defaultQueueName , taskTtl : undefined } ;
241255 }
242256
243257 if ( ! task . queue ) {
@@ -247,10 +261,10 @@ export class DefaultQueueManager implements QueueManager {
247261 queueConfig : task . queueConfig ,
248262 } ) ;
249263
250- return { queueName : overriddenQueueName ?? defaultQueueName , taskTtl : task . ttl } ;
264+ return { queueName : defaultQueueName , taskTtl : task . ttl } ;
251265 }
252266
253- return { queueName : overriddenQueueName ?? task . queue . name ?? defaultQueueName , taskTtl : task . ttl } ;
267+ return { queueName : task . queue . name ?? defaultQueueName , taskTtl : task . ttl } ;
254268 }
255269
256270 async validateQueueLimits (
0 commit comments