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 & 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 & 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.