Please answer the following questions for yourself before submitting an issue.
[X ] I am running the latest version
[ X] I checked the documentation and found no answer
[X ] I checked to make sure that this issue has not already been filed
[ X] I'm reporting the issue to the correct repository
Current Behavior
When a message is tried to be moved to the dead-letter exchange/queue, that delivery fails and the channel closes because the exchange does not exist.
Expected Behavior
The dead-letter exchange/queue should be asserted into existence so that the message can be moved into the queue.
Failure Information
mol $ [2023-03-22T16:54:03.534Z] WARN @txtsmarter/transformer-triloka-92/CHANNELS: AMQP message processing error in 'transformer.imessage' queue. Error: NOT ACCEPTED!
at TransformerService.transformer.imessage (/Users/ujwal/Work/txtsmarter/sw/repos/blackbird/packages/services/transformer/src/transformer.service.ts:67:11)
at TransformerService.<anonymous> (/Users/ujwal/Work/txtsmarter/sw/repos/blackbird/common/temp/node_modules/.pnpm/moleculer@0.14.29_o6qzvejtzsnpaf7pu7pwc3mpbq/node_modules/moleculer/src/utils.js:212:22)
at checkAuth (/Users/ujwal/Work/txtsmarter/sw/repos/blackbird/packages/services/transformer/src/middlewares/moleculer.auth.middleware.ts:76:18)
at emitESEvent (/Users/ujwal/Work/txtsmarter/sw/repos/blackbird/packages/services/transformer/src/middlewares/moleculer.eventstore.middleware.ts:76:16)
at logMessage (/Users/ujwal/Work/txtsmarter/sw/repos/blackbird/packages/services/transformer/src/middlewares/moleculer.log.middleware.ts:168:16)
at wrappedHandler (/Users/ujwal/Work/txtsmarter/sw/repos/blackbird/common/temp/node_modules/.pnpm/github.com+moleculerjs+moleculer-channels@8f248f029d8cda9be592f0bb3fa0390fadd79a1a_moleculer@0.14.29/node_modules/@moleculer/channels/src/index.js:320:16)
at Object.chan.handler (/Users/ujwal/Work/txtsmarter/sw/repos/blackbird/common/temp/node_modules/.pnpm/github.com+moleculerjs+moleculer-channels@8f248f029d8cda9be592f0bb3fa0390fadd79a1a_moleculer@0.14.29/node_modules/@moleculer/channels/src/index.js:336:16)
at /Users/ujwal/Work/txtsmarter/sw/repos/blackbird/common/temp/node_modules/.pnpm/github.com+moleculerjs+moleculer-channels@8f248f029d8cda9be592f0bb3fa0390fadd79a1a_moleculer@0.14.29/node_modules/@moleculer/channels/src/adapters/amqp.js:365:16
at Channel.BaseChannel.dispatchMessage (/Users/ujwal/Work/txtsmarter/sw/repos/blackbird/common/temp/node_modules/.pnpm/amqplib@0.10.3/node_modules/amqplib/lib/channel.js:483:12)
at Channel.BaseChannel.handleDelivery (/Users/ujwal/Work/txtsmarter/sw/repos/blackbird/common/temp/node_modules/.pnpm/amqplib@0.10.3/node_modules/amqplib/lib/channel.js:492:15)
[2023-03-22T16:54:03.549Z] ERROR @txtsmarter/transformer-triloka-92/CHANNELS: AMQP channel error Error: Channel closed by server: 404 (NOT-FOUND) with message "NOT_FOUND - no exchange 'DEAD_LETTER' in vhost '/'"
at Channel.C.accept (/Users/ujwal/Work/txtsmarter/sw/repos/blackbird/common/temp/node_modules/.pnpm/amqplib@0.10.3/node_modules/amqplib/lib/channel.js:421:17)
at Connection.mainAccept [as accept] (/Users/ujwal/Work/txtsmarter/sw/repos/blackbird/common/temp/node_modules/.pnpm/amqplib@0.10.3/node_modules/amqplib/lib/connection.js:63:33)
at Socket.go (/Users/ujwal/Work/txtsmarter/sw/repos/blackbird/common/temp/node_modules/.pnpm/amqplib@0.10.3/node_modules/amqplib/lib/connection.js:486:48)
at Socket.emit (node:events:513:28)
at Socket.emit (node:domain:489:12)
at emitReadable_ (node:internal/streams/readable:590:12)
at processTicksAndRejections (node:internal/process/task_queues:81:21) {
code: 404,
classId: 60,
methodId: 40
}
[2023-03-22T16:54:03.551Z] ERROR @txtsmarter/transformer-triloka-92/CHANNELS: AMQP channel closed.
Steps to Reproduce
Please provide detailed steps for reproducing the issue.
set up moleculer channels to have 0 retries, and set up deadLettering:
Prerequisites
Please answer the following questions for yourself before submitting an issue.
Current Behavior
When a message is tried to be moved to the dead-letter exchange/queue, that delivery fails and the channel closes because the exchange does not exist.
Expected Behavior
The dead-letter exchange/queue should be asserted into existence so that the message can be moved into the queue.
Failure Information
Steps to Reproduce
Please provide detailed steps for reproducing the issue.
Reproduce code snippet
broker config:
channel handler:
Context
What's even worse is the channel will be closed preventing any further publishing.
I will issue a PR for this soon.