qpid-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From oru...@apache.org
Subject [06/32] qpid-site git commit: QPID-8189: Update site for Qpid Broker-J release 7.0.4
Date Sat, 02 Jun 2018 21:28:32 GMT
http://git-wip-us.apache.org/repos/asf/qpid-site/blob/00086d70/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-Queues.html.in
----------------------------------------------------------------------
diff --git a/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-Queues.html.in b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-Queues.html.in
new file mode 100644
index 0000000..a3fabae
--- /dev/null
+++ b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-Queues.html.in
@@ -0,0 +1,20 @@
+<div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">7.7.&#160;Queues</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Management-Managing-Exchanges.html">Prev</a>&#160;</td><th align="center" width="60%">Chapter&#160;7.&#160;Managing Entities</th><td align="right" width="20%">&#160;<a accesskey="n" href="Java-Broker-Management-Managing-Consumers.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Java-Broker-Management-Managing-Queues"></a>7.7.&#160;Queues</h2></div></div></div><p><a class="link" href="Java-Broker-Concepts-Queues.html" title="4.7.&#160;Queues">Queues</a> are named entities that
+    hold/buffer messages for later delivery to consumer applications.</p><p>Queues can be managed using the HTTP or AMQP channels.</p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-Queues-Types"></a>7.7.1.&#160;Types</h3></div></div></div><p>The Broker supports four different queue types, each with different delivery semantics.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><a class="link" href="Java-Broker-Concepts-Queues.html#Java-Broker-Concepts-Queues-Types-Standard" title="4.7.1.1.&#160;Standard">Standard</a> - a simple First-In-First-Out (FIFO) queue</p></li><li class="listitem"><p><a class="link" href="Java-Broker-Concepts-Queues.html#Java-Broker-Concepts-Queues-Types-Priority" title="4.7.1.2.&#160;Priority">Priority</a> - delivery order depends on the priority of each message</p></li><li class="listitem"><p><a class="link" href="Java-Broker-Concepts-
 Queues.html#Java-Broker-Concepts-Queues-Types-Sorted" title="4.7.1.3.&#160;Sorted Queues">Sorted</a> -
+            delivery order depends on the value of the sorting key property in each message</p></li><li class="listitem"><p><a class="link" href="Java-Broker-Concepts-Queues.html#Java-Broker-Concepts-Queues-Types-LVQ" title="4.7.1.4.&#160;Last Value Queues (LVQ)">Last Value
+              Queue</a> - also known as an LVQ, retains only the last (newest) message received
+            with a given LVQ key value</p></li></ul></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-Queues-Attributes"></a>7.7.2.&#160;Attributes</h3></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>Name of the queue</em></span>. Message consumers and browsers refer to this
+            name when they wish to subscribe to queue to receive messages from it.</p></li><li class="listitem"><p><span class="emphasis"><em>Type of the queue</em></span>. Can be either <a class="link" href="Java-Broker-Concepts-Queues.html#Java-Broker-Concepts-Queues-Types-Standard" title="4.7.1.1.&#160;Standard">standard</a>, <a class="link" href="Java-Broker-Concepts-Queues.html#Java-Broker-Concepts-Queues-Types-Priority" title="4.7.1.2.&#160;Priority">priority</a>, <a class="link" href="Java-Broker-Concepts-Queues.html#Java-Broker-Concepts-Queues-Types-Sorted" title="4.7.1.3.&#160;Sorted Queues">sorted</a>, or <a class="link" href="Java-Broker-Concepts-Queues.html#Java-Broker-Concepts-Queues-Types-LVQ" title="4.7.1.4.&#160;Last Value Queues (LVQ)">lvq</a>.</p></li><li class="listitem"><p><span class="emphasis"><em>Durable</em></span>. Whether the queue survives a restart. Messages on a
+            non durable queue do not survive a restart even if they are marked persistent.</p></li><li class="listitem"><p><span class="emphasis"><em>Maximum/Minimum TTL</em></span>. Defines a maximum and minimum time-to-live (TTL). Messages
+                arriving with TTL larger than the maximum (including those with no TTL at all, which are considered to
+                have a TTL of infinity) will be overridden by the maximum. Similarly, messages arriving with TTL less
+                than the minimum, will be overridden by the minimum.
+            </p><p>Changing these values affects only new arrivals, existing messages already on the
+            queue are not affected.</p></li><li class="listitem"><p><span class="emphasis"><em>Message persistent override</em></span>. Allow message persistent settings
+            of incoming messages to be overridden. Changing this value affects only new arrivals,
+            existing messages on the queue are not affected. </p></li><li class="listitem"><p><span class="emphasis"><em>Overflow policy</em></span>. Queues have the ability to limit the of the
+            cumulative size of all the messages contained within the store. This feature is
+            described in detail <a class="xref" href="Java-Broker-Concepts-Queues.html#Java-Broker-Concepts-Queue-OverflowPolicy" title="4.7.5.&#160;Controlling Queue Size">Section&#160;4.7.5, &#8220;Controlling Queue Size&#8221;</a>.</p></li><li class="listitem"><p><span class="emphasis"><em>Alerting Thresholds</em></span>. Queues have the ability to alert on a
+            variety of conditions: total queue depth exceeded a number or size, message age exceeded
+            a threshold, message size exceeded a threshold. These thresholds are soft. See <a class="xref" href="Java-Broker-Appendix-Queue-Alerts.html" title="Appendix&#160;E.&#160;Queue Alerts">Appendix&#160;E, <em>Queue Alerts</em></a></p></li><li class="listitem"><p><span class="emphasis"><em>Message Groups</em></span>. See <a class="xref" href="Java-Broker-Concepts-Queues.html#Java-Broker-Concepts-Queues-Message-Grouping" title="4.7.2.&#160;Messaging Grouping">Section&#160;4.7.2, &#8220;Messaging Grouping&#8221;</a></p></li><li class="listitem"><p><span class="emphasis"><em>maximumDeliveryAttempts</em></span>. See <a class="xref" href="Java-Broker-Runtime-Handling-Undeliverable-Messages.html" title="9.4.&#160;Handing Undeliverable Messages">Section&#160;9.4, &#8220;Handing Undeliverable Messages&#8221;</a></p></li><li class="listitem"><p><span class="emphasis"><em>alternateBinding</em></span>. Provides an alternate destination that will be used when the
+              number of delivery attempts exceeds the <span class="emphasis"><em>maximumDeliveryAttempts</em></span> configured on this
+              queue.  Messages are also routed to this destination if this queue is deleted.</p></li></ul></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-Queue-Lifecycle"></a>7.7.3.&#160;Lifecycle</h3></div></div></div><p>Not supported</p></div></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Management-Managing-Exchanges.html">Prev</a>&#160;</td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Management-Managing-Entities.html">Up</a></td><td align="right" width="40%">&#160;<a accesskey="n" href="Java-Broker-Management-Managing-Consumers.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">7.6.&#160;Exchanges&#160;</td><td align="center" width="20%"><a accesskey="h" href="Apache-Qpid-Broker-J-Book.html">Home</a></td><td align="right" valign="top" width="40%">&#160;7.8.&#160;
 Consumers</td></tr></table></div></div>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/00086d70/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-RemoteReplicationNodes.html.in
