GitHub user gaohoward opened a pull request:

    https://github.com/apache/activemq-artemis/pull/1542

    ARTEMIS-1424 Openwire not work with different tightEncoding options

    If message senders and receivers uses different
    wireformat.tightEncodingEnabled options, broker will get marshalling
    problem. This is because when openwire messages are converted to
    core messages, and later these core messages converted to openwire
    messages, the broker uses a mashaller that comes with the connection
    used to carry the messages.
    
    For example, if a producer sents a message using option "wireformat
    .tightEncodingEnabled=false" and a receiver tries to receive it
    using 'true' for the same option, it'll never get it because the
    broker will fail to use a "tight encoding" marshaller to
    decode a 'loose encoded' message.
    
    To fix the problem, we always use 'tight encoding' for internal
    message converters.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/gaohoward/activemq-artemis gentmq-743

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/activemq-artemis/pull/1542.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1542
    
----
commit f84d26ebb26b0c424ae90f994fc1aa673bbad88f
Author: Howard Gao <[email protected]>
Date:   2017-09-18T23:47:51Z

    ARTEMIS-1424 Openwire not work with different tightEncoding options
    
    If message senders and receivers uses different
    wireformat.tightEncodingEnabled options, broker will get marshalling
    problem. This is because when openwire messages are converted to
    core messages, and later these core messages converted to openwire
    messages, the broker uses a mashaller that comes with the connection
    used to carry the messages.
    
    For example, if a producer sents a message using option "wireformat
    .tightEncodingEnabled=false" and a receiver tries to receive it
    using 'true' for the same option, it'll never get it because the
    broker will fail to use a "tight encoding" marshaller to
    decode a 'loose encoded' message.
    
    To fix the problem, we always use 'tight encoding' for internal
    message converters.

----


---

Reply via email to