On 31/07/18 21:21, Michael Ivanov wrote:
Then I modified messenger.c (starting from line 1768) and set 'exclusive'
property there on source terminus when creating queue using '#' specifier
[...]
And after that I have seen that my temporary queues started to be created
in exclusive mode, at least qpid-stat shows this:

   queue                                        dur  autoDel  excl  msg   msgIn 
 msgOut  bytes  bytesIn  bytesOut  cons  bind
   
==========================================================================================================================
   21948F78- . . . -70568712B_receiver-27663.0       Y        Y        1     1  
    0     435    435        0         1     1

But after clien program that has created this queue termionated, the queue 
regrettably
was not deleted, but "exclusive" property was dropped instead:

   queue                                        dur  autoDel  excl  msg   msgIn 
 msgOut  bytes  bytesIn  bytesOut  cons  bind
   
==========================================================================================================================
   21948F78- . . . -70568712B_receiver-27663.0       Y                 0     1  
    1       0    435      435         0     1

Setting lifetime-property to delete-on-close in same way also does not make
any difference.

Any hope to get temporary queue deleted without terminating server (responder)
process?

How are you setting the lifetime-policy? It needs to be encoded as a described value. E.g. the trace would be something like this:

@attach(18) [name="97e94a05-1e69-492f-b9b4-282beb79484e#_aafc09ac-efc1-4f51-b038-c529408b7b61", 
handle=0, role=true, snd-settle-mode=2, rcv-settle-mode=0, source=@source(40) [durable=0, timeout=0, 
dynamic=true, dynamic-node-properties={:"lifetime-policy"=@:"amqp:delete-on-close:list" 
[]}], target=@target(41) [durable=0, timeout=0, dynamic=false], initial-delivery-count=0, max-message-size=0]

When I do that (I did this using a different client), then the broker will indeed delete that queue when the receiver exits. The sender is still open at that point, but it gets a detach informing it that the queue is deleted.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org
For additional commands, e-mail: users-h...@qpid.apache.org

Reply via email to