Bug 477282

Summary: Add the Queue section in user guide
Product: Red Hat Enterprise MRG Reporter: Carl Trieloff <cctrieloff>
Component: Messaging_Programming_ReferenceAssignee: Lana Brindley <lbrindle>
Status: CLOSED CURRENTRELEASE QA Contact: Frantisek Reznicek <freznice>
Severity: medium Docs Contact:
Priority: low    
Version: 1.1CC: esammons, mhideo
Target Milestone: 1.1.1Keywords: Documentation
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-01-12 05:37:08 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Carl Trieloff 2008-12-20 01:16:10 UTC
Deleting Queues:

When the broker receives a queue delete command for a particular queue,
the following will happen subject to the following checks stated below.

1.) It will destroy the queue including the messages
2.) Will remove *all* bindings that refer to this queue.

Conditions
-----------
1. If ACL is enabled, it will check if the user who initiated the queue
delete has permissions.

2. If the "ifEmpty" flag is passed in the queue-delete method it will
raise an exception if the queue is not empty

3. If the "ifUnsed" flag is passed in the queue-delete method it will
raise an exception if the queue has subscribers.

4. If the queue is exclusive it will check if the user who initiated the
queue-delete owns the queue.

Note that when the queue has been deleted, the mgnt object associated with the queue will out-live the queue. Thus it will be possible to see the deleted queue via qpidd-tool or the management console with the deleted timestamp filled.

Comment 1 Lana Brindley 2009-01-12 05:34:44 UTC
Is the "ifUnsed" flag supposed to be the "ifUnused" flag?

LKB

Comment 2 Lana Brindley 2009-01-12 05:37:08 UTC
	<formalpara id="form-Messaging_User_Guide-Queues-Deleting_Queues">
		<title>Deleting Queues</title>
		<para>
			When a queue is deleted the queue and any messages it contains are destroyed, and all bindings that refer to the queue are removed. When the broker receives a queue delete command for a particular queue, the following checks are made before the deletion occurs:
		</para>
	</formalpara>
	<para>
		<orderedlist>
			<listitem>
				<para>
					If ACL is enabled, the broker will check that the user who initiated the deletion has permission to do so
				</para>
			</listitem>
			<listitem>
				<para>
					If the <parameter>ifEmpty</parameter> flag is passed the broker will raise an exception if the queue is not empty
				</para>
			</listitem>
			<listitem>
				<para>
					If the <parameter>ifUnused</parameter> flag is passed the broker will raise an exception if the queue has subscribers
				</para>
			</listitem>
			<listitem>
				<para>
					If the queue is exclusive the broker will check that the user who initiated the deletion owns the queue
				</para>
			</listitem>
		</orderedlist>
		 Once the queue has been deleted, the management object associated with the queue will remain. This makes it possible to see the deleted queue using <command>qpidd-tool</command> or the &CONSOLE;. These tools will show the queue with a timestamp of when it was deleted.
	</para>

Available on the stage for review shortly.

LKB