Odd. look like a bug.  You using 4.1.1?

On 6/6/07, Gaurav Hariani <[EMAIL PROTECTED]> wrote:
Since James and Hiram are back on the list ... I thought I'd repost this-

We are facing a problem of orphan connections to ActiveMQ. A simple .NET
client that only creates a connection/session and then closes and exits,
still shows up in jconsole.
It is possible to stop it manually in jconsole.

Below is an example to reproduce the problem:


The following code creates a connection to an OpenWire transport
connector, waits for 1 second and then closes the session/connection.
Looking at JConsole ... ActiveMQ reports the connection as open. Too
many open connections and ActiveMQ stops processing messages.

However if the connection is not closed by the application and the
application is killed using Ctrl-C ... then ActiveMQ closes the
connections.

Is there something obvious that I'm doing wrong or is this a bug in the
TcpTransport code?



using System;
using System.Threading;
using NMS;

namespace ActiveMQ {
   class TestMain {

       static void Main(string[] args) {

           Uri uri = new Uri("tcp://activemqserver:61616");

           ConnectionFactory factory = new ConnectionFactory(uri);
           IConnection connection = null;
           ISession session = null;

           try {
               connection = factory.CreateConnection();
               Console.WriteLine("Connection Created");

               connection.ClientId = "[test1] " + connection.ClientId;

               session = connection.CreateSession();
               Console.WriteLine("Session Created");

               Thread.Sleep(1000);

           } finally {
               session.Close();
               connection.Close();
               Console.WriteLine("Connection Closed");
           }
       }
   }
}



--
Regards,
Hiram

Blog: http://hiramchirino.com

Reply via email to