----------------------------------------------------------------------
diff --git a/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-RemoteReplicationNodes.html.in b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-RemoteReplicationNodes.html.in
new file mode 100644
index 0000000..4567352
--- /dev/null
+++ b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-RemoteReplicationNodes.html.in
@@ -0,0 +1,24 @@
+<div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">7.5.&#160;Remote Replication Nodes</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Management-Managing-Virtualhosts.html">Prev</a>&#160;</td><th align="center" width="60%">Chapter&#160;7.&#160;Managing Entities</th><td align="right" width="20%">&#160;<a accesskey="n" href="Java-Broker-Management-Managing-Exchanges.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Java-Broker-Management-Managing-RemoteReplicationNodes"></a>7.5.&#160;Remote Replication Nodes</h2></div></div></div><p>Used for HA only. A <a class="link" href="Java-Broker-Concepts-RemoteReplicationNodes.html" title="4.4.&#160;Remote Replication Nodes">remote replication node</a> is a representation of another virtualhost node
+    in the group. Remote replication nodes are not created directly. Instead the system
+    automatically creates a remote replication node for every node in the group. It serves to
+    provide a view of the whole group from every node in the system.</p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-RemoteReplicationNodes-Attributes"></a>7.5.1.&#160;Attributes</h3></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>Name the remote replication node</em></span>. This is the name of the
+            remote virtualhost node</p></li><li class="listitem"><p><span class="emphasis"><em>Role</em></span>. Indicates the role that the remote node is playing in the
+            group at this moment. </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem"><p><span class="emphasis"><em>MASTER</em></span> - Remote node is a master.</p></li><li class="listitem"><p><span class="emphasis"><em>REPLICA</em></span> - Remote node is a replica.</p></li><li class="listitem"><p><span class="emphasis"><em>UNREACHABLE</em></span> - Remote node unreachable from this node.
+                  This remote note may be down, or an network problem may prevent it from being
+                  contacted.</p></li></ul></div><p>
+          </p></li><li class="listitem"><p><span class="emphasis"><em>Join time</em></span>. Time when first contact was established with this
+            node.</p></li><li class="listitem"><p><span class="emphasis"><em>Last known transaction id</em></span>. Last transaction id reported
+            processed by node. This is an internal transaction counter and does not relate to any
+            value available to the messaging clients. This value can only be used to determine the
+            node is up to date relative to others in the group.</p></li></ul></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-RemoteReplicationNodes-Children"></a>7.5.2.&#160;Children</h3></div></div></div><p>None</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-RemoteReplicationNodes-Lifecycle"></a>7.5.3.&#160;Lifecycle</h3></div></div></div><p>
+      </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>Delete</em></span>. Causes the remote node to be permanently removed from
+            the group. This operation should be used when the virtualhost node cannot be deleted
+            from its own Broker, for instance, if a Broker has been destroyed by machine
+            failure.</p></li></ul></div><p>
+    </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-RemoteReplication-Nodes-Operations"></a>7.5.4.&#160;Operations</h3></div></div></div><p>
+      </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>Transfer Master</em></span>. Initiates a process where a master is moved to
+            anther node in the group. The transfer sequence is as follows. </p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>Group waits until the proposed master is reasonable up to date.</p></li><li class="listitem"><p>Any in-flight transactions on the current master are blocked.</p></li><li class="listitem"><p>The current master awaits the proposed master to become up to date.</p></li><li class="listitem"><p>The mastership is transferred. This will automatically disconnect messaging
+                  clients from the old master, and in-flight transactions are rolled back. Messaging
+                  clients reconnect to the new master.</p></li><li class="listitem"><p>The old master will rejoin as a replica.</p></li></ol></div><p>
+          </p></li></ul></div><p>
+    </p></div></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Management-Managing-Virtualhosts.html">Prev</a>&#160;</td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Management-Managing-Entities.html">Up</a></td><td align="right" width="40%">&#160;<a accesskey="n" href="Java-Broker-Management-Managing-Exchanges.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">7.4.&#160;VirtualHosts&#160;</td><td align="center" width="20%"><a accesskey="h" href="Apache-Qpid-Broker-J-Book.html">Home</a></td><td align="right" valign="top" width="40%">&#160;7.6.&#160;Exchanges</td></tr></table></div></div>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/00086d70/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-Truststores.html.in
----------------------------------------------------------------------
diff --git a/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-Truststores.html.in b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-Truststores.html.in
new file mode 100644
index 0000000..3417f2b
--- /dev/null
+++ b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-Truststores.html.in
@@ -0,0 +1,38 @@
+<div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">7.12.&#160;Truststores</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Management-Managing-Keystores.html">Prev</a>&#160;</td><th align="center" width="60%">Chapter&#160;7.&#160;Managing Entities</th><td align="right" width="20%">&#160;<a accesskey="n" href="Java-Broker-Management-Managing-Group-Providers.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Java-Broker-Management-Managing-Truststores"></a>7.12.&#160;Truststores</h2></div></div></div><p>
+        <a class="link" href="Java-Broker-Concepts-Other-Services.html#Java-Broker-Concepts-Truststores" title="4.10.4.&#160;Truststores">Truststores</a>
+        have a number of roles within
+        the Broker.
+        </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>A truststore is required by a Port in order to support SSL client authentication.</p></li><li class="listitem"><p>Truststores have a optional role in end to end message encryption. The Broker acts as a
+                    <a class="link" href="https://en.wikipedia.org/wiki/Key_server_(cryptographic)" target="_top">
+                        Key Server
+                    </a>
+                    so that publishing applications have convenient access to recipient's public keys.
+                </p></li><li class="listitem"><p>Some authentication providers also use a truststore when connecting to authentication systems that
+                    are protected by a private issuer
+                    SSL certificate.
+                </p></li></ul></div><p>
+    </p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-Truststores-Types"></a>7.12.1.&#160;Types</h3></div></div></div><p>The following truststore types are supported. </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>File Trust Store</em></span>. This type accepts the standard JKS
+                        truststore format understood by Java and Java tools such as <a class="link" href="http://docs.oracle.com/javase/7/docs/technotes/tools/solaris/keytool.html" target="_top">keytool</a>.</p></li><li class="listitem"><p><span class="emphasis"><em>Non Java Trust Store</em></span>. A non java trust store accepts key
+                        material in PEM and DER file formats. Either a path to the certificate on the server can be specified using the file:// protocol or the certificate can be uploaded with the data:// protocol</p></li><li class="listitem"><p><span class="emphasis"><em>Managed Certificate Store</em></span>. This type accepts key
+                        material in PEM and DER file formats. Contrary to the Non Java Trust Store this store allows the user to add multiple certificates and stores them in the broker configuration.</p></li><li class="listitem"><p><span class="emphasis"><em>Site Specific Trust Store</em></span>. This type will download a certificate from the provided SSL/TLS enabled URL. Note that you must specify both the protocol and the port. Example: https://example.com:443</p></li></ul></div><p>
+        </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-Truststores-Attributes"></a>7.12.2.&#160;Attributes</h3></div></div></div><p>
+            </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>Name the truststore</em></span>. Used to identify the
+                        truststore.</p></li><li class="listitem"><p><span class="emphasis"><em>Exposed as Message Source</em></span>. If enabled, the Broker
+                        will distribute certificates contained within the trustore to clients.
+                        Used by the end to end message encryption feature.</p></li><li class="listitem"><p><span class="emphasis"><em>Trust Anchor Validity Enforced</em></span>. If enabled, authentications will
+                        fail if the trust anchor's validity date has not yet been reached or already expired.</p></li></ul></div><p>
+        </p><p>The following attributes apply to <span class="emphasis"><em>File Trust Stores</em></span> only.</p><p>
+            </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>Path</em></span>. Path to truststore file</p></li><li class="listitem"><p><span class="emphasis"><em>Truststore password</em></span>. Password used to secure the truststore</p><div class="important" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Important</h3><p> The password of the certificate used by the Broker <span class="bold"><strong>must</strong></span> match the password of the keystore
+                                itself. </p></div></li><li class="listitem"><p><span class="emphasis"><em>Certificate Alias</em></span>. An optional way of specifying
+                        which certificate the broker should use if the keystore contains multiple
+                        entries.</p></li><li class="listitem"><p><span class="emphasis"><em>Manager Factory Algorithm</em></span>. In keystores the have more
+                        than one certificate, the alias identifies the certificate to be
+                        used.</p></li><li class="listitem"><p><span class="emphasis"><em>Key Store Type</em></span>. Type of Keystore.</p></li><li class="listitem"><p><span class="emphasis"><em>Peers only</em></span>. When "Peers Only" option is selected for
+                        the Truststore it will allow authenticate only those clients that present a
+                        certificate exactly matching a certificate contained within the Truststore
+                        database.</p></li></ul></div><p>
+        </p><p>The following attributes apply to <span class="emphasis"><em>Non Java Trust Stores</em></span>
+            only.</p><p>
+            </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>Certificates</em></span>. The cerificate(s) in DER or PEM
+                        format.</p></li></ul></div><p>
+        </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-Truststores-Children"></a>7.12.3.&#160;Children</h3></div></div></div><p>None</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-Truststores-Lifecycle"></a>7.12.4.&#160;Lifecycle</h3></div></div></div><p>Not supported</p></div></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Management-Managing-Keystores.html">Prev</a>&#160;</td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Management-Managing-Entities.html">Up</a></td><td align="right" width="40%">&#160;<a accesskey="n" href="Java-Broker-Management-Managing-Group-Providers.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">7.11.&#160;Keystores&#160;</td><td align="center" width="20%"><a accesskey="h
 " href="Apache-Qpid-Broker-J-Book.html">Home</a></td><td align="right" valign="top" width="40%">&#160;7.13.&#160;Group Providers</td></tr></table></div></div>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/00086d70/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-Virtualhost-Nodes.html.in
