[ 
https://issues.apache.org/activemq/browse/AMQNET-110?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=45337#action_45337
 ] 

Jim Gomes commented on AMQNET-110:
----------------------------------

Taken from the [OpenWire Specification 
documentation|http://activemq.apache.org/openwire-version-2-specification.html] 
:

{quote}
OpenWire is an extensible in that it supports adding new encoding options while 
still being backward compatible with previous versions of the protocol. Every 
OpenWire protocol session initially starts with all encoding options turned off 
and at version 1 of command marshalers. An initial WIREFORMAT_INFO command is 
exchanged between the two nodes so that additional encoding features can be 
enabled. If both sides request an encoding feature to be enabled then it will 
be enabled. The command marshalers used will be the highest version that they 
both support.
{quote}

Based on this, I do not think this negotiation log exposes a bug, but rather 
the inner-workings of the OpenWire negotiation process.

> WireFormatNegotiator does not negotiate version
> -----------------------------------------------
>
>                 Key: AMQNET-110
>                 URL: https://issues.apache.org/activemq/browse/AMQNET-110
>             Project: ActiveMQ .Net
>          Issue Type: Bug
>          Components: ActiveMQ Client
>            Reporter: Vadim Chekan
>            Assignee: Jim Gomes
>            Priority: Minor
>
> Apparently WireFormatNegotiator checks only magic bytes during the
> format negotiation and does not check the version.
> So NMS client V2 talks to ActiveMQ V3.
> 394 [-1211205856] INFO Apache.NMS.Tracer (null) - SENDING:
> WireFormatInfo[ Magic=System.Byte[] Version=2
> MarshalledProperties={CacheEnabled=False, SizePrefixDisabled=False,
> StackTraceEnabled=False, TcpNoDelayEnabled=False,
> TightEncodingEnabled=False} ]
> 395 [-1225606256] DEBUG Apache.NMS.Tracer (null) - Parsing type: 1
> with: Apache.NMS.ActiveMQ.OpenWire.V1.WireFormatInfoMarshaller
> 403 [-1225606256] INFO Apache.NMS.Tracer (null) - RECEIVED:
> WireFormatInfo[ Magic=System.Byte[] Version=3
> MarshalledProperties={CacheEnabled=True, CacheSize=1024,
> SizePrefixDisabled=False, TightEncodingEnabled=True,
> MaxInactivityDuration=30000, MaxInactivityDurationInitalDelay=10000,
> StackTraceEnabled=True, TcpNoDelayEnabled=True} ]
> Please note that even though ActiveMQ claimed V3 protocol, NMS client 
> accepted it.
> According to the current code in WireFormatNegotiator  only magic bytes are 
> checked but not the version.

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

Reply via email to