You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Gordon Sim (JIRA)" <ji...@apache.org> on 2016/06/08 13:27:21 UTC

[jira] [Updated] (ARTEMIS-562) Use 'to' field if sender target is null

     [ https://issues.apache.org/jira/browse/ARTEMIS-562?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gordon Sim updated ARTEMIS-562:
-------------------------------
    Attachment: anonymous_sender.py

Attaching a simple example using qpid proton's python bindings. E.g.

{noformat}
$ PN_TRACE_FRM=1 python ./anonymous_sender.py -t a -t b -m 2
[0x55e66a4d12b0]:  -> SASL
[0x55e66a4d12b0]:  <- SASL
[0x55e66a4d12b0]:0 <- @sasl-mechanisms(64) [sasl-server-mechanisms=@PN_SYMBOL[:ANONYMOUS, :PLAIN]]
[0x55e66a4d12b0]:0 -> @sasl-init(65) [mechanism=:ANONYMOUS, initial-response=b"anonymous@localhost.localdomain"]
[0x55e66a4d12b0]:0 <- @sasl-outcome(68) [code=0]
[0x55e66a4d12b0]:  -> AMQP
[0x55e66a4d12b0]:0 -> @open(16) [container-id="71b7458c-c95b-41b2-98dd-73b601279f63", hostname="localhost", channel-max=32767]
[0x55e66a4d12b0]:0 -> @begin(17) [next-outgoing-id=0, incoming-window=2147483647, outgoing-window=2147483647]
[0x55e66a4d12b0]:0 -> @attach(18) [name="71b7458c-c95b-41b2-98dd-73b601279f63-59a46c3a-59b6-41ca-893e-e650427055b8", handle=0, role=false, snd-settle-mode=2, rcv-settle-mode=0, source=@source(40) [durable=0, timeout=0, dynamic=false], target=@target(41) [durable=0, timeout=0, dynamic=false], initial-delivery-count=0]
[0x55e66a4d12b0]:  <- AMQP
[0x55e66a4d12b0]:0 <- @open(16) [container-id="", hostname="", max-frame-size=4294967295, channel-max=65535, idle-time-out=30000]
[0x55e66a4d12b0]:0 <- @begin(17) [remote-channel=0, next-outgoing-id=1, incoming-window=2147483647, outgoing-window=2147483647, handle-max=65535]
[0x55e66a4d12b0]:0 <- @attach(18) [name="71b7458c-c95b-41b2-98dd-73b601279f63-59a46c3a-59b6-41ca-893e-e650427055b8", handle=0, role=true, snd-settle-mode=2, rcv-settle-mode=0, source=@source(40) []]
[0x55e66a4d12b0]:0 <- @detach(22) [handle=0, closed=true, error=@error(29) [condition=:"amqp:invalid-field", description="AMQ219000: target address not set"]]
ERROR:root:AMQ219000: target address not set
[0x55e66a4d12b0]:0 -> @detach(22) [handle=0, closed=true]
[0x55e66a4d12b0]:0 -> @close(24) []
[0x55e66a4d12b0]:  -> EOS
[0x55e66a4d12b0]:0 <- @close(24) []
[0x55e66a4d12b0]:  <- EOS
{noformat}

Desired outcome would be a message each in queues 'a' and 'b' (as happens for ActiveMQ5).

> Use 'to' field if sender target is null
> ---------------------------------------
>
>                 Key: ARTEMIS-562
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-562
>             Project: ActiveMQ Artemis
>          Issue Type: New Feature
>          Components: AMQP, Broker
>    Affects Versions: 1.3.0
>            Reporter: Gordon Sim
>         Attachments: anonymous_sender.py
>
>
> ActiveMQ5 (and other AMQP brokers) support creating a sender with a null target, and then identifying the destination of each messages via the 'to' field. This is very useful in some request-response cases, as it avoids the 'service' having to create and manage senders for every reply-to address. Indeed the qpid-proton request-response examples rely on this.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)