----------------------------------------------------------------------
diff --git a/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-Virtualhost-Nodes.html.in b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-Virtualhost-Nodes.html.in
new file mode 100644
index 0000000..231645b
--- /dev/null
+++ b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-Virtualhost-Nodes.html.in
@@ -0,0 +1,33 @@
+<div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">7.3.&#160;Virtualhost Nodes</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Management-Managing-Broker.html">Prev</a>&#160;</td><th align="center" width="60%">Chapter&#160;7.&#160;Managing Entities</th><td align="right" width="20%">&#160;<a accesskey="n" href="Java-Broker-Management-Managing-Virtualhosts.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Java-Broker-Management-Managing-Virtualhost-Nodes"></a>7.3.&#160;Virtualhost Nodes</h2></div></div></div><p>Virtualhost nodes can only be managed by the HTTP management channel.</p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-Virtualhost-Nodes-Types"></a>7.3.1.&#160;Types</h3></div></div></div><p> The following virtualhost n
 odes types are supported. </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>BDB - Node backed with Oracle Berkeley DB JE</p></li><li class="listitem"><p>BDB HA - Node backed with Oracle Berkeley DB JE utilising High Availability</p></li><li class="listitem"><p>DERBY - Node backed with Apache Derby</p></li><li class="listitem"><p>JDBC - Node backed with an external database <a class="footnote" href="#ftn.d0e2942" id="d0e2942"><sup class="footnote">[5]</sup></a></p></li><li class="listitem"><p>JSON - Node backed with a file containing json</p></li><li class="listitem"><p>Memory - In-memory node (changes lost on Broker restart)</p></li></ul></div><p>
+    </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-Virtualhost-Nodes-Attributes"></a>7.3.2.&#160;Attributes</h3></div></div></div><p>
+      </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>Name the virtualhost node</em></span>.</p></li><li class="listitem"><p><span class="emphasis"><em>Default Virtual Host Node</em></span>. If true, messaging clients which do
+            not specify a virtualhost name will be connected to the virtualhost beneath this node.</p></li><li class="listitem"><p><span class="emphasis"><em>Store Path or JDBC URL.</em></span> Refers the location used to store the
+            configuration of the virtualhost.</p></li><li class="listitem"><p><span class="emphasis"><em>Role</em></span> (HA only). The role that this node is currently playing in
+            the group. </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem"><p>MASTER - Virtualhost node is a master.</p></li><li class="listitem"><p>REPLICA - Virtualhost node is a replica.</p></li><li class="listitem"><p>WAITING - Virtualhost node is awaiting an election result, or may be awaiting
+                  more nodes to join in order that an election may be held.</p></li><li class="listitem"><p>DETACHED - Virtualhost node is disconnected from the group.</p></li></ul></div></li><li class="listitem"><p><span class="emphasis"><em>Priority</em></span> (HA only). The priority of this node when elections
+            occurs. The attribute can be used to make it more likely for a node to be elected than
+            other nodes, or disallow the node from never being elected at all. See <a class="xref" href="Java-Broker-High-Availability-Behaviour.html#Java-Broker-High-Availability-Behaviour-NodePriority" title="10.4.3.&#160;Node Priority">Section&#160;10.4.3, &#8220;Node Priority&#8221;</a></p></li><li class="listitem"><p><span class="emphasis"><em>Minimum Number Of Nodes</em></span> (HA only - groups of three or more).
+            Allows the number of nodes required to hold an election to be reduced in order that
+            service can be restore when less than quorum nodes are present. See <a class="xref" href="Java-Broker-High-Availability-Behaviour.html#Java-Broker-High-Availability-Behaviour-MinimumNumberOfNodes" title="10.4.4.&#160;Required Minimum Number Of Nodes">Section&#160;10.4.4, &#8220;Required Minimum Number Of Nodes&#8221;</a></p></li><li class="listitem"><p><span class="emphasis"><em>Allow this node to operate solo</em></span> (HA only - groups of two). Allows a single
+            node in a two node group to operate solo. See <a class="xref" href="Java-Broker-High-Availability-Behaviour.html#Java-Broker-High-Availability-Behaviour-DesignatedPrimary" title="10.4.5.&#160;Allow to Operate Solo">Section&#160;10.4.5, &#8220;Allow to Operate Solo&#8221;</a></p></li></ul></div><p>
+    </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-Virtualhost-Node-Children"></a>7.3.3.&#160;Children</h3></div></div></div><p>
+      </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
+            <a class="link" href="Java-Broker-Management-Managing-Virtualhosts.html" title="7.4.&#160;VirtualHosts">Virtualhost</a>
+          </p></li><li class="listitem"><p>
+            <a class="link" href="Java-Broker-Management-Managing-RemoteReplicationNodes.html" title="7.5.&#160;Remote Replication Nodes">Remote
+              Replication Nodes</a>
+          </p></li></ul></div><p>
+    </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-Virtualhost-Node-Lifecycle"></a>7.3.4.&#160;Lifecycle</h3></div></div></div><p>
+      </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>Stop</em></span>. Stops the virtualhost node. This closes any existing
+            messaging connections to the virtualhost and prevents new ones. Any inflight
+            transactions are rolled back. Non durable queues and exchanges are lost. Transient
+            messages or persistent messages on non-durable queues are lost.</p><p>When HA is in use, stopping the virtualhost node stops the virtualhost node from
+            participating in the group. If the node was in the master role, the remaining nodes will
+            try to conduct an election and elect a new master. If the node was in the replica role,
+            the node will cease to keep up to date with later transactions. A stopped node does not
+            vote in elections. Other nodes in the group will report the stopped node as
+            unreachable.</p></li><li class="listitem"><p><span class="emphasis"><em>Start</em></span>. Activates the virtualhost node.</p></li><li class="listitem"><p><span class="emphasis"><em>Delete</em></span>. Deletes the virtualhost node and the virtualhost
+            contained within it. All exchanges and queues, any the messages contained within it are
+            removed. In the HA case, deleting the virtualhost node causes it be removed permanently
+            from the group.</p></li></ul></div><p>
+    </p></div><div class="footnotes"><br /><hr style="width:100; text-align:left;margin-left: 0" /><div class="footnote" id="ftn.d0e2942"><p><a class="para" href="#d0e2942"><sup class="para">[5] </sup></a>JDBC 4.0 compatible drivers must be available. See <a class="xref" href="Java-Broker-Miscellaneous-Installing-External-JDBC-Driver.html" title="F.2.&#160;Installing External JDBC Driver">Section&#160;F.2, &#8220;Installing External JDBC Driver&#8221;</a></p></div></div></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Management-Managing-Broker.html">Prev</a>&#160;</td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Management-Managing-Entities.html">Up</a></td><td align="right" width="40%">&#160;<a accesskey="n" href="Java-Broker-Management-Managing-Virtualhosts.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">7.2.&#160;Broker&#160;</td><td al
 ign="center" width="20%"><a accesskey="h" href="Apache-Qpid-Broker-J-Book.html">Home</a></td><td align="right" valign="top" width="40%">&#160;7.4.&#160;VirtualHosts</td></tr></table></div></div>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/00086d70/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-Virtualhosts.html.in
