activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michel Van Hoof (JIRA)" <jira+amq...@apache.org>
Subject [jira] Created: (AMQNET-160) Connecting to non-existing host does not raise Exception when using failover protocol
Date Wed, 06 May 2009 19:19:38 GMT
Connecting to non-existing host does not raise Exception when using failover protocol
-------------------------------------------------------------------------------------

                 Key: AMQNET-160
                 URL: https://issues.apache.org/activemq/browse/AMQNET-160
             Project: ActiveMQ .Net
          Issue Type: Bug
          Components: ActiveMQ Client
    Affects Versions: 1.0
         Environment: Windows XP/Windows 2003 , .NET Framework 2.0 (Broker running Ubuntu
8.04 + ActiveMQ 5.2)
            Reporter: Michel Van Hoof
            Assignee: Jim Gomes


When using the failover protocol, there is no exception raised when trying to connect to non-existing
host.

Example:

using System;
using System.Collections.Generic;
using System.Text;
using Apache.NMS;
using Apache.NMS.ActiveMQ;


    class ExceptionTest
    {
        private readonly IConnectionFactory oConnfact;
        private readonly IConnection oConn;
        private readonly ISession oSess;
        private readonly IMessageConsumer oConsumer;
        private string sConnectionUri = "failover:(tcp://unknownhost:61612)";

        // Using this connectionstring it does fail.

        //private string sConnectionUri = "tcp://unknownhost:61612";

        public ExceptionTest()
        {
            oConn.ExceptionListener += new ExceptionListener(OnException);
            this.oConnfact = new ConnectionFactory(sConnectionUri, "CLIENT.ID");
           
            oConn.ExceptionListener += new ExceptionListener(OnException);
            this.oConn = oConnfact.CreateConnection();
            oConn.RequestTimeout(new TimeSpan(0, 0, 2)); 
            // Code hangs here
            oConn.Start();

            //Rest does not really mather anymore since it hangs
            
        }

        void OnEx(Exception exception)
        {
                throw new Exception("The method or operation is not implemented.");
        }

        public void OnException(Exception ex)
        {
            Console.WriteLine("You made a BooBoo: {0} ", ex.ToString());
        }
    }


If you change the connectionstring to "tcp://badhostname:xxxx" , the exception does occur.


It also seems to ignore the RequestTimeout.

This blocks the application thread indefinately since there is no way to recover from it (no
exception thrown).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message