activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jim Gomes (JIRA)" <>
Subject [jira] Commented: (AMQNET-110) WireFormatNegotiator does not negotiate version
Date Tue, 02 Sep 2008 23:01:52 GMT


Jim Gomes commented on AMQNET-110:

Taken from the [OpenWire Specification documentation|]

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.

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

View raw message