You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by Gary Tully <ga...@gmail.com> on 2010/07/30 16:58:33 UTC

Re: [jira] Commented: (AMQ-2771) Side effect from AMQ-2094, server listens on host name address, client connects to localhost with the same URI

append the transport options to the uri:

multicast://default?group=TestDeCharge-DEFAULT&useLocalHost=false

the discovery transport will pull off the parameters it knows about
(eg group) and leave the rest for the discovered transport.

On 30 July 2010 15:25, Eric-AWL <er...@atosorigin.com> wrote:
>
> Euuuuh, I don't know if I understand what you explain me :
>
>      <networkConnector name="TestDeCharge-DEFAULT-OUT"
>                        uri="multicast://default?group=TestDeCharge-DEFAULT"
>                        networkTTL="1"
>                        conduitSubscriptions="false"
>                        dynamicOnly="true"
>                        duplex="false"/>
>
> =>
>       <networkConnector name="TestDeCharge-DEFAULT-OUT"
>                        uri="multicast://default?group=TestDeCharge-DEFAULT"
>                        networkTTL="1"
>                        conduitSubscriptions="false"
>                        dynamicOnly="true"
>                        duplex="false"
>                        useLocalHost="false"/>
>
> I don't see this new option of networkConnector in the documentation web
> site.
>
> ???
>
>
> JIRA jira@apache.org wrote:
>>
>>
>>     [
>> https://issues.apache.org/activemq/browse/AMQ-2771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=61003#action_61003
>> ]
>>
>> Gary Tully commented on AMQ-2771:
>> ---------------------------------
>>
>> it does look like the useLocalHost option should default to false as it is
>> an override option that results in a hard coded answer.
>>
>> Eric, for the multicast case, apply the parameters to the multicast url
>> used by the networkconnector, that fact that it is no longer propagated in
>> the discovery multicast frame requires the option to be explicitly set by
>> the user of that information.
>>
>>> Side effect from AMQ-2094, server listens on host name address, client
>>> connects to localhost with the same URI
>>> --------------------------------------------------------------------------------------------------------------
>>>
>>>                 Key: AMQ-2771
>>>                 URL: https://issues.apache.org/activemq/browse/AMQ-2771
>>>             Project: ActiveMQ
>>>          Issue Type: Wish
>>>    Affects Versions: 5.3.0, 5.3.1, 5.3.2
>>>            Reporter: Przemek Bruski
>>>             Fix For: 5.4.1
>>>
>>>         Attachments: BrokerServiceResolveHostTest.java
>>>
>>>
>>> TcpTransport.java contains the following code:
>>> {code}
>>>     protected String resolveHostName(String host) throws
>>> UnknownHostException {
>>>         String localName = InetAddress.getLocalHost().getHostName();
>>>         if (localName != null && isUseLocalHost()) {
>>>             if (localName.equals(host)) {
>>>                 return "localhost";
>>>             }
>>>         }
>>>         return host;
>>>     }
>>> {code}
>>> TcpTransportServer.java contains the following code:
>>> {code}
>>>         InetAddress addr = InetAddress.getByName(host);
>>>         try {
>>>             this.serverSocket =
>>> serverSocketFactory.createServerSocket(bind.getPort(), backlog, addr);
>>> {code}
>>> /etc/hosts looks like this:
>>> {code}
>>> 127.0.0.1       localhost.localdomain   localhost
>>> someip       myhostname.mydomain myhostname
>>> {code}
>>> Now, if I start server with uri: myhostname.mydomain, the server will
>>> listen on someip but the client started on the same host with the same
>>> uri will try connect to localhost (and fail).
>>> I know that useLocalHost can be used to avoid it, but silently connecting
>>> to localhost is counterintuitive and does not sound like a valid default
>>> behaviour (according to documentation, using localhost instead of the
>>> host name is a workaround, the workaround is now effectively default
>>> behaviour and breaks valid setups that used to work with 5.2).
>>> This worked fine on 5.2, since the server bound to all interfaces - but
>>> fixing this was obviously the right thing to do.
>>> Questions:
>>> 1. Can the default behaviour be changed to one that would work on
>>> majority of systems?
>>> 2. Is the workaround really needed? Maybe it's the local network settings
>>> that should be corrected?
>>> 3. The debug messages are misleading and probably should be changed:
>>> [ActiveMQ Task] [FailoverTransport:604] urlList
>>> connectionList:[tcp://hostname:54663?wireFormat.maxInactivityDuration=300000]
>>> [ActiveMQ Task] [FailoverTransport:723] Attempting connect to:
>>> tcp://hostname:54663?wireFormat.maxInactivityDuration=300000
>>> [ActiveMQ Task] [FailoverTransport:764] Connect fail to:
>>> tcp://hostname:54663?wireFormat.maxInactivityDuration=300000, reason:
>>> java.net.ConnectException: Connection refused
>>> In fact, it was the connection to localhost:54663 that was refused.
>>
>> --
>> This message is automatically generated by JIRA.
>> -
>> You can reply to this email to add a comment to the issue online.
>>
>>
>>
>
> --
> View this message in context: http://old.nabble.com/-jira--Created%3A-%28AMQ-2771%29-Side-effect-from-AMQ-2094%2C-server-listens-on-host-name-address%2C-client-connects-to-localhost-with-the-same-URI-tp28830232p29306610.html
> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>
>



-- 
http://blog.garytully.com

Open Source Integration
http://fusesource.com

Re: [jira] Commented: (AMQ-2771) Side effect from AMQ-2094, server listens on host name address, client connects to localhost with the same URI

Posted by Eric-AWL <er...@atosorigin.com>.
Hi Gary


Ok 
&               on the tranport connector  for the tcp URL
& a m p ;    on the corresponding network connector for the multicast URL

works.

It's not natural.

As far as I'm concerned, I would find more logical that "false" was the
default value.

Thank you.
Eric-AWL


Gary Tully wrote:
> 
> that is xml syntax validation. u need to use &amp; for &
> 
> see: http://www.stylusstudio.com/w3c/xml11/sec-references.htm
> 
> 
> 
> On 30 July 2010 16:28, Eric-AWL <er...@atosorigin.com> wrote:
>>
>> Hi Gary
>>
>> Ok I found the option in the networkConnection documentation, but, in
>> 5.3.2
>>
>>      <networkConnector name="TestDeCharge-DEFAULT-OUT"
>>
>> uri="multicast://default?group=TestDeCharge-DEFAULT&useLocalHost=false"
>>                        networkTTL="1"
>>                        conduitSubscriptions="false"
>>                        dynamicOnly="true"
>>                        duplex="false"/>
>>
>> I get
>>
>> 2010/07/30;17:05:16:513;ERR;CInstance;Serveur(td0sib01s.priv.atos.fr);NA;NA;BUSACT-0000;(Exception)
>> org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException:
>> Line
>> 34 in XML document from class path resource [activemq.xml] is invalid;
>> nested exception is org.xml.sax.SAXParseException: The reference to
>> entity
>> "useLocalHost" must end with the ';' delimiter.
>>
>> if I swap group and useLocalHost :
>>
>> <networkConnector name="TestDeCharge-DEFAULT-OUT"
>>
>> uri="multicast://default?useLocalHost=false&group=TestDeCharge-DEFAULT"
>>                        networkTTL="1"
>>                        conduitSubscriptions="false"
>>                        dynamicOnly="true"
>>                        duplex="false"/>
>>
>>
>> 2010/07/30;17:15:09:279;ERR;CInstance;Serveur(td0sib01s.priv.atos.fr);NA;NA;BUSACT-0000;(Exception)
>> org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException:
>> Line
>> 34 in XML document from class path resource [activemq.xml] is invalid;
>> nested exception is org.xml.sax.SAXParseException: The reference to
>> entity
>> "group" must end with the ';' delimiter.
>>
>>
>> If I use "&*amp;" as I found some answers for old forums questions
>>
>>      <networkConnector name="TestDeCharge-DEFAULT-OUT"
>>
>> uri="multicast://default?group=TestDeCharge-DEFAULT&*amp;useLocalHost=false"
>>                        networkTTL="1"
>>                        conduitSubscriptions="false"
>>                        dynamicOnly="true"
>>                        duplex="false"/>
>>
>> I get
>>
>> 2010/07/30;17:18:45:037;ERR;CInstance;Serveur(td0sib01s.priv.atos.fr);NA;NA;BUSACT-0000;(Exception)
>> org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException:
>> Line
>> 34 in XML document from class path resource [activemq.xml] is invalid;
>> nested exception is org.xml.sax.SAXParseException: The entity name must
>> immediately follow the '&' in the entity reference.
>>
>> It seems to be a kind of AMQ-2598 error that referenced AMQ-1099
>>
>> Sorry for all these small problems.
>>
>> Eric-AWL
>>
>>
>> Gary Tully wrote:
>>>
>>> append the transport options to the uri:
>>>
>>> multicast://default?group=TestDeCharge-DEFAULT&useLocalHost=false
>>>
>>> the discovery transport will pull off the parameters it knows about
>>> (eg group) and leave the rest for the discovered transport.
>>>
>>> On 30 July 2010 15:25, Eric-AWL <er...@atosorigin.com> wrote:
>>>>
>>>> Euuuuh, I don't know if I understand what you explain me :
>>>>
>>>>      <networkConnector name="TestDeCharge-DEFAULT-OUT"
>>>>
>>>>  uri="multicast://default?group=TestDeCharge-DEFAULT"
>>>>                        networkTTL="1"
>>>>                        conduitSubscriptions="false"
>>>>                        dynamicOnly="true"
>>>>                        duplex="false"/>
>>>>
>>>> =>
>>>>       <networkConnector name="TestDeCharge-DEFAULT-OUT"
>>>>
>>>>  uri="multicast://default?group=TestDeCharge-DEFAULT"
>>>>                        networkTTL="1"
>>>>                        conduitSubscriptions="false"
>>>>                        dynamicOnly="true"
>>>>                        duplex="false"
>>>>                        useLocalHost="false"/>
>>>>
>>>> I don't see this new option of networkConnector in the documentation
>>>> web
>>>> site.
>>>>
>>>> ???
>>>>
>>>>
>>>> JIRA jira@apache.org wrote:
>>>>>
>>>>>
>>>>>     [
>>>>> https://issues.apache.org/activemq/browse/AMQ-2771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=61003#action_61003
>>>>> ]
>>>>>
>>>>> Gary Tully commented on AMQ-2771:
>>>>> ---------------------------------
>>>>>
>>>>> it does look like the useLocalHost option should default to false as
>>>>> it
>>>>> is
>>>>> an override option that results in a hard coded answer.
>>>>>
>>>>> Eric, for the multicast case, apply the parameters to the multicast
>>>>> url
>>>>> used by the networkconnector, that fact that it is no longer
>>>>> propagated
>>>>> in
>>>>> the discovery multicast frame requires the option to be explicitly set
>>>>> by
>>>>> the user of that information.
>>>>>
>>>>>> Side effect from AMQ-2094, server listens on host name address,
>>>>>> client
>>>>>> connects to localhost with the same URI
>>>>>> --------------------------------------------------------------------------------------------------------------
>>>>>>
>>>>>>                 Key: AMQ-2771
>>>>>>                 URL:
>>>>>> https://issues.apache.org/activemq/browse/AMQ-2771
>>>>>>             Project: ActiveMQ
>>>>>>          Issue Type: Wish
>>>>>>    Affects Versions: 5.3.0, 5.3.1, 5.3.2
>>>>>>            Reporter: Przemek Bruski
>>>>>>             Fix For: 5.4.1
>>>>>>
>>>>>>         Attachments: BrokerServiceResolveHostTest.java
>>>>>>
>>>>>>
>>>>>> TcpTransport.java contains the following code:
>>>>>> {code}
>>>>>>     protected String resolveHostName(String host) throws
>>>>>> UnknownHostException {
>>>>>>         String localName = InetAddress.getLocalHost().getHostName();
>>>>>>         if (localName != null && isUseLocalHost()) {
>>>>>>             if (localName.equals(host)) {
>>>>>>                 return "localhost";
>>>>>>             }
>>>>>>         }
>>>>>>         return host;
>>>>>>     }
>>>>>> {code}
>>>>>> TcpTransportServer.java contains the following code:
>>>>>> {code}
>>>>>>         InetAddress addr = InetAddress.getByName(host);
>>>>>>         try {
>>>>>>             this.serverSocket =
>>>>>> serverSocketFactory.createServerSocket(bind.getPort(), backlog,
>>>>>> addr);
>>>>>> {code}
>>>>>> /etc/hosts looks like this:
>>>>>> {code}
>>>>>> 127.0.0.1       localhost.localdomain   localhost
>>>>>> someip       myhostname.mydomain myhostname
>>>>>> {code}
>>>>>> Now, if I start server with uri: myhostname.mydomain, the server will
>>>>>> listen on someip but the client started on the same host with the
>>>>>> same
>>>>>> uri will try connect to localhost (and fail).
>>>>>> I know that useLocalHost can be used to avoid it, but silently
>>>>>> connecting
>>>>>> to localhost is counterintuitive and does not sound like a valid
>>>>>> default
>>>>>> behaviour (according to documentation, using localhost instead of the
>>>>>> host name is a workaround, the workaround is now effectively default
>>>>>> behaviour and breaks valid setups that used to work with 5.2).
>>>>>> This worked fine on 5.2, since the server bound to all interfaces -
>>>>>> but
>>>>>> fixing this was obviously the right thing to do.
>>>>>> Questions:
>>>>>> 1. Can the default behaviour be changed to one that would work on
>>>>>> majority of systems?
>>>>>> 2. Is the workaround really needed? Maybe it's the local network
>>>>>> settings
>>>>>> that should be corrected?
>>>>>> 3. The debug messages are misleading and probably should be changed:
>>>>>> [ActiveMQ Task] [FailoverTransport:604] urlList
>>>>>> connectionList:[tcp://hostname:54663?wireFormat.maxInactivityDuration=300000]
>>>>>> [ActiveMQ Task] [FailoverTransport:723] Attempting connect to:
>>>>>> tcp://hostname:54663?wireFormat.maxInactivityDuration=300000
>>>>>> [ActiveMQ Task] [FailoverTransport:764] Connect fail to:
>>>>>> tcp://hostname:54663?wireFormat.maxInactivityDuration=300000, reason:
>>>>>> java.net.ConnectException: Connection refused
>>>>>> In fact, it was the connection to localhost:54663 that was refused.
>>>>>
>>>>> --
>>>>> This message is automatically generated by JIRA.
>>>>> -
>>>>> You can reply to this email to add a comment to the issue online.
>>>>>
>>>>>
>>>>>
>>>>
>>>> --
>>>> View this message in context:
>>>> http://old.nabble.com/-jira--Created%3A-%28AMQ-2771%29-Side-effect-from-AMQ-2094%2C-server-listens-on-host-name-address%2C-client-connects-to-localhost-with-the-same-URI-tp28830232p29306610.html
>>>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> http://blog.garytully.com
>>>
>>> Open Source Integration
>>> http://fusesource.com
>>>
>>>
>>
>> --
>> View this message in context:
>> http://old.nabble.com/-jira--Created%3A-%28AMQ-2771%29-Side-effect-from-AMQ-2094%2C-server-listens-on-host-name-address%2C-client-connects-to-localhost-with-the-same-URI-tp28830232p29307245.html
>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>>
>>
> 
> 
> 
> -- 
> http://blog.garytully.com
> 
> Open Source Integration
> http://fusesource.com
> 
> 

-- 
View this message in context: http://old.nabble.com/-jira--Created%3A-%28AMQ-2771%29-Side-effect-from-AMQ-2094%2C-server-listens-on-host-name-address%2C-client-connects-to-localhost-with-the-same-URI-tp28830232p29322557.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.


Re: [jira] Commented: (AMQ-2771) Side effect from AMQ-2094, server listens on host name address, client connects to localhost with the same URI

Posted by Gary Tully <ga...@gmail.com>.
that is xml syntax validation. u need to use &amp; for &

see: http://www.stylusstudio.com/w3c/xml11/sec-references.htm



On 30 July 2010 16:28, Eric-AWL <er...@atosorigin.com> wrote:
>
> Hi Gary
>
> Ok I found the option in the networkConnection documentation, but, in 5.3.2
>
>      <networkConnector name="TestDeCharge-DEFAULT-OUT"
>
> uri="multicast://default?group=TestDeCharge-DEFAULT&useLocalHost=false"
>                        networkTTL="1"
>                        conduitSubscriptions="false"
>                        dynamicOnly="true"
>                        duplex="false"/>
>
> I get
>
> 2010/07/30;17:05:16:513;ERR;CInstance;Serveur(td0sib01s.priv.atos.fr);NA;NA;BUSACT-0000;(Exception)
> org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line
> 34 in XML document from class path resource [activemq.xml] is invalid;
> nested exception is org.xml.sax.SAXParseException: The reference to entity
> "useLocalHost" must end with the ';' delimiter.
>
> if I swap group and useLocalHost :
>
> <networkConnector name="TestDeCharge-DEFAULT-OUT"
>
> uri="multicast://default?useLocalHost=false&group=TestDeCharge-DEFAULT"
>                        networkTTL="1"
>                        conduitSubscriptions="false"
>                        dynamicOnly="true"
>                        duplex="false"/>
>
>
> 2010/07/30;17:15:09:279;ERR;CInstance;Serveur(td0sib01s.priv.atos.fr);NA;NA;BUSACT-0000;(Exception)
> org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line
> 34 in XML document from class path resource [activemq.xml] is invalid;
> nested exception is org.xml.sax.SAXParseException: The reference to entity
> "group" must end with the ';' delimiter.
>
>
> If I use "&*amp;" as I found some answers for old forums questions
>
>      <networkConnector name="TestDeCharge-DEFAULT-OUT"
>
> uri="multicast://default?group=TestDeCharge-DEFAULT&*amp;useLocalHost=false"
>                        networkTTL="1"
>                        conduitSubscriptions="false"
>                        dynamicOnly="true"
>                        duplex="false"/>
>
> I get
>
> 2010/07/30;17:18:45:037;ERR;CInstance;Serveur(td0sib01s.priv.atos.fr);NA;NA;BUSACT-0000;(Exception)
> org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line
> 34 in XML document from class path resource [activemq.xml] is invalid;
> nested exception is org.xml.sax.SAXParseException: The entity name must
> immediately follow the '&' in the entity reference.
>
> It seems to be a kind of AMQ-2598 error that referenced AMQ-1099
>
> Sorry for all these small problems.
>
> Eric-AWL
>
>
> Gary Tully wrote:
>>
>> append the transport options to the uri:
>>
>> multicast://default?group=TestDeCharge-DEFAULT&useLocalHost=false
>>
>> the discovery transport will pull off the parameters it knows about
>> (eg group) and leave the rest for the discovered transport.
>>
>> On 30 July 2010 15:25, Eric-AWL <er...@atosorigin.com> wrote:
>>>
>>> Euuuuh, I don't know if I understand what you explain me :
>>>
>>>      <networkConnector name="TestDeCharge-DEFAULT-OUT"
>>>
>>>  uri="multicast://default?group=TestDeCharge-DEFAULT"
>>>                        networkTTL="1"
>>>                        conduitSubscriptions="false"
>>>                        dynamicOnly="true"
>>>                        duplex="false"/>
>>>
>>> =>
>>>       <networkConnector name="TestDeCharge-DEFAULT-OUT"
>>>
>>>  uri="multicast://default?group=TestDeCharge-DEFAULT"
>>>                        networkTTL="1"
>>>                        conduitSubscriptions="false"
>>>                        dynamicOnly="true"
>>>                        duplex="false"
>>>                        useLocalHost="false"/>
>>>
>>> I don't see this new option of networkConnector in the documentation web
>>> site.
>>>
>>> ???
>>>
>>>
>>> JIRA jira@apache.org wrote:
>>>>
>>>>
>>>>     [
>>>> https://issues.apache.org/activemq/browse/AMQ-2771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=61003#action_61003
>>>> ]
>>>>
>>>> Gary Tully commented on AMQ-2771:
>>>> ---------------------------------
>>>>
>>>> it does look like the useLocalHost option should default to false as it
>>>> is
>>>> an override option that results in a hard coded answer.
>>>>
>>>> Eric, for the multicast case, apply the parameters to the multicast url
>>>> used by the networkconnector, that fact that it is no longer propagated
>>>> in
>>>> the discovery multicast frame requires the option to be explicitly set
>>>> by
>>>> the user of that information.
>>>>
>>>>> Side effect from AMQ-2094, server listens on host name address, client
>>>>> connects to localhost with the same URI
>>>>> --------------------------------------------------------------------------------------------------------------
>>>>>
>>>>>                 Key: AMQ-2771
>>>>>                 URL: https://issues.apache.org/activemq/browse/AMQ-2771
>>>>>             Project: ActiveMQ
>>>>>          Issue Type: Wish
>>>>>    Affects Versions: 5.3.0, 5.3.1, 5.3.2
>>>>>            Reporter: Przemek Bruski
>>>>>             Fix For: 5.4.1
>>>>>
>>>>>         Attachments: BrokerServiceResolveHostTest.java
>>>>>
>>>>>
>>>>> TcpTransport.java contains the following code:
>>>>> {code}
>>>>>     protected String resolveHostName(String host) throws
>>>>> UnknownHostException {
>>>>>         String localName = InetAddress.getLocalHost().getHostName();
>>>>>         if (localName != null && isUseLocalHost()) {
>>>>>             if (localName.equals(host)) {
>>>>>                 return "localhost";
>>>>>             }
>>>>>         }
>>>>>         return host;
>>>>>     }
>>>>> {code}
>>>>> TcpTransportServer.java contains the following code:
>>>>> {code}
>>>>>         InetAddress addr = InetAddress.getByName(host);
>>>>>         try {
>>>>>             this.serverSocket =
>>>>> serverSocketFactory.createServerSocket(bind.getPort(), backlog, addr);
>>>>> {code}
>>>>> /etc/hosts looks like this:
>>>>> {code}
>>>>> 127.0.0.1       localhost.localdomain   localhost
>>>>> someip       myhostname.mydomain myhostname
>>>>> {code}
>>>>> Now, if I start server with uri: myhostname.mydomain, the server will
>>>>> listen on someip but the client started on the same host with the same
>>>>> uri will try connect to localhost (and fail).
>>>>> I know that useLocalHost can be used to avoid it, but silently
>>>>> connecting
>>>>> to localhost is counterintuitive and does not sound like a valid
>>>>> default
>>>>> behaviour (according to documentation, using localhost instead of the
>>>>> host name is a workaround, the workaround is now effectively default
>>>>> behaviour and breaks valid setups that used to work with 5.2).
>>>>> This worked fine on 5.2, since the server bound to all interfaces - but
>>>>> fixing this was obviously the right thing to do.
>>>>> Questions:
>>>>> 1. Can the default behaviour be changed to one that would work on
>>>>> majority of systems?
>>>>> 2. Is the workaround really needed? Maybe it's the local network
>>>>> settings
>>>>> that should be corrected?
>>>>> 3. The debug messages are misleading and probably should be changed:
>>>>> [ActiveMQ Task] [FailoverTransport:604] urlList
>>>>> connectionList:[tcp://hostname:54663?wireFormat.maxInactivityDuration=300000]
>>>>> [ActiveMQ Task] [FailoverTransport:723] Attempting connect to:
>>>>> tcp://hostname:54663?wireFormat.maxInactivityDuration=300000
>>>>> [ActiveMQ Task] [FailoverTransport:764] Connect fail to:
>>>>> tcp://hostname:54663?wireFormat.maxInactivityDuration=300000, reason:
>>>>> java.net.ConnectException: Connection refused
>>>>> In fact, it was the connection to localhost:54663 that was refused.
>>>>
>>>> --
>>>> This message is automatically generated by JIRA.
>>>> -
>>>> You can reply to this email to add a comment to the issue online.
>>>>
>>>>
>>>>
>>>
>>> --
>>> View this message in context:
>>> http://old.nabble.com/-jira--Created%3A-%28AMQ-2771%29-Side-effect-from-AMQ-2094%2C-server-listens-on-host-name-address%2C-client-connects-to-localhost-with-the-same-URI-tp28830232p29306610.html
>>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>>>
>>>
>>
>>
>>
>> --
>> http://blog.garytully.com
>>
>> Open Source Integration
>> http://fusesource.com
>>
>>
>
> --
> View this message in context: http://old.nabble.com/-jira--Created%3A-%28AMQ-2771%29-Side-effect-from-AMQ-2094%2C-server-listens-on-host-name-address%2C-client-connects-to-localhost-with-the-same-URI-tp28830232p29307245.html
> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>
>



-- 
http://blog.garytully.com

Open Source Integration
http://fusesource.com

Re: [jira] Commented: (AMQ-2771) Side effect from AMQ-2094, server listens on host name address, client connects to localhost with the same URI

Posted by Eric-AWL <er...@atosorigin.com>.
Hi Gary

Ok I found the option in the networkConnection documentation, but, in 5.3.2

      <networkConnector name="TestDeCharge-DEFAULT-OUT"
                       
uri="multicast://default?group=TestDeCharge-DEFAULT&useLocalHost=false"
                        networkTTL="1"
                        conduitSubscriptions="false"
                        dynamicOnly="true"
                        duplex="false"/>

I get

2010/07/30;17:05:16:513;ERR;CInstance;Serveur(td0sib01s.priv.atos.fr);NA;NA;BUSACT-0000;(Exception)
org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line
34 in XML document from class path resource [activemq.xml] is invalid;
nested exception is org.xml.sax.SAXParseException: The reference to entity
"useLocalHost" must end with the ';' delimiter.

if I swap group and useLocalHost :

<networkConnector name="TestDeCharge-DEFAULT-OUT"
                       
uri="multicast://default?useLocalHost=false&group=TestDeCharge-DEFAULT"
                        networkTTL="1"
                        conduitSubscriptions="false"
                        dynamicOnly="true"
                        duplex="false"/>


2010/07/30;17:15:09:279;ERR;CInstance;Serveur(td0sib01s.priv.atos.fr);NA;NA;BUSACT-0000;(Exception)
org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line
34 in XML document from class path resource [activemq.xml] is invalid;
nested exception is org.xml.sax.SAXParseException: The reference to entity
"group" must end with the ';' delimiter.


If I use "&*amp;" as I found some answers for old forums questions

      <networkConnector name="TestDeCharge-DEFAULT-OUT"
                       
uri="multicast://default?group=TestDeCharge-DEFAULT&*amp;useLocalHost=false"
                        networkTTL="1"
                        conduitSubscriptions="false"
                        dynamicOnly="true"
                        duplex="false"/>

I get

2010/07/30;17:18:45:037;ERR;CInstance;Serveur(td0sib01s.priv.atos.fr);NA;NA;BUSACT-0000;(Exception)
org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line
34 in XML document from class path resource [activemq.xml] is invalid;
nested exception is org.xml.sax.SAXParseException: The entity name must
immediately follow the '&' in the entity reference.

It seems to be a kind of AMQ-2598 error that referenced AMQ-1099

Sorry for all these small problems.

Eric-AWL


Gary Tully wrote:
> 
> append the transport options to the uri:
> 
> multicast://default?group=TestDeCharge-DEFAULT&useLocalHost=false
> 
> the discovery transport will pull off the parameters it knows about
> (eg group) and leave the rest for the discovered transport.
> 
> On 30 July 2010 15:25, Eric-AWL <er...@atosorigin.com> wrote:
>>
>> Euuuuh, I don't know if I understand what you explain me :
>>
>>      <networkConnector name="TestDeCharge-DEFAULT-OUT"
>>                      
>>  uri="multicast://default?group=TestDeCharge-DEFAULT"
>>                        networkTTL="1"
>>                        conduitSubscriptions="false"
>>                        dynamicOnly="true"
>>                        duplex="false"/>
>>
>> =>
>>       <networkConnector name="TestDeCharge-DEFAULT-OUT"
>>                      
>>  uri="multicast://default?group=TestDeCharge-DEFAULT"
>>                        networkTTL="1"
>>                        conduitSubscriptions="false"
>>                        dynamicOnly="true"
>>                        duplex="false"
>>                        useLocalHost="false"/>
>>
>> I don't see this new option of networkConnector in the documentation web
>> site.
>>
>> ???
>>
>>
>> JIRA jira@apache.org wrote:
>>>
>>>
>>>     [
>>> https://issues.apache.org/activemq/browse/AMQ-2771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=61003#action_61003
>>> ]
>>>
>>> Gary Tully commented on AMQ-2771:
>>> ---------------------------------
>>>
>>> it does look like the useLocalHost option should default to false as it
>>> is
>>> an override option that results in a hard coded answer.
>>>
>>> Eric, for the multicast case, apply the parameters to the multicast url
>>> used by the networkconnector, that fact that it is no longer propagated
>>> in
>>> the discovery multicast frame requires the option to be explicitly set
>>> by
>>> the user of that information.
>>>
>>>> Side effect from AMQ-2094, server listens on host name address, client
>>>> connects to localhost with the same URI
>>>> --------------------------------------------------------------------------------------------------------------
>>>>
>>>>                 Key: AMQ-2771
>>>>                 URL: https://issues.apache.org/activemq/browse/AMQ-2771
>>>>             Project: ActiveMQ
>>>>          Issue Type: Wish
>>>>    Affects Versions: 5.3.0, 5.3.1, 5.3.2
>>>>            Reporter: Przemek Bruski
>>>>             Fix For: 5.4.1
>>>>
>>>>         Attachments: BrokerServiceResolveHostTest.java
>>>>
>>>>
>>>> TcpTransport.java contains the following code:
>>>> {code}
>>>>     protected String resolveHostName(String host) throws
>>>> UnknownHostException {
>>>>         String localName = InetAddress.getLocalHost().getHostName();
>>>>         if (localName != null && isUseLocalHost()) {
>>>>             if (localName.equals(host)) {
>>>>                 return "localhost";
>>>>             }
>>>>         }
>>>>         return host;
>>>>     }
>>>> {code}
>>>> TcpTransportServer.java contains the following code:
>>>> {code}
>>>>         InetAddress addr = InetAddress.getByName(host);
>>>>         try {
>>>>             this.serverSocket =
>>>> serverSocketFactory.createServerSocket(bind.getPort(), backlog, addr);
>>>> {code}
>>>> /etc/hosts looks like this:
>>>> {code}
>>>> 127.0.0.1       localhost.localdomain   localhost
>>>> someip       myhostname.mydomain myhostname
>>>> {code}
>>>> Now, if I start server with uri: myhostname.mydomain, the server will
>>>> listen on someip but the client started on the same host with the same
>>>> uri will try connect to localhost (and fail).
>>>> I know that useLocalHost can be used to avoid it, but silently
>>>> connecting
>>>> to localhost is counterintuitive and does not sound like a valid
>>>> default
>>>> behaviour (according to documentation, using localhost instead of the
>>>> host name is a workaround, the workaround is now effectively default
>>>> behaviour and breaks valid setups that used to work with 5.2).
>>>> This worked fine on 5.2, since the server bound to all interfaces - but
>>>> fixing this was obviously the right thing to do.
>>>> Questions:
>>>> 1. Can the default behaviour be changed to one that would work on
>>>> majority of systems?
>>>> 2. Is the workaround really needed? Maybe it's the local network
>>>> settings
>>>> that should be corrected?
>>>> 3. The debug messages are misleading and probably should be changed:
>>>> [ActiveMQ Task] [FailoverTransport:604] urlList
>>>> connectionList:[tcp://hostname:54663?wireFormat.maxInactivityDuration=300000]
>>>> [ActiveMQ Task] [FailoverTransport:723] Attempting connect to:
>>>> tcp://hostname:54663?wireFormat.maxInactivityDuration=300000
>>>> [ActiveMQ Task] [FailoverTransport:764] Connect fail to:
>>>> tcp://hostname:54663?wireFormat.maxInactivityDuration=300000, reason:
>>>> java.net.ConnectException: Connection refused
>>>> In fact, it was the connection to localhost:54663 that was refused.
>>>
>>> --
>>> This message is automatically generated by JIRA.
>>> -
>>> You can reply to this email to add a comment to the issue online.
>>>
>>>
>>>
>>
>> --
>> View this message in context:
>> http://old.nabble.com/-jira--Created%3A-%28AMQ-2771%29-Side-effect-from-AMQ-2094%2C-server-listens-on-host-name-address%2C-client-connects-to-localhost-with-the-same-URI-tp28830232p29306610.html
>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>>
>>
> 
> 
> 
> -- 
> http://blog.garytully.com
> 
> Open Source Integration
> http://fusesource.com
> 
> 

-- 
View this message in context: http://old.nabble.com/-jira--Created%3A-%28AMQ-2771%29-Side-effect-from-AMQ-2094%2C-server-listens-on-host-name-address%2C-client-connects-to-localhost-with-the-same-URI-tp28830232p29307245.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.