----------------------------------------------------------------------
diff --git a/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-Virtualhosts.html.in b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-Virtualhosts.html.in
new file mode 100644
index 0000000..fe85513
--- /dev/null
+++ b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Management-Managing-Virtualhosts.html.in
@@ -0,0 +1,28 @@
+<div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">7.4.&#160;VirtualHosts</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Management-Managing-Virtualhost-Nodes.html">Prev</a>&#160;</td><th align="center" width="60%">Chapter&#160;7.&#160;Managing Entities</th><td align="right" width="20%">&#160;<a accesskey="n" href="Java-Broker-Management-Managing-RemoteReplicationNodes.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Java-Broker-Management-Managing-Virtualhosts"></a>7.4.&#160;VirtualHosts</h2></div></div></div><p>A virtualhost is a independent namespace in which messaging is performed. Virtualhosts are
+    responsible for the storage of message data.</p><p>Virtualhosts can only be managed by the HTTP management channel.</p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-Virtualhosts-Types"></a>7.4.1.&#160;Types</h3></div></div></div><p>The following virtualhost types are supported. </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>BDB - Virtualhost backed with Oracle Berkeley DB JE</p></li><li class="listitem"><p>BDB HA - Virtualhost backed with Oracle BDB utilising High Availability</p></li><li class="listitem"><p>DERBY - Virtualhost backed with Apache Derby</p></li><li class="listitem"><p>JDBC - Virtualhost backed with an external database <a class="footnote" href="#ftn.d0e3080" id="d0e3080"><sup class="footnote">[6]</sup></a></p></li><li class="listitem"><p>Memory - In-memory node (changes lost on Broker restart)</p></li><li class="listitem"><p>Provided - 
 Virtualhost that co-locates message data within the parent virtualhost
+            node <a class="footnote" href="#ftn.d0e3090" id="d0e3090"><sup class="footnote">[7]</sup></a>.</p></li></ul></div><p>
+    </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-Virtualhost-Context"></a>7.4.2.&#160;Context</h3></div></div></div><p>
+      </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>use_async_message_store_recovery</em></span> Controls the <a class="link" href="Java-Broker-Runtime-Background-Recovery.html" title="9.8.&#160;Background Recovery">background recovery</a>
+            feature.</p></li></ul></div><p>
+    </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-Virtualhost-Attributes"></a>7.4.3.&#160;Attributes</h3></div></div></div><p>
+      </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>Name the virtualhost</em></span>. This is the name the messaging clients
+            refer to when forming a connection to the Broker.</p></li><li class="listitem"><p><span class="emphasis"><em>Store Path/JDBC URL</em></span>. Refers the file system location or
+            database URL used to store the message data.</p></li><li class="listitem"><p><span class="emphasis"><em>Store overflow/underflow</em></span>. Some virtualhosts have the ability to
+            limit the of the cumulative size of all the messages contained within the store. This
+            feature is described in detail <a class="xref" href="Java-Broker-Runtime-Disk-Space-Management.html" title="9.2.&#160;Disk Space Management">Section&#160;9.2, &#8220;Disk Space Management&#8221;</a>.</p></li><li class="listitem"><p><span class="emphasis"><em>Connection thread pool size</em></span>. Number of worker threads
+            used to perform messaging with connected clients.  </p><p>Defaults to 64 or double the maximum number of available processors, whichever
+            is the larger.</p></li><li class="listitem"><p><span class="emphasis"><em>Number of selectors</em></span>. Number of worker threads
+            used from the thread pool to dispatch I/O activity to the worker threads.</p><p>Defaults to one eighth of the thread pool size. Minimum 1.</p></li><li class="listitem"><p><span class="emphasis"><em>Store transaction timeouts</em></span>. Warns of long running producer
+            transactions. See <a class="xref" href="Java-Broker-Runtime-Transaction-Timeout.html" title="9.3.&#160;Transaction Timeout">Section&#160;9.3, &#8220;Transaction Timeout&#8221;</a></p></li><li class="listitem"><p><span class="emphasis"><em>Synchronization policy</em></span>. HA only. See <a class="xref" href="Java-Broker-High-Availability-Behaviour.html#Java-Broker-High-Availability-Behaviour-SynchronizationPolicy" title="10.4.2.&#160;Synchronization Policy">Section&#160;10.4.2, &#8220;Synchronization Policy&#8221;</a></p></li></ul></div><p>
+    </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-Virtualhost-Children"></a>7.4.4.&#160;Children</h3></div></div></div><p>
+      </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
+            <a class="link" href="Java-Broker-Management-Managing-Exchanges.html" title="7.6.&#160;Exchanges">Exchange</a>
+          </p></li><li class="listitem"><p>
+            <a class="link" href="Java-Broker-Management-Managing-Queues.html" title="7.7.&#160;Queues">Queue</a>
+          </p></li></ul></div><p>
+    </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Managing-Virtualhost-Lifecycle"></a>7.4.5.&#160;Lifecycle</h3></div></div></div><p>
+      </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>Stop</em></span>. Stops the virtualhost. This closes any existing messaging
+            connections to the virtualhost and prevents new ones. Any inflight transactions are
+            rolled back. Non durable queues and non durable exchanges are lost. Transient messages
+            or persistent messages on non-durable queues are lost.</p></li><li class="listitem"><p><span class="emphasis"><em>Start</em></span>. Activates the virtualhost.</p></li></ul></div><p>
+    </p></div><div class="footnotes"><br /><hr style="width:100; text-align:left;margin-left: 0" /><div class="footnote" id="ftn.d0e3080"><p><a class="para" href="#d0e3080"><sup class="para">[6] </sup></a>JDBC 4.0 compatible drivers must be available. See <a class="xref" href="Java-Broker-Miscellaneous-Installing-External-JDBC-Driver.html" title="F.2.&#160;Installing External JDBC Driver">Section&#160;F.2, &#8220;Installing External JDBC Driver&#8221;</a></p></div><div class="footnote" id="ftn.d0e3090"><p><a class="para" href="#d0e3090"><sup class="para">[7] </sup></a>Not available if Virtualhost Node type is JSON.</p></div></div></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Management-Managing-Virtualhost-Nodes.html">Prev</a>&#160;</td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Management-Managing-Entities.html">Up</a></td><td align="right" width="40%">&#1
 60;<a accesskey="n" href="Java-Broker-Management-Managing-RemoteReplicationNodes.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">7.3.&#160;Virtualhost Nodes&#160;</td><td align="center" width="20%"><a accesskey="h" href="Apache-Qpid-Broker-J-Book.html">Home</a></td><td align="right" valign="top" width="40%">&#160;7.5.&#160;Remote Replication Nodes</td></tr></table></div></div>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/00086d70/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Miscellaneous-Installing-External-JDBC-Driver.html.in
