We are using MassTransit 2.1.4 and RabbitMQ 2.8.2 to publish the results of consuming a real-time data feed from a remote service, and to keep the cluster of those 'consuming' apps in sync (eg to notify each other of heartbeat, to collaborate on reconnecting to the remote service if it goes down, etc). To minimize terminology confusion, I'll refer to the cluster of our 'consuming' apps as 'the consumer group' in this post.Whilst our solution is operating as expected and MT messages do appear to be being correctly routed amongst the consumer group, a large volume (>8000 per 24 hours) are being delivered to RabbitMQ's error queues. I'm a bit at a loss to explain this because our consumer apps don't appear to be generating any exceptions which would lead to MT moving the message to error queue. Also, the types of messages in the error queues are a random mixed bag of types.In a troubleshooting attempt, I simplified our setup into a VM running 1xRabbitMQ and 1xOur Consumer (ie no clustering). The problem still continues. Below is a copy of the MT introspection log.Any suggestions on things to try?--host.machine_name: TEST_MACHINE_1mt.concurrent_receive_threads: 1mt.control_bus: rabbitmq://localhost/broker_TEST_MACHINE_1mt.default_serializer: JsonMessageSerializermt.max_consumer_threads: 16mt.network: TEST_MACHINE_1mt.receive_from: rabbitmq://localhost/broker_TEST_MACHINE_1mt.receive_timeout: 00:00:03mt.service_count: 2mt.transport: [loopback] LoopbackTransportFactorymt.transport: [rabbitmq] RabbitMqTransportFactorymt.version: 2.1.410.0net.version: 4.0.30319.225os.bits: x64os.version: Microsoft Windows NT 6.1.7601 Service Pack 1process.bits: x32process.id: 8092zz.mt.inbound_pipeline: PipelineRouted (MassTransit.IConsumeContext, MassTransit)Translated to MassTransit.Diagnostics.Tracing.GetMessageTraceList, MassTransitRouted (MassTransit.Diagnostics.Tracing.GetMessageTraceList, MassTransit)Consumed by Instance (MassTransit.Diagnostics.Tracing.GetMessageTraceList, MassTransit)zz.mt.outbound_pipeline: PipelineInterceptorRouted (MassTransit.ISendContext, MassTransit)
You received this message because you are subscribed to the Google Groups "masstransit-discuss" group.
To view this discussion on the web visit https://groups.google.com/d/msg/masstransit-discuss/-/UzcRpVy0PK8J.
To post to this group, send email to masstrans...@googlegroups.com.
To unsubscribe from this group, send email to masstransit-dis...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/masstransit-discuss?hl=en.
The logs actually led us to a solution of sorts.. In MT debug level we were intermittently seeing things along the line of:
Skip, skip, skip, retry, retry, too many retries
For the same message
We use the Selected consumers a lot, mainly to filter out loopback messages.
By switching back from Consumes<T>.Selected to .All and manually calling the exact same Accept() code from our Consume method our error count has gone to 0.
So it appears there is some condition in MT whereby Selected causes messages to route tithe error queue if not consumed by Selected. Note that no exceptions were generated by our code.
Very odd but our workaround seems effective
--
You received this message because you are subscribed to the Google Groups "masstransit-discuss" group.
To view this discussion on the web visit https://groups.google.com/d/msg/masstransit-discuss/-/nwV-Xx8ZxxcJ.
--
You received this message because you are subscribed to the Google Groups "masstransit-discuss" group.
To view this discussion on the web visit https://groups.google.com/d/msg/masstransit-discuss/-/eXprtFPk_OcJ.
To post to this group, send email to masstransit-discuss@googlegroups.com.
To unsubscribe from this group, send email to masstransit-discuss+unsub...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msg/masstransit-discuss/-/mzleXZDH7BUJ.
To post to this group, send email to masstrans...@googlegroups.com.
To unsubscribe from this group, send email to masstransit-dis...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Hi Chris, Dru
When returning false within the Accept function, after 5 times the message will be moved to the error_queue. Is this behavior that can/will be modified?
I don't see the added value of the Selected interface anymore with this, could you tell me what it is? It seems to be better to just Consume the message and check inside the Consume function if you want to consume the message.
Greetz
T
--
You received this message because you are subscribed to the Google Groups "masstransit-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to masstransit-dis...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/masstransit-discuss/ec0260be-92ab-4a3c-afaf-e91f3dce6682%40googlegroups.com.
-d
Thanks
To post to this group, send email to masstrans...@googlegroups.com.
To unsubscribe from this group, send email to masstransit-discuss+unsubscribe...@googlegroups.com.