Hi everyone!

I've been using ActiveMQ for some time, but have run into several issues
lately which I haven't been able to figure out what is causing them.
I use the NMS Client Library from C# using version 5.3.0 of ActiveMQ, but
have also tried using version 5.3.2. I am also using the latest
versions of the NMS client libraries (Apache.NMS.ActiveMQ.dll +
Apache.NMS.dll). I'm using persistent queues, without producer flow control
disabled. The prefetch is set to 1 and auto acknowledge.

The first problem is that from a producer, the send method can sometimes
block indefinitely. Similar, when trying to stop
the program, it blocks when trying to close the connection.

Sometimes I also get this error "Apache.NMS.ActiveMQ.IOException: Channel
was inactive for too long: tcp://
127.0.0.1:61616/?nms.PrefetchPolicy.queuePrefetch=1&wireFormat.MaxInactivityDuration=0
".
I saw on the mailing list that setting the "wireFormat.MaxInactivityDuration=0"
would deal with this situation, but it didn't remedy this situation.

The connection and the session objects are used for a long time. Is there
any guidance for how long a connection and session should be used?
I also tried using the failover which just one address, like this:
"failover:(tcp://
127.0.0.1:61616?nms.PrefetchPolicy.queuePrefetch=1&wireFormat.MaxInactivityDuration=0)",
but then it gave
me some other issues, the number of threads started to spin up. Can the same
connection and session be used over several threads?

Anything that could shed some light on these issues would be very welcome.

Thanks,
Frank

Reply via email to