----------------------------------------------------------------------
diff --git a/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Miscellaneous-Installing-External-JDBC-Driver.html.in b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Miscellaneous-Installing-External-JDBC-Driver.html.in
new file mode 100644
index 0000000..38237a8
--- /dev/null
+++ b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Miscellaneous-Installing-External-JDBC-Driver.html.in
@@ -0,0 +1,5 @@
+<div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">F.2.&#160;Installing External JDBC Driver</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Miscellaneous.html">Prev</a>&#160;</td><th align="center" width="60%">Appendix&#160;F.&#160;Miscellaneous</th><td align="right" width="20%">&#160;<a accesskey="n" href="Java-Broker-Appendix-Queue-Declare-Arguments.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Java-Broker-Miscellaneous-Installing-External-JDBC-Driver"></a>F.2.&#160;Installing External JDBC Driver</h2></div></div></div><p>In order to use a JDBC Virtualhost Node or a JDBC Virtualhost, you must make the
+      Database's JDBC 4.0 compatible drivers available on the Broker's classpath. To do this copy
+      the driver's JAR file into the <code class="literal">${QPID_HOME}/lib</code> folder.</p><pre class="programlisting">Unix:
+cp <code class="literal">driver</code>.jar qpid-broker-7.0.4/lib</pre><pre class="programlisting">Windows:
+copy <code class="literal">driver</code>.jar qpid-broker-7.0.4\lib</pre></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Miscellaneous.html">Prev</a>&#160;</td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Miscellaneous.html">Up</a></td><td align="right" width="40%">&#160;<a accesskey="n" href="Java-Broker-Appendix-Queue-Declare-Arguments.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">Appendix&#160;F.&#160;Miscellaneous&#160;</td><td align="center" width="20%"><a accesskey="h" href="Apache-Qpid-Broker-J-Book.html">Home</a></td><td align="right" valign="top" width="40%">&#160;Appendix&#160;G.&#160;Queue Declaration Arguments supported by the Broker</td></tr></table></div></div>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/00086d70/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Miscellaneous.html.in
----------------------------------------------------------------------
diff --git a/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Miscellaneous.html.in b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Miscellaneous.html.in
new file mode 100644
index 0000000..b2a9504
--- /dev/null
+++ b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Miscellaneous.html.in
@@ -0,0 +1,9 @@
+<div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">Appendix&#160;F.&#160;Miscellaneous</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Appendix-Queue-Alerts.html">Prev</a>&#160;</td><th align="center" width="60%">&#160;</th><td align="right" width="20%">&#160;<a accesskey="n" href="Java-Broker-Miscellaneous-Installing-External-JDBC-Driver.html">Next</a></td></tr></table><hr /></div><div class="appendix"><div class="titlepage"><div><div><h1 class="title"><a id="Java-Broker-Miscellaneous"></a>Appendix&#160;F.&#160;Miscellaneous</h1></div></div></div><div class="toc"><p><strong>Table of Contents</strong></p><dl class="toc"><dt><span class="section"><a href="Java-Broker-Miscellaneous.html#Java-Broker-Miscellaneous-JVM-Verification">F.1. JVM Installation verification</a></span></dt><dd><dl><dt><span class="section"><a href="Java-Broker-Miscellaneous.html#Java-Broker-Miscellaneous-JVM-
 Verification-Windows">F.1.1. Verify JVM on Windows</a></span></dt><dt><span class="section"><a href="Java-Broker-Miscellaneous.html#Java-Broker-Miscellaneous-JVM-Verification-Unix">F.1.2. Verify JVM on Unix</a></span></dt></dl></dd><dt><span class="section"><a href="Java-Broker-Miscellaneous-Installing-External-JDBC-Driver.html">F.2. Installing External JDBC Driver</a></span></dt></dl></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Java-Broker-Miscellaneous-JVM-Verification"></a>F.1.&#160;JVM Installation verification</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Miscellaneous-JVM-Verification-Windows"></a>F.1.1.&#160;Verify JVM on Windows</h3></div></div></div><p> Firstly confirm that the JAVA_HOME environment variable is set correctly by typing the
