6 Replies Latest reply on Dec 15, 2010 3:06 PM by parmstrong

    Destroying connection that could not be successfully matched

    parmstrong

      So I have set up HornetQ as a standalone server and I have 2 Jboss instances that have message driven beans listening to queues in the stand alone HornetQ.  Things seem to work fine for the most part.  One thing that I have noticed is that now that I have this configuration set up my jboss logs are filled with messages similar to the following:

       

       

      Destroying connection that could not be successfully matched:            org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener@4896093e[state=NORMAL            mc=org.hornetq.ra.HornetQRAManagedConnection@2312ede9 handles=0            lastUse=1292360859214 permit=false trackByTx=false            mcp=org.jboss.resource.connectionmanager.JBossManagedConnectionPool$OnePool@2577359d            context=org.jboss.resource.connectionmanager.InternalManagedConnectionPool@3560e9a2            xaResource=org.hornetq.ra.HornetQRAXAResource@2fc16dfc txSync=null]

       

       

      Is this expected?  If not do I have my resource adapter configured incorrectly?  Anyway if you need one of my config files posted I can do that.  Like I say the mdb's are getting messages but I have literally thousands of these in my jboss log file now.  Thanks

        • 1. Re: Destroying connection that could not be successfully matched
          clebert.suconic

          What version are you using of JBoss, HornetQ? and how can we replicate this?

          • 2. Re: Destroying connection that could not be successfully matched
            parmstrong

            I am using Jboss 5.1 and HornetQ 2.1.2.Final.  I have run the script on my jboss to integrate hornetq into it.  I have an mdb that uses the hornetq resource adapter to listen to an external hornetQ queue.  Inside the mdb I have a couple of places where I make connections to the topic and send updates to clients connected to the topic.  That should probably do it.  Just create an mdb that listens to an external hornetq and inside the mdb send messages to a topic on that external hornetQ.  That is basically what I am doing and I am getting a bunch of these errors.  Did you want some of my configuration files?

            • 3. Re: Destroying connection that could not be successfully matched
              clebert.suconic

              Take a look on the MDB Remote example. You are probably missing a couple of RA properties to match your remote server. The fact that the thing is looking In-VM instead of remote confirms you don't have some of the properties you would expect.

              • 4. Re: Destroying connection that could not be successfully matched
                parmstrong

                Do I need to configure the ra.xml in the standalone hornetQ?  I did update the ra.xml under jboss it looks like this:

                 

                <?xml version="1.0" encoding="UTF-8"?>

                 

                <!-- $Id: ra.xml 76819 2008-08-08 11:04:20Z jesper.pedersen $ -->

                 

                <connector xmlns="http://java.sun.com/xml/ns/j2ee"
                           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                           xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
                           http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd"
                           version="1.5">

                 

                   <description>HornetQ 2.0 Resource Adapter</description>
                   <display-name>HornetQ 2.0 Resource Adapter</display-name>

                 

                   <vendor-name>Red Hat Middleware LLC</vendor-name>
                   <eis-type>JMS 1.1 Server</eis-type>
                   <resourceadapter-version>1.0</resourceadapter-version>

                 

                   <license>
                      <description>

                 

                      </description>
                      <license-required>true</license-required>
                   </license>

                 

                   <resourceadapter>
                      <resourceadapter-class>org.hornetq.ra.HornetQResourceAdapter</resourceadapter-class>
                              <config-property>
                                 <description>The transport type</description>
                                 <config-property-name>ConnectorClassName</config-property-name>
                                 <config-property-type>java.lang.String</config-property-type>
                                 <config-property-value>org.hornetq.core.remoting.impl.netty.NettyConnectorFactory</config-property-value>
                              </config-property>
                              <config-property>
                                 <description>The transport configuration. These values must be in the form of key=val;key=val;</description>
                                 <config-property-name>ConnectionParameters</config-property-name>
                                 <config-property-type>java.lang.String</config-property-type>
                                 <config-property-value>host=${remoteHornetqHost:localhost};port=5446</config-property-value>
                              </config-property>
                      <outbound-resourceadapter>
                         <connection-definition>
                            <managedconnectionfactory-class>org.hornetq.ra.HornetQRAManagedConnectionFactory</managedconnectionfactory-class>

                 

                            <config-property>
                               <description>The default session type</description>
                               <config-property-name>SessionDefaultType</config-property-name>
                               <config-property-type>java.lang.String</config-property-type>
                               <config-property-value>javax.jms.Queue</config-property-value>
                            </config-property>
                            <config-property>
                               <description>Try to obtain a lock within specified number of seconds; less than or equal to 0 disable this functionality</description>
                               <config-property-name>UseTryLock</config-property-name>
                               <config-property-type>java.lang.Integer</config-property-type>
                               <config-property-value>0</config-property-value>
                            </config-property>

                 

                            <connectionfactory-interface>org.hornetq.ra.HornetQRAConnectionFactory</connectionfactory-interface>
                            <connectionfactory-impl-class>org.hornetq.ra.HornetQRAConnectionFactoryImpl</connectionfactory-impl-class>
                            <connection-interface>javax.jms.Session</connection-interface>
                            <connection-impl-class>org.hornetq.ra.HornetQRASession</connection-impl-class>
                         </connection-definition>
                         <transaction-support>XATransaction</transaction-support>
                         <authentication-mechanism>
                            <authentication-mechanism-type>BasicPassword</authentication-mechanism-type>
                            <credential-interface>javax.resource.spi.security.PasswordCredential</credential-interface>
                         </authentication-mechanism>
                         <reauthentication-support>false</reauthentication-support>
                      </outbound-resourceadapter>

                 

                      <inbound-resourceadapter>
                         <messageadapter>
                            <messagelistener>
                               <messagelistener-type>javax.jms.MessageListener</messagelistener-type>
                               <activationspec>
                                  <activationspec-class>org.hornetq.ra.inflow.HornetQActivationSpec</activationspec-class>
                                  <required-config-property>
                                      <config-property-name>destination</config-property-name>
                                  </required-config-property>
                               </activationspec>
                            </messagelistener>
                         </messageadapter>
                      </inbound-resourceadapter>

                 

                   </resourceadapter>
                </connector>

                • 5. Re: Destroying connection that could not be successfully matched
                  parmstrong

                  I am assuming this is the example that you are talking about: examples\javaee\jca-remote

                  • 6. Re: Destroying connection that could not be successfully matched
                    parmstrong

                    Clebert Suconic wrote:

                     

                    Take a look on the MDB Remote example. You are probably missing a couple of RA properties to match your remote server. The fact that the thing is looking In-VM instead of remote confirms you don't have some of the properties you would expect.

                    How are you able to tell that it is looking In-VM?