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