+        following at the command prompt: </p><pre class="programlisting">echo %JAVA_HOME%</pre><p> If JAVA_HOME is set you will see something similar to the following: </p><pre class="screen">c:"\PROGRA~1"\Java\jdk1.8.0_121\
+      </pre><p> Then confirm that a Java installation (1.8 or higher) is available: </p><pre class="programlisting">java -version</pre><p> If java is available on the path, output similar to the following will be seen: </p><pre class="screen">java version "1.8.0_121-b13"
+Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
+Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)</pre></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Miscellaneous-JVM-Verification-Unix"></a>F.1.2.&#160;Verify JVM on Unix</h3></div></div></div><p> Firstly confirm that the JAVA_HOME environment variable is set correctly by typing the
+        following at the command prompt: </p><pre class="programlisting">echo $JAVA_HOME</pre><p> If JAVA_HOME is set you will see something similar to the following: </p><pre class="screen">/usr/java/jdk1.8.0_121
+      </pre><p> Then confirm that a Java installation (1.8 or higher) is available: </p><pre class="programlisting">java -version</pre><p> If java is available on the path, output similar to the following will be seen: </p><pre class="screen">java version "1.8.0_121-b13"
+        Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
+        Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)</pre></div></div></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Appendix-Queue-Alerts.html">Prev</a>&#160;</td><td align="center" width="20%">&#160;</td><td align="right" width="40%">&#160;<a accesskey="n" href="Java-Broker-Miscellaneous-Installing-External-JDBC-Driver.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">Appendix&#160;E.&#160;Queue Alerts&#160;</td><td align="center" width="20%"><a accesskey="h" href="Apache-Qpid-Broker-J-Book.html">Home</a></td><td align="right" valign="top" width="40%">&#160;F.2.&#160;Installing External JDBC Driver</td></tr></table></div></div>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/00086d70/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Background-Recovery.html.in
----------------------------------------------------------------------
diff --git a/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Background-Recovery.html.in b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Background-Recovery.html.in
new file mode 100644
index 0000000..e86d451
--- /dev/null
+++ b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Background-Recovery.html.in
@@ -0,0 +1,14 @@
+<div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">9.8.&#160;Background Recovery</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Runtime-Consumers.html">Prev</a>&#160;</td><th align="center" width="60%">Chapter&#160;9.&#160;Runtime</th><td align="right" width="20%">&#160;<a accesskey="n" href="Java-Broker-Runtime-Message-Compression.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Java-Broker-Runtime-Background-Recovery"></a>9.8.&#160;Background Recovery</h2></div></div></div><p>On startup of the Broker, or restart of a Virtualhost, the Broker restores all durable
+    queues and their messages from disk. In the Broker's default mode the Virtualhosts do not become
+    active until this recovery process completes. If queues have a large number of entries, this may
+    take considerable time. During this time no messaging can be performed.</p><p>The Broker has a background recovery feature allows the system to return to operation
+    sooner. If enabled the recovery process takes place in the background allow producers and
+    consumers to begin work earlier.</p><p>The feature respects the message delivery order requirements of standard queues, that is any
+    messages arriving whilst the background recovery is in flight won't overtake older messages
+    still to be recovered from disk. There is an exception for the out of order queue types whilst
+    background recovery is in flight. For instance, with priority queues older lower priority
+    messages may be delivered before newer, higher priority.</p><p>To activate the feature, set a <a class="link" href="Java-Broker-Management-Managing-Entities.html#Java-Broker-Management-Managing-Entities-General" title="7.1.&#160;General Description">context variable</a>
+    <code class="literal">use_async_message_store_recovery</code> at the desired Virtualhost, or at Broker or
+    higher to enable the feature broker-wide.</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>The background recovery feature does not write operational log messages to indicate its
+      progress. This means messages <a class="link" href="Java-Broker-Appendix-Operation-Logging.html#Java-Broker-Appendix-Operation-Logging-Message-MST-1004">MST-1004</a> and <a class="link" href="Java-Broker-Appendix-Operation-Logging.html#Java-Broker-Appendix-Operation-Logging-Message-MST-1005">MST-1005</a> will not
+      be seen.</p></div></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Runtime-Consumers.html">Prev</a>&#160;</td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Runtime.html">Up</a></td><td align="right" width="40%">&#160;<a accesskey="n" href="Java-Broker-Runtime-Message-Compression.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">9.7.&#160;Consumers&#160;</td><td align="center" width="20%"><a accesskey="h" href="Apache-Qpid-Broker-J-Book.html">Home</a></td><td align="right" valign="top" width="40%">&#160;9.9.&#160;Message Compression</td></tr></table></div></div>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/00086d70/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Close-Connection-When-No-Route.html.in
----------------------------------------------------------------------
diff --git a/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Close-Connection-When-No-Route.html.in b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Close-Connection-When-No-Route.html.in
new file mode 100644
index 0000000..9c5bb3e
--- /dev/null
+++ b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Close-Connection-When-No-Route.html.in
@@ -0,0 +1,28 @@
+<div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">9.5.&#160;Closing client connections on unroutable mandatory messages</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Runtime-Handling-Undeliverable-Messages.html">Prev</a>&#160;</td><th align="center" width="60%">Chapter&#160;9.&#160;Runtime</th><td align="right" width="20%">&#160;<a accesskey="n" href="Java-Broker-Runtime-Flow-To-Disk.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Java-Broker-Runtime-Close-Connection-When-No-Route"></a>9.5.&#160;Closing client connections on unroutable mandatory messages</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Runtime-Close-Connection-When-No-Route-Summary"></a>9.5.1.&#160;Summary</h3></div></div></div><p>
+        Due to asynchronous nature of AMQP 0-8/0-9/0-9-1 protocols sending a message with a routing key for which no queue binding exist results
+        in either message being bounced back (if it is mandatory or immediate) or discarded on broker side otherwise.
+    </p><p>
+        When a 'mandatory' message is returned, the Apache Qpid JMS AMQP 0-x clients conveys this by delivering
+        an <span class="emphasis"><em>AMQNoRouteException</em></span> through the configured ExceptionListener on the Connection.
+        This does not cause channel or connection closure, however it requires a special exception handling
+        on client side in order to deal with <span class="emphasis"><em>AMQNoRouteExceptions</em></span>.
+        This could potentially be a problem when using various messaging frameworks (e.g. Mule)
+        as they usually close the connection on receiving any JMSException.
+    </p><p>
+        In order to simplify application handling of scenarios where 'mandatory' messages
+        are being sent to queues which do not actually exist, the Apache Qpid Broker-J can be configured such that
+        it will respond to this situation by closing the connection
+        rather than returning the unroutable message to the client as it normally should.
+        From the application perspective, this will result in failure of synchronous operations in progress such as a session commit() call.
+    </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>This feature affects only transacted sessions.</p><p>
+           By default, the Apache Qpid JMS AMQP 0-x produces mandatory messages when using queue destinations.  Topic
+           destinations produce 'non-mandatory' messages.
+        </p></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Runtime-Close-Connection-When-No-Route-Configuration"></a>9.5.2.&#160;Configuring
+        <span class="emphasis"><em>closeWhenNoRoute</em></span>
+    </h3></div></div></div><p>
+        The Port attribute <span class="emphasis"><em>closeWhenNoRoute</em></span> can be set to specify this feature on broker side.
+        By default, it is turned on. Setting <span class="emphasis"><em>closeWhenNoRoute</em></span> to <span class="emphasis"><em>false</em></span> switches
+        it off.
+    </p><p>See the <a class="link" href="../../jms-client-0-8/book/JMS-Client-0-8-Connection-URL.html" target="_top">Qpid JMS AMQP 0-x client
+          documentation</a> for details of enabling this feature client side.
+      </p></div></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Runtime-Handling-Undeliverable-Messages.html">Prev</a>&#160;</td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Runtime.html">Up</a></td><td align="right" width="40%">&#160;<a accesskey="n" href="Java-Broker-Runtime-Flow-To-Disk.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">9.4.&#160;Handing Undeliverable Messages&#160;</td><td align="center" width="20%"><a accesskey="h" href="Apache-Qpid-Broker-J-Book.html">Home</a></td><td align="right" valign="top" width="40%">&#160;9.6.&#160;Flow to Disk</td></tr></table></div></div>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/00086d70/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Connection-Limit.html.in
----------------------------------------------------------------------
diff --git a/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Connection-Limit.html.in b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Connection-Limit.html.in
new file mode 100644
index 0000000..bcaf2df
--- /dev/null
+++ b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Connection-Limit.html.in
@@ -0,0 +1,24 @@
+<div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">9.10.&#160;Connection Limits</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Runtime-Message-Compression.html">Prev</a>&#160;</td><th align="center" width="60%">Chapter&#160;9.&#160;Runtime</th><td align="right" width="20%">&#160;<a accesskey="n" href="Java-Broker-Runtime-Memory.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Java-Broker-Runtime-Connection-Limit"></a>9.10.&#160;Connection Limits</h2></div></div></div><p>
+     Each connection to the Broker consumes resources while it is connected. In order to protect
+     the Broker against malfunctioning (or malicious) client processes, it is possible to limit the
+     number of connections that can be active on any given port.
+   </p><p>
+       Connection limits on AMQP ports are controlled by an attribute "maxOpenConnections" on
+       the port. By default this takes the value of the context variable
+       <code class="literal">qpid.port.max_open_connections</code> which in itself is defaulted to the
+       value <code class="literal">-1</code> meaning there is no limit.
+   </p><p>
+       If the interpolated value of <code class="literal">maxOpenConnections</code> on an AMQP port is a
+       positive integer, then when that many active connections have been established no new
+       connections will be allowed (until an existing connection has been closed). Any such
+       rejection of a connection will be accompanied by the operational log message
+       <a class="link" href="Java-Broker-Appendix-Operation-Logging.html#Java-Broker-Appendix-Operation-Logging-Message-PRT-1005">PRT-1005</a>.
+   </p><p>
+       The context variable <code class="literal">qpid.port.open_connections_warn_percent</code> can be
+       used to control when a warning log message is generated as the number of open connections
+       approaches the limit for the port. The default value of this variable is
+       <code class="literal">80</code> meaning that if more the number of open connections to the port
+       has exceeded 80% of the given limit then the operatinal log message
+       <a class="link" href="Java-Broker-Appendix-Operation-Logging.html#Java-Broker-Appendix-Operation-Logging-Message-PRT-1004">PRT-1004</a>
+       will be generated.
+   </p></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Runtime-Message-Compression.html">Prev</a>&#160;</td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Runtime.html">Up</a></td><td align="right" width="40%">&#160;<a accesskey="n" href="Java-Broker-Runtime-Memory.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">9.9.&#160;Message Compression&#160;</td><td align="center" width="20%"><a accesskey="h" href="Apache-Qpid-Broker-J-Book.html">Home</a></td><td align="right" valign="top" width="40%">&#160;9.11.&#160;Memory</td></tr></table></div></div>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/00086d70/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Consumers.html.in
----------------------------------------------------------------------
diff --git a/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Consumers.html.in b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Consumers.html.in
new file mode 100644
index 0000000..c2348eb
--- /dev/null
+++ b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Consumers.html.in
@@ -0,0 +1,32 @@
+<div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">9.7.&#160;Consumers</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Runtime-Flow-To-Disk.html">Prev</a>&#160;</td><th align="center" width="60%">Chapter&#160;9.&#160;Runtime</th><td align="right" width="20%">&#160;<a accesskey="n" href="Java-Broker-Runtime-Background-Recovery.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Java-Broker-Runtime-Consumers"></a>9.7.&#160;Consumers</h2></div></div></div><p>A Consumer is created when an AMQP connection wishes to receive messages from a message source (such as a
+    Queue).  The standard behaviours of consumers are defined by the respective AMQP specification, however in addition
+    to the standard behaviours a number of Qpid specific enhancements are available</p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Runtime-Consumers-Prioirty"></a>9.7.1.&#160;Priority</h3></div></div></div><p>By default, when there are multiple competing consumers attached to the same message source, the Broker
+      attempts to distribute messages from the queue in a "fair" manner. Some use cases require allocation of messages
+      to consumers to be based on the "priority" of the consumer. Where there are multiple consumers having differing
+      priorities, the Broker will always attempt to deliver a message to a higher priority consumer before attempting
+      delivery to a lower priority consumer. That is, a lower priority consumer will only receive a message if no
+      higher priority consumers currently have credit available to consume the message, or those consumers have declined
+      to accept the message (for instance because it does not meet the criteria of any selectors associated with the
+      consumer).</p><p>Where a consumer is created with no explicit priority provided, the consumer is given the highest possible
+      priority.</p><div class="section"><div class="titlepage"><div><div><h4 class="title"><a id="d0e5943"></a>9.7.1.1.&#160;Creating a Consumer with a non-standard priority</h4></div></div></div><p>
+        In AMQP 0-9 and 0-9-1 the priority of the consumer can be set by adding an entry into the table provided as the
+        <code class="literal">arguments</code> field (known as the <code class="literal">filter</code> field on AMQP 0-9) of the
+        <code class="literal">basic.consume</code> method. The key for the entry must be the literal short string
+        <code class="literal">x-priority</code>, and the value of the entry must be an integral number in the range
+        -2<sup>31</sup> to 2<sup>31</sup>-1.
+      </p><p>
+        In AMQP 0-10 the priority of the consumer can be set in the map provided as the <code class="literal">arguments</code>
+        field of the <code class="literal">message.subscribe</code> method. The key for the entry must be the literal string
+        <code class="literal">x-priority</code>, and the value of the entry must be an integral number in the range
+        -2<sup>31</sup> to 2<sup>31</sup>-1.
+      </p><p>
+        In AMQP 1.0 the priority of the consumer is set in the <code class="literal">properties</code> map of the
+        <code class="literal">attach</code> frame where the broker side of the link represents the sending side of the link.
+        The key for the entry must be the literal string <code class="literal">priority</code>, and the value of the entry must
+        be an integral number in the range -2<sup>31</sup> to 2<sup>31</sup>-1.
+      </p><p>
+        When using the Qpid JMS client for AMQP 0-9/0-9-1/0-10 the consumer priority can be set in the address being
+        used for the Destination object.
+
+        </p><div class="table"><a id="d0e6002"></a><p class="title"><strong>Table&#160;9.1.&#160;Setting the consumer priority</strong></p><div class="table-contents"><table border="1" summary="Setting the consumer priority"><colgroup><col /><col /></colgroup><thead><tr><th>Syntax</th><th>Example</th></tr></thead><tbody><tr><td>Addressing</td><td>myqueue : { link : { x-subscribe: { arguments : { x-priority : '10' } } } }</td></tr><tr><td>Binding URL</td><td>direct://amq.direct/myqueue/myqueue?x-qpid-replay-priority='10'</td></tr></tbody></table></div></div><p><br class="table-break" />
+      </p></div></div></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Runtime-Flow-To-Disk.html">Prev</a>&#160;</td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Runtime.html">Up</a></td><td align="right" width="40%">&#160;<a accesskey="n" href="Java-Broker-Runtime-Background-Recovery.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">9.6.&#160;Flow to Disk&#160;</td><td align="center" width="20%"><a accesskey="h" href="Apache-Qpid-Broker-J-Book.html">Home</a></td><td align="right" valign="top" width="40%">&#160;9.8.&#160;Background Recovery</td></tr></table></div></div>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/00086d70/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Disk-Space-Management.html.in
----------------------------------------------------------------------
diff --git a/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Disk-Space-Management.html.in b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Disk-Space-Management.html.in
new file mode 100644
index 0000000..034207e
--- /dev/null
+++ b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Disk-Space-Management.html.in
@@ -0,0 +1,41 @@
+<div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">9.2.&#160;Disk Space Management</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Runtime.html">Prev</a>&#160;</td><th align="center" width="60%">Chapter&#160;9.&#160;Runtime</th><td align="right" width="20%">&#160;<a accesskey="n" href="Java-Broker-Runtime-Transaction-Timeout.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Java-Broker-Runtime-Disk-Space-Management"></a>9.2.&#160;Disk Space Management</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Runtime-Disk-Space-Management-Producer-Flow-Control"></a>9.2.1.&#160;Disk quota-based flow control</h3></div></div></div><p>
+        The Apache Qpid Broker-J supports a flow control mechanism which is triggered when a configured
+        disk quota is exceeded. This is supported by the BDB and Derby virtualhosts.
+    </p><p>
+        This functionality blocks all producers on reaching the disk overflow limit. When consumers consume the
+        messages, causing disk space usage to falls below the underflow limit, the producers are unblocked and continue
+        working as normal.
+    </p><p>
+        Two limits can be configured:
+    </p><p>
+        overfull limit - the maximum space on disk (in bytes).
+    </p><p>
+        underfull limit - when the space on disk drops below this limit, producers are allowed to resume publishing.
+    </p><p>
+        The overfull and underful limit can be specified when a new virtualhost is created or an exiting virtualhost is
+        edited. This can be done using the Store Overflow and Store Underfull settings within the virtual host creation
+        and edit dialogue. If editing an existing virtualhost, the virtualhost must be restarted for the new values to
+        take effect.
+    </p><p>
+        The disk quota functionality is based on "best effort" principle. This means the broker cannot guarantee that
+        the disk space limit will not be exceeded. If several concurrent transactions are started before the limit is
+        reached, which collectively cause the limit to be exceeded, the broker may allow all of them to be committed.
+    </p><p>
+        The Broker will also impose flow control if the filesystem hosting a virtualhost exceeds a <a class="link" href="Java-Broker-Management-Managing-Broker.html#Java-Broker-Management-Managing-Broker-Context-StoreFilesystemMaxUsagePercent">configured
+        percentage.</a>.
+    </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>
+            The <span class="emphasis"><em>Producer Flow Control</em></span> can be configured on individual queue using
+            <span class="emphasis"><em>Producer Flow Control</em></span> overflow policy.
+            For more details, please read<a class="xref" href="Java-Broker-Concepts-Queues.html#Java-Broker-Concepts-Queue-OverflowPolicy" title="4.7.5.&#160;Controlling Queue Size">Section&#160;4.7.5, &#8220;Controlling Queue Size&#8221;</a>.
+        </p></div><div class="section"><div class="titlepage"><div><div><h4 class="title"><a id="d0e5723"></a>9.2.1.1.&#160;Broker Log Messages for quota flow control</h4></div></div></div><p>
+            There are two broker log messages that may occur if flow control through disk quota limits is enabled. When
+            the virtual host is blocked due to exceeding of the disk quota limit the following message appears in the
+            broker log
+            </p><pre class="programlisting">
+                [vh(/test)/ms(BDBMessageStore)] MST-1008 : Store overfull, flow control will be enforced
+            </pre><p>
+            When virtual host is unblocked after cleaning the disk space the following message appears in the broker log
+            </p><pre class="programlisting">
+                [vh(/test)/ms(BDBMessageStore)] MST-1009 : Store overfull condition cleared
+            </pre><p>
+        </p></div></div></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Runtime.html">Prev</a>&#160;</td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Runtime.html">Up</a></td><td align="right" width="40%">&#160;<a accesskey="n" href="Java-Broker-Runtime-Transaction-Timeout.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">Chapter&#160;9.&#160;Runtime&#160;</td><td align="center" width="20%"><a accesskey="h" href="Apache-Qpid-Broker-J-Book.html">Home</a></td><td align="right" valign="top" width="40%">&#160;9.3.&#160;Transaction Timeout</td></tr></table></div></div>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/00086d70/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Flow-To-Disk.html.in
----------------------------------------------------------------------
diff --git a/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Flow-To-Disk.html.in b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Flow-To-Disk.html.in
new file mode 100644
index 0000000..c82021a
--- /dev/null
+++ b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Flow-To-Disk.html.in
@@ -0,0 +1,14 @@
+<div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">9.6.&#160;Flow to Disk</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Runtime-Close-Connection-When-No-Route.html">Prev</a>&#160;</td><th align="center" width="60%">Chapter&#160;9.&#160;Runtime</th><td align="right" width="20%">&#160;<a accesskey="n" href="Java-Broker-Runtime-Consumers.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Java-Broker-Runtime-Flow-To-Disk"></a>9.6.&#160;Flow to Disk</h2></div></div></div><p>Flow to disk limits the amount of <a class="link" href="Java-Broker-Runtime-Memory.html" title="9.11.&#160;Memory">direct and heap memory</a>
+    that can be occupied by messages. Once this
+    limit is reached any new transient messages and all existing transient messages will be
+    transferred to disk. Newly arriving transient messages will continue to go to the disk until the
+    cumulative size of all messages falls below the limit once again.</p><p>By default the Broker makes 75% of the max direct available memory for messages. This memory is
+    divided between all the queues across all virtual hosts defined on the Broker with a percentage
+    calculated according to their current queue size. These calculations are refreshed periodically
+    by the housekeeping cycle.</p><p>For example if there are two queues, one containing 75MB and the second 100MB messages
+    respectively and the Broker has 1GB direct memory with the default of 75% available for messages.
+    The first queue will have a target size of 320MB and the second 430MB. Once 750MB is taken by
+    messages, messages will begin to flow to disk. New messages will cease to flow to disk when
+    their cumulative size falls beneath 750MB.</p><p>Flow to disk is configured by Broker context variable
+      <code class="literal">broker.flowToDiskThreshold</code>. It is expressed as a size in bytes and defaults
+    to 75% of the JVM maximum heap size.</p></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Runtime-Close-Connection-When-No-Route.html">Prev</a>&#160;</td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Runtime.html">Up</a></td><td align="right" width="40%">&#160;<a accesskey="n" href="Java-Broker-Runtime-Consumers.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">9.5.&#160;Closing client connections on unroutable mandatory messages&#160;</td><td align="center" width="20%"><a accesskey="h" href="Apache-Qpid-Broker-J-Book.html">Home</a></td><td align="right" valign="top" width="40%">&#160;9.7.&#160;Consumers</td></tr></table></div></div>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/00086d70/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Handling-Undeliverable-Messages.html.in
----------------------------------------------------------------------
diff --git a/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Handling-Undeliverable-Messages.html.in b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Handling-Undeliverable-Messages.html.in
new file mode 100644
index 0000000..806119e
--- /dev/null
+++ b/input/releases/qpid-broker-j-7.0.4/book/Java-Broker-Runtime-Handling-Undeliverable-Messages.html.in
@@ -0,0 +1,36 @@
+<div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">9.4.&#160;Handing Undeliverable Messages</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Runtime-Transaction-Timeout.html">Prev</a>&#160;</td><th align="center" width="60%">Chapter&#160;9.&#160;Runtime</th><td align="right" width="20%">&#160;<a accesskey="n" href="Java-Broker-Runtime-Close-Connection-When-No-Route.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Java-Broker-Runtime-Handling-Undeliverable-Messages"></a>9.4.&#160;Handing Undeliverable Messages</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Runtime-Handling-Undeliverable-Messages-Introduction"></a>9.4.1.&#160;Introduction</h3></div></div></div><p> Messages that cannot be delivered successfully to a consumer (
 for instance, because the
+   client is using a transacted session and rolls-back the transaction) can be made available on
+   the queue again and then subsequently be redelivered, depending on the precise session
+   acknowledgement mode and messaging model used by the application. This is normally desirable
+   behaviour that contributes to the ability of a system to withstand unexpected errors. However, it
+   leaves open the possibility for a message to be repeatedly redelivered (potentially indefinitely),
+   consuming system resources and preventing the delivery of other messages. Such undeliverable
+   messages are sometimes known as poison messages.</p><p>For an example, consider a stock ticker application that has been designed to consume prices
+   contained within JMS TextMessages. What if inadvertently a BytesMessage is placed onto the queue?
+   As the ticker application does not expect the BytesMessage, its processing might fail and cause it
+   to roll-back the transaction, however the default behavior of the Broker would mean that the
+   BytesMessage would be delivered over and over again, preventing the delivery of other legitimate
+   messages, until an operator intervenes and removes the erroneous message from the queue. </p><p>Qpid has maximum delivery count and dead-letter queue (DLQ) features which can be used in
+   concert to construct a system that automatically handles such a condition. These features are
+   described in the following sections.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Runtime-Handling-Undeliverable-Messages-Maximum-Delivery-Count"></a>9.4.2.&#160;Maximum Delivery Count</h3></div></div></div><p> Maximum delivery count is an attribute of a queue. If a consumer application is unable to
+   process a message more than the specified number of times, then the Broker will either route the
+   message via the queue's <span class="emphasis"><em>alternate binding</em></span> (if one has been defined), or will
+   discard the message.</p><p>When using AMQP 1.0 the current delivery count of a message is available to the consuming
+   application via the<code class="literal">message-count</code> message header (exposed via the
+   <code class="literal">JMSXDeliveryCount</code> JMS message property when using JMS).  When using the
+   AMQP 0-8..0-10 protocols this information is not available.</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p> When using AMQP 0-8..0-10, in order for a maximum delivery count to be enforced, the consuming application
+    <span class="emphasis"><em>must</em></span> call <a class="link" href="http://docs.oracle.com/javaee/6/api/javax/jms/Session.html#rollback()" target="_top">Session#rollback()</a> (or <a class="link" href="http://docs.oracle.com/javaee/6/api/javax/jms/Session.html#recover()" target="_top">Session#recover()</a> if the session is not transacted). It is during the Broker's
+    processing of Session#rollback() (or Session#recover()) that if a message has been seen
+    at least the maximum number of times then it will move the message to the DLQ or discard the
+    message. If the consuming application fails in another manner, for instance, closes the connection, the
+    message will not be re-routed and consumer application will see the same poison message again
+    once it reconnects.</p><p> If the consuming application is using Qpid JMS Client 0-x and using AMQP 0-8, 0-9, or 0-9-1
+    protocols, it is necessary to set the client system property <code class="varname">qpid.reject.behaviour</code> or
+    connection or binding URL option <code class="varname">rejectbehaviour</code> to the value <code class="literal">server</code>.</p></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Runtime-Handling-Undeliverable-Messages-Dead-Letter-Queues"></a>9.4.3.&#160;Alternate Binding</h3></div></div></div><p>Once the maximum delivery count is exceeded, if the queue has an <code class="literal">alternateBinding</code>
+    specified, the Broker automatically routes the message via the alternate binding.  The alternate binding
+    would normally specify a queue designated for that purpose of receiving the undeliverable messages.
+    By convention such queues are known as dead-letter queues or simply DLQs.</p><div class="caution" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Avoid excessive queue depth</h3><p>Applications making use of DLQs <span class="emphasis"><em>should</em></span> make provision for the frequent
+    examination of messages arriving on DLQs so that both corrective actions can be taken to resolve
+    the underlying cause and organise for their timely removal from the DLQ. Messages on DLQs
+    consume system resources in the same manner as messages on normal queues so excessive queue
+    depths should not be permitted to develop.</p></div></div></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Runtime-Transaction-Timeout.html">Prev</a>&#160;</td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Runtime.html">Up</a></td><td align="right" width="40%">&#160;<a accesskey="n" href="Java-Broker-Runtime-Close-Connection-When-No-Route.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">9.3.&#160;Transaction Timeout&#160;</td><td align="center" width="20%"><a accesskey="h" href="Apache-Qpid-Broker-J-Book.html">Home</a></td><td align="right" valign="top" width="40%">&#160;9.5.&#160;Closing client connections on unroutable mandatory messages</td></tr></table></div></div>
\ No newline at end of file


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org


Mime
View raw message