http://git-wip-us.apache.org/repos/asf/qpid-site/blob/a39b425b/content/releases/index.html
----------------------------------------------------------------------
diff --git a/content/releases/index.html b/content/releases/index.html
index 6436bef..fe7201a 100644
--- a/content/releases/index.html
+++ b/content/releases/index.html
@@ -170,12 +170,6 @@ the
 <li><a href="qpid-dispatch-0.3/index.html">Qpid Dispatch 0.3</a>, January 
2015</li>
 <li><a href="qpid-proton-0.8/index.html">Qpid Proton 0.8</a>, October 2014</li>
 <li><a href="qpid-0.30/index.html">Qpid 0.30</a>, September 2014</li>
-<li><a href="qpid-0.28/index.html">Qpid 0.28</a>, June 2014</li>
-<li><a href="qpid-dispatch-0.2/index.html">Qpid Dispatch 0.2</a>, April 
2014</li>
-<li><a href="qpid-proton-0.7/index.html">Qpid Proton 0.7</a>, April 2014</li>
-<li><a href="qpid-0.26/index.html">Qpid 0.26</a>, February 2014</li>
-<li><a href="qpid-proton-0.6/index.html">Qpid Proton 0.6</a>, January 2014</li>
-<li><a href="qpid-dispatch-0.1/index.html">Qpid Dispatch 0.1</a>, January 
2014</li>
 </ul>
 
 </div>

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/a39b425b/content/releases/qpid-0.26/cpp-broker/book/AMQP-Compatibility.html
----------------------------------------------------------------------
diff --git a/content/releases/qpid-0.26/cpp-broker/book/AMQP-Compatibility.html 
b/content/releases/qpid-0.26/cpp-broker/book/AMQP-Compatibility.html
deleted file mode 100644
index 1d7f12e..0000000
--- a/content/releases/qpid-0.26/cpp-broker/book/AMQP-Compatibility.html
+++ /dev/null
@@ -1,536 +0,0 @@
-<!DOCTYPE html>
-<!--
- -
- - Licensed to the Apache Software Foundation (ASF) under one
- - or more contributor license agreements.  See the NOTICE file
- - distributed with this work for additional information
- - regarding copyright ownership.  The ASF licenses this file
- - to you under the Apache License, Version 2.0 (the
- - "License"); you may not use this file except in compliance
- - with the License.  You may obtain a copy of the License at
- -
- -   http://www.apache.org/licenses/LICENSE-2.0
- -
- - Unless required by applicable law or agreed to in writing,
- - software distributed under the License is distributed on an
- - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- - KIND, either express or implied.  See the License for the
- - specific language governing permissions and limitations
- - under the License.
- -
--->
-<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
-  <head>
-    <title>AMQP-Compatibility.html - Apache Qpid&#8482;</title>
-    <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
-    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
-    <link rel="stylesheet" href="/site.css" type="text/css" async="async"/>
-    <link rel="stylesheet" href="/deferred.css" type="text/css" defer="defer"/>
-    <script type="text/javascript">var _deferredFunctions = [];</script>
-    <script type="text/javascript" src="/deferred.js" defer="defer"></script>
-    <!--[if lte IE 8]>
-      <link rel="stylesheet" href="/ie.css" type="text/css"/>
-      <script type="text/javascript" src="/html5shiv.js"></script>
-    <![endif]-->
-
-    <!-- Redirects for `go get` and godoc.org -->
-    <meta name="go-import"
-          content="qpid.apache.org git 
https://git-wip-us.apache.org/repos/asf/qpid-proton.git"/>
-    <meta name="go-source"
-          content="qpid.apache.org
-https://github.com/apache/qpid-proton/blob/go1/README.md
-https://github.com/apache/qpid-proton/tree/go1{/dir}
-https://github.com/apache/qpid-proton/blob/go1{/dir}/{file}#L{line}"/>
-  </head>
-  <body>
-    <div id="-content">
-      <div id="-top" class="panel">
-        <a id="-menu-link"><img width="16" height="16" src="" alt="Menu"/></a>
-
-        <a id="-search-link"><img width="22" height="16" src="" 
alt="Search"/></a>
-
-        <ul id="-global-navigation">
-          <li><a id="-logotype" href="/index.html">Apache 
Qpid<sup>&#8482;</sup></a></li>
-          <li><a href="/documentation.html">Documentation</a></li>
-          <li><a href="/download.html">Download</a></li>
-          <li><a href="/discussion.html">Discussion</a></li>
-        </ul>
-      </div>
-
-      <div id="-menu" class="panel" style="display: none;">
-        <div class="flex">
-          <section>
-            <h3>Project</h3>
-
-            <ul>
-              <li><a href="/overview.html">Overview</a></li>
-              <li><a href="/components/index.html">Components</a></li>
-              <li><a href="/releases/index.html">Releases</a></li>
-            </ul>
-          </section>
-
-          <section>
-            <h3>Messaging APIs</h3>
-
-            <ul>
-              <li><a href="/proton/index.html">Qpid Proton</a></li>
-              <li><a href="/components/jms/index.html">Qpid JMS</a></li>
-              <li><a href="/components/messaging-api/index.html">Qpid 
Messaging API</a></li>
-            </ul>
-          </section>
-
-          <section>
-            <h3>Servers and tools</h3>
-
-            <ul>
-              <li><a href="/components/java-broker/index.html">Broker for 
Java</a></li>
-              <li><a href="/components/cpp-broker/index.html">C++ 
broker</a></li>
-              <li><a href="/components/dispatch-router/index.html">Dispatch 
router</a></li>
-            </ul>
-          </section>
-
-          <section>
-            <h3>Resources</h3>
-
-            <ul>
-              <li><a href="/dashboard.html">Dashboard</a></li>
-              <li><a 
href="https://cwiki.apache.org/confluence/display/qpid/Index";>Wiki</a></li>
-              <li><a href="/resources.html">More resources</a></li>
-            </ul>
-          </section>
-        </div>
-      </div>
-
-      <div id="-search" class="panel" style="display: none;">
-        <form action="http://www.google.com/search"; method="get">
-          <input type="hidden" name="sitesearch" value="qpid.apache.org"/>
-          <input type="text" name="q" maxlength="255" autofocus="autofocus" 
tabindex="1"/>
-          <button type="submit">Search</button>
-          <a href="/search.html">More ways to search</a>
-        </form>
-      </div>
-
-      <div id="-middle" class="panel">
-        <ul id="-path-navigation"><li><a 
href="/index.html">Home</a></li><li><a 
href="/releases/index.html">Releases</a></li><li><a 
href="/releases/qpid-0.26/index.html">Qpid 0.26</a></li><li><a 
href="/releases/qpid-0.26/cpp-broker/book/index.html">AMQP Messaging Broker 
(Implemented in C++)</a></li><li>AMQP-Compatibility.html</li></ul>
-
-        <div id="-middle-content">
-          <div class="docbook"><div class="navheader"><table 
summary="Navigation header" width="100%"><tr><th align="center" 
colspan="3">1.9.&#160;
-      AMQP compatibility
-    </th></tr><tr><td align="left" width="20%"><a accesskey="p" 
href="producer-flow-control.html">Prev</a>&#160;</td><th align="center" 
width="60%">Chapter&#160;1.&#160;
-      Running the AMQP Messaging Broker
-    </th><td align="right" width="20%">&#160;<a accesskey="n" 
href="QpidInteroperabilityDocumentation-QpidInteroperabilityDocumentation.html">Next</a></td></tr></table><hr
 /></div><div class="section"><div class="titlepage"><div><div><h2 
class="title"><a id="AMQP-Compatibility"></a>1.9.&#160;
-      AMQP compatibility
-    </h2></div></div></div><p>
-            Qpid provides the most complete and compatible implementation
-            of AMQP. And is the most aggressive in implementing the latest
-            version of the specification.
-          </p><p>
-            There are two brokers:
-          </p><div class="itemizedlist"><ul class="itemizedlist" 
type="disc"><li class="listitem"><p>C++ with support for AMQP 0-10</p></li><li 
class="listitem"><p>Java with support for AMQP 0-8 and 0-9 (0-10 
planned)</p></li></ul></div><p>
-            There are client libraries for C++, Java (JMS), .Net (written in
-            C#), python and ruby.
-          </p><div class="itemizedlist"><ul class="itemizedlist" 
type="disc"><li class="listitem"><p>All clients support 0-10 and interoperate 
with the C++
-            broker.
-            </p></li></ul></div><div class="itemizedlist"><ul 
class="itemizedlist" type="disc"><li class="listitem"><p>The JMS client 
supports 0-8, 0-9 and 0-10 and interoperates
-            with both brokers.
-            </p></li></ul></div><div class="itemizedlist"><ul 
class="itemizedlist" type="disc"><li class="listitem"><p>The python and ruby 
clients will also support all versions,
-            but the API is dynamically driven by the specification used and
-            so differs between versions. To work with the Java broker you
-            must use 0-8 or 0-9, to work with the C++ broker you must use
-            0-10.
-            </p></li></ul></div><div class="itemizedlist"><ul 
class="itemizedlist" type="disc"><li class="listitem"><p>There are two separate 
C# clients, one for 0-8 that
-            interoperates with the Java broker, one for 0-10 that
-            inteoperates with the C++ broker.
-            </p></li></ul></div><p>
-            QMF Management is supported in Ruby, Python, C++, and via QMan
-            for Java JMX &amp; WS-DM.
-          </p><div class="section"><div class="titlepage"><div><div><h3 
class="title"><a 
id="AMQPcompatibility-AMQPCompatibilityofQpidreleases-3A"></a>1.9.1.&#160;
-            AMQP
-            Compatibility of Qpid releases:
-          </h3></div></div></div><p>
-            Qpid implements the AMQP Specification, and as the specification
-            has progressed Qpid is keeping up with the updates. This means
-            that different Qpid versions support different versions of AMQP.
-            Here is a simple guide on what use.
-          </p><p>
-            Here is a matrix that describes the different versions supported
-            by each release. The status symbols are interpreted as follows:
-          </p><div class="variablelist"><dl class="variablelist"><dt><span 
class="term">Y</span></dt><dd><p>supported</p></dd><dt><span 
class="term">N</span></dt><dd><p>unsupported</p></dd><dt><span 
class="term">IP</span></dt><dd><p>in progress</p></dd><dt><span 
class="term">P</span></dt><dd><p>planned</p></dd></dl></div><div 
class="table"><a id="idm139836370246480"></a><p 
class="title"><strong>Table&#160;1.21.&#160;AMQP Version Support by Qpid 
Release</strong></p><div class="table-contents"><table border="1" summary="AMQP 
Version Support by Qpid Release"><colgroup><col /><col /><col /><col /><col 
/><col /></colgroup><tbody><tr><td>
-                  Component
-                </td><td>
-                  Spec
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td></tr><tr><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  M2.1
-                </td><td>
-                  M3
-                </td><td>
-                  M4
-                </td><td>
-                  0.5
-                </td></tr><tr><td>
-                  java client
-                </td><td>
-                  0-10
-                </td><td>
-                  &#160;
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td></tr><tr><td>
-                  &#160;
-                </td><td>
-                  0-9
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td></tr><tr><td>
-                  &#160;
-                </td><td>
-                  0-8
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td></tr><tr><td>
-                  java broker
-                </td><td>
-                  0-10
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  P
-                </td></tr><tr><td>
-                  &#160;
-                </td><td>
-                  0-9
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td></tr><tr><td>
-                  &#160;
-                </td><td>
-                  0-8
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td></tr><tr><td>
-                  c++ client/broker
-                </td><td>
-                  0-10
-                </td><td>
-                  &#160;
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td></tr><tr><td>
-                  &#160;
-                </td><td>
-                  0-9
-                </td><td>
-                  Y
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td></tr><tr><td>
-                  python client
-                </td><td>
-                  0-10
-                </td><td>
-                  &#160;
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td></tr><tr><td>
-                  &#160;
-                </td><td>
-                  0-9
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td></tr><tr><td>
-                  &#160;
-                </td><td>
-                  0-8
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td></tr><tr><td>
-                  ruby client
-                </td><td>
-                  0-10
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td></tr><tr><td>
-                  &#160;
-                </td><td>
-                  0-8
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td></tr><tr><td>
-                  C# client
-                </td><td>
-                  0-10
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td></tr><tr><td>
-                  &#160;
-                </td><td>
-                  0-8
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td></tr></tbody></table></div></div><br class="table-break" 
/></div><div class="section"><div class="titlepage"><div><div><h3 
class="title"><a 
id="AMQPcompatibility-InteroptablebyAMQPspecificationversion"></a>1.9.2.&#160;
-            Interop
-            table by AMQP specification version
-          </h3></div></div></div><p>
-            Above table represented in another format.
-          </p><div class="table"><a id="idm139836367476928"></a><p 
class="title"><strong>Table&#160;1.22.&#160;AMQP Version Support - alternate 
format</strong></p><div class="table-contents"><table border="1" summary="AMQP 
Version Support - alternate format"><colgroup><col /><col /><col /><col /><col 
/></colgroup><tbody><tr><td>
-                  &#160;
-                </td><td>
-                  release
-                </td><td>
-                  0-8
-                </td><td>
-                  0-9
-                </td><td>
-                  0-10
-                </td></tr><tr><td>
-                  java client
-                </td><td>
-                  M3 M4 0.5
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td></tr><tr><td>
-                  java client
-                </td><td>
-                  M2.1
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  N
-                </td></tr><tr><td>
-                  java broker
-                </td><td>
-                  M3 M4 0.5
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  N
-                </td></tr><tr><td>
-                  java broker
-                </td><td>
-                  trunk
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  P
-                </td></tr><tr><td>
-                  java broker
-                </td><td>
-                  M2.1
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  N
-                </td></tr><tr><td>
-                  c++ client/broker
-                </td><td>
-                  M3 M4 0.5
-                </td><td>
-                  N
-                </td><td>
-                  N
-                </td><td>
-                  Y
-                </td></tr><tr><td>
-                  c++ client/broker
-                </td><td>
-                  M2.1
-                </td><td>
-                  N
-                </td><td>
-                  Y
-                </td><td>
-                  N
-                </td></tr><tr><td>
-                  python client
-                </td><td>
-                  M3 M4 0.5
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td></tr><tr><td>
-                  python client
-                </td><td>
-                  M2.1
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  N
-                </td></tr><tr><td>
-                  ruby client
-                </td><td>
-                  M3 M4 0.5
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  N
-                </td></tr><tr><td>
-                  ruby client
-                </td><td>
-                  trunk
-                </td><td>
-                  Y
-                </td><td>
-                  Y
-                </td><td>
-                  P
-                </td></tr><tr><td>
-                  C# client
-                </td><td>
-                  M3 M4 0.5
-                </td><td>
-                  Y
-                </td><td>
-                  N
-                </td><td>
-                  N
-                </td></tr><tr><td>
-                  C# client
-                </td><td>
-                  trunk
-                </td><td>
-                  Y
-                </td><td>
-                  N
-                </td><td>
-                  Y
-                </td></tr></tbody></table></div></div><br class="table-break" 
/></div></div><div class="navfooter"><hr /><table summary="Navigation footer" 
width="100%"><tr><td align="left" width="40%"><a accesskey="p" 
href="producer-flow-control.html">Prev</a>&#160;</td><td align="center" 
width="20%"><a accesskey="u" href="ch01.html">Up</a></td><td align="right" 
width="40%">&#160;<a accesskey="n" 
href="QpidInteroperabilityDocumentation-QpidInteroperabilityDocumentation.html">Next</a></td></tr><tr><td
 align="left" valign="top" width="40%">1.8.&#160;
-    Producer Flow Control
-  &#160;</td><td align="center" width="20%"><a accesskey="h" 
href="index.html">Home</a></td><td align="right" valign="top" 
width="40%">&#160;1.10.&#160;Qpid Interoperability 
Documentation</td></tr></table></div></div>
-
-          <hr/>
-
-          <ul id="-apache-navigation">
-            <li><a href="http://www.apache.org/";>Apache</a></li>
-            <li><a href="http://www.apache.org/licenses/";>License</a></li>
-            <li><a 
href="http://www.apache.org/foundation/sponsorship.html";>Sponsorship</a></li>
-            <li><a 
href="http://www.apache.org/foundation/thanks.html";>Thanks!</a></li>
-            <li><a href="/security.html">Security</a></li>
-            <li><a href="http://www.apache.org/";><img id="-apache-feather" 
width="48" height="14" src="" alt="Apache"/></a></li>
-          </ul>
-
-          <p id="-legal">
-            Apache Qpid, Messaging built on AMQP; Copyright &#169; 2015
-            The Apache Software Foundation; Licensed under
-            the <a href="http://www.apache.org/licenses/LICENSE-2.0";>Apache
-            License, Version 2.0</a>; Apache Qpid, Qpid, Qpid Proton,
-            Proton, Apache, the Apache feather logo, and the Apache Qpid
-            project logo are trademarks of The Apache Software
-            Foundation; All other marks mentioned may be trademarks or
-            registered trademarks of their respective owners
-          </p>
-        </div>
-      </div>
-    </div>
-  </body>
-</html>

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/a39b425b/content/releases/qpid-0.26/cpp-broker/book/QpidInteroperabilityDocumentation-QpidInteroperabilityDocumentation.html
----------------------------------------------------------------------
diff --git 
a/content/releases/qpid-0.26/cpp-broker/book/QpidInteroperabilityDocumentation-QpidInteroperabilityDocumentation.html
 
b/content/releases/qpid-0.26/cpp-broker/book/QpidInteroperabilityDocumentation-QpidInteroperabilityDocumentation.html
deleted file mode 100644
index 211097a..0000000
--- 
a/content/releases/qpid-0.26/cpp-broker/book/QpidInteroperabilityDocumentation-QpidInteroperabilityDocumentation.html
+++ /dev/null
@@ -1,375 +0,0 @@
-<!DOCTYPE html>
-<!--
- -
- - Licensed to the Apache Software Foundation (ASF) under one
- - or more contributor license agreements.  See the NOTICE file
- - distributed with this work for additional information
- - regarding copyright ownership.  The ASF licenses this file
- - to you under the Apache License, Version 2.0 (the
- - "License"); you may not use this file except in compliance
- - with the License.  You may obtain a copy of the License at
- -
- -   http://www.apache.org/licenses/LICENSE-2.0
- -
- - Unless required by applicable law or agreed to in writing,
- - software distributed under the License is distributed on an
- - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- - KIND, either express or implied.  See the License for the
- - specific language governing permissions and limitations
- - under the License.
- -
--->
-<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
-  <head>
-    <title>1.10.&#160;Qpid Interoperability Documentation - Apache 
Qpid&#8482;</title>
-    <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
-    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
-    <link rel="stylesheet" href="/site.css" type="text/css" async="async"/>
-    <link rel="stylesheet" href="/deferred.css" type="text/css" defer="defer"/>
-    <script type="text/javascript">var _deferredFunctions = [];</script>
-    <script type="text/javascript" src="/deferred.js" defer="defer"></script>
-    <!--[if lte IE 8]>
-      <link rel="stylesheet" href="/ie.css" type="text/css"/>
-      <script type="text/javascript" src="/html5shiv.js"></script>
-    <![endif]-->
-
-    <!-- Redirects for `go get` and godoc.org -->
-    <meta name="go-import"
-          content="qpid.apache.org git 
https://git-wip-us.apache.org/repos/asf/qpid-proton.git"/>
-    <meta name="go-source"
-          content="qpid.apache.org
-https://github.com/apache/qpid-proton/blob/go1/README.md
-https://github.com/apache/qpid-proton/tree/go1{/dir}
-https://github.com/apache/qpid-proton/blob/go1{/dir}/{file}#L{line}"/>
-  </head>
-  <body>
-    <div id="-content">
-      <div id="-top" class="panel">
-        <a id="-menu-link"><img width="16" height="16" src="" alt="Menu"/></a>
-
-        <a id="-search-link"><img width="22" height="16" src="" 
alt="Search"/></a>
-
-        <ul id="-global-navigation">
-          <li><a id="-logotype" href="/index.html">Apache 
Qpid<sup>&#8482;</sup></a></li>
-          <li><a href="/documentation.html">Documentation</a></li>
-          <li><a href="/download.html">Download</a></li>
-          <li><a href="/discussion.html">Discussion</a></li>
-        </ul>
-      </div>
-
-      <div id="-menu" class="panel" style="display: none;">
-        <div class="flex">
-          <section>
-            <h3>Project</h3>
-
-            <ul>
-              <li><a href="/overview.html">Overview</a></li>
-              <li><a href="/components/index.html">Components</a></li>
-              <li><a href="/releases/index.html">Releases</a></li>
-            </ul>
-          </section>
-
-          <section>
-            <h3>Messaging APIs</h3>
-
-            <ul>
-              <li><a href="/proton/index.html">Qpid Proton</a></li>
-              <li><a href="/components/jms/index.html">Qpid JMS</a></li>
-              <li><a href="/components/messaging-api/index.html">Qpid 
Messaging API</a></li>
-            </ul>
-          </section>
-
-          <section>
-            <h3>Servers and tools</h3>
-
-            <ul>
-              <li><a href="/components/java-broker/index.html">Broker for 
Java</a></li>
-              <li><a href="/components/cpp-broker/index.html">C++ 
broker</a></li>
-              <li><a href="/components/dispatch-router/index.html">Dispatch 
router</a></li>
-            </ul>
-          </section>
-
-          <section>
-            <h3>Resources</h3>
-
-            <ul>
-              <li><a href="/dashboard.html">Dashboard</a></li>
-              <li><a 
href="https://cwiki.apache.org/confluence/display/qpid/Index";>Wiki</a></li>
-              <li><a href="/resources.html">More resources</a></li>
-            </ul>
-          </section>
-        </div>
-      </div>
-
-      <div id="-search" class="panel" style="display: none;">
-        <form action="http://www.google.com/search"; method="get">
-          <input type="hidden" name="sitesearch" value="qpid.apache.org"/>
-          <input type="text" name="q" maxlength="255" autofocus="autofocus" 
tabindex="1"/>
-          <button type="submit">Search</button>
-          <a href="/search.html">More ways to search</a>
-        </form>
-      </div>
-
-      <div id="-middle" class="panel">
-        <ul id="-path-navigation"><li><a 
href="/index.html">Home</a></li><li><a 
href="/releases/index.html">Releases</a></li><li><a 
href="/releases/qpid-0.26/index.html">Qpid 0.26</a></li><li><a 
href="/releases/qpid-0.26/cpp-broker/book/index.html">AMQP Messaging Broker 
(Implemented in C++)</a></li><li>1.10.&#160;Qpid Interoperability 
Documentation</li></ul>
-
-        <div id="-middle-content">
-          <div class="docbook"><div class="navheader"><table 
summary="Navigation header" width="100%"><tr><th align="center" 
colspan="3">1.10.&#160;Qpid Interoperability Documentation</th></tr><tr><td 
align="left" width="20%"><a accesskey="p" 
href="AMQP-Compatibility.html">Prev</a>&#160;</td><th align="center" 
width="60%">Chapter&#160;1.&#160;
-      Running the AMQP Messaging Broker
-    </th><td align="right" width="20%">&#160;<a accesskey="n" 
href="Using-message-groups.html">Next</a></td></tr></table><hr /></div><div 
class="section"><div class="titlepage"><div><div><h2 class="title"><a 
id="QpidInteroperabilityDocumentation-QpidInteroperabilityDocumentation"></a>1.10.&#160;Qpid
 Interoperability Documentation</h2></div></div></div><p>
-            This page documents the various interoperable features of the
-            Qpid clients.
-          </p><div class="section"><div class="titlepage"><div><div><h3 
class="title"><a id="QpidInteroperabilityDocumentation-SASL"></a>1.10.1.&#160;
-            SASL
-          </h3></div></div></div><p>
-            
-          </p><div class="section"><div class="titlepage"><div><div><h4 
class="title"><a 
id="QpidInteroperabilityDocumentation-StandardMechanisms"></a>1.10.1.1.&#160;
-            Standard
-            Mechanisms
-          </h4></div></div></div><p>
-            <a class="ulink" 
href="http://en.wikipedia.org/wiki/Simple_Authentication_and_Security_Layer#SASL_mechanisms";
 
target="_top">http://en.wikipedia.org/wiki/Simple_Authentication_and_Security_Layer#SASL_mechanisms</a>
-          </p><p>
-            This table list the various SASL mechanisms that each component
-            supports. The version listed shows when this
-            functionality was added to the product.
-          </p><div class="table"><a id="idm139836369278416"></a><p 
class="title"><strong>Table&#160;1.23.&#160;SASL Mechanism 
Support</strong></p><div class="table-contents"><table border="1" summary="SASL 
Mechanism Support"><colgroup><col /><col /><col /><col /><col /><col /><col 
/></colgroup><tbody><tr><td>
-                  Component
-                </td><td>
-                  ANONYMOUS
-                </td><td>
-                  CRAM-MD5
-                </td><td>
-                  DIGEST-MD5
-                </td><td>
-                  EXTERNAL
-                </td><td>
-                  GSSAPI/Kerberos
-                </td><td>
-                  PLAIN
-                </td></tr><tr><td>
-                  C++ Broker
-                </td><td>
-                  M3[<a class="xref" 
href="QpidInteroperabilityDocumentation-QpidInteroperabilityDocumentation.html#QpidInteroperabilityDocumentation-1">Section&#160;1.10.1.1,
 &#8220;
-            Standard
-            Mechanisms
-          &#8221;</a>]
-                </td><td>
-                  M3[<a class="xref" 
href="QpidInteroperabilityDocumentation-QpidInteroperabilityDocumentation.html#QpidInteroperabilityDocumentation-1">Section&#160;1.10.1.1,
 &#8220;
-            Standard
-            Mechanisms
-          &#8221;</a>,<a class="xref" 
href="QpidInteroperabilityDocumentation-QpidInteroperabilityDocumentation.html#QpidInteroperabilityDocumentation-2">Section&#160;1.10.1.1,
 &#8220;
-            Standard
-            Mechanisms
-          &#8221;</a>]
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  M3[<a class="xref" 
href="QpidInteroperabilityDocumentation-QpidInteroperabilityDocumentation.html#QpidInteroperabilityDocumentation-1">Section&#160;1.10.1.1,
 &#8220;
-            Standard
-            Mechanisms
-          &#8221;</a>,<a class="xref" 
href="QpidInteroperabilityDocumentation-QpidInteroperabilityDocumentation.html#QpidInteroperabilityDocumentation-2">Section&#160;1.10.1.1,
 &#8220;
-            Standard
-            Mechanisms
-          &#8221;</a>]
-                </td><td>
-                  M1
-                </td></tr><tr><td>
-                  C++ Client
-                </td><td>
-                  M3[<a class="xref" 
href="QpidInteroperabilityDocumentation-QpidInteroperabilityDocumentation.html#QpidInteroperabilityDocumentation-1">Section&#160;1.10.1.1,
 &#8220;
-            Standard
-            Mechanisms
-          &#8221;</a>]
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  M1
-                </td></tr><tr><td>
-                  Java Broker
-                </td><td>
-                  &#160;
-                </td><td>
-                  M1
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  M1
-                </td></tr><tr><td>
-                  Java Client
-                </td><td>
-                  &#160;
-                </td><td>
-                  M1
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  M1
-                </td></tr><tr><td>
-                  .Net Client
-                </td><td>
-                  M2
-                </td><td>
-                  M2
-                </td><td>
-                  M2
-                </td><td>
-                  M2
-                </td><td>
-                  &#160;
-                </td><td>
-                  M2
-                </td></tr><tr><td>
-                  Python Client
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  ?
-                </td></tr><tr><td>
-                  Ruby Client
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td><td>
-                  ?
-                </td></tr></tbody></table></div></div><br class="table-break" 
/><p><a id="QpidInteroperabilityDocumentation-1"></a>        
-            1: Support for these will be in M3 (currently available on
-            trunk).
-         </p><p><a id="QpidInteroperabilityDocumentation-2"></a>2: C++ Broker 
uses <a class="ulink" href="http://freshmeat.net/projects/cyrussasl/"; 
target="_top">Cyrus SASL</a> which
-            supports CRAM-MD5 and GSSAPI but these have not been tested yet
-          </p></div><div class="section"><div class="titlepage"><div><div><h4 
class="title"><a 
id="QpidInteroperabilityDocumentation-CustomMechanisms"></a>1.10.1.2.&#160;
-            Custom
-            Mechanisms
-          </h4></div></div></div><p>
-            There have been some custom mechanisms added to our
-            implementations.
-          </p><div class="table"><a id="idm139836367533552"></a><p 
class="title"><strong>Table&#160;1.24.&#160;SASL Custom 
Mechanisms</strong></p><div class="table-contents"><table border="1" 
summary="SASL Custom Mechanisms"><colgroup><col /><col /><col 
/></colgroup><tbody><tr><td>
-                  Component
-                </td><td>
-                  AMQPLAIN
-                </td><td>
-                  CRAM-MD5-HASHED
-                </td></tr><tr><td>
-                  C++ Broker
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td></tr><tr><td>
-                  C++ Client
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td></tr><tr><td>
-                  Java Broker
-                </td><td>
-                  M1
-                </td><td>
-                  M2
-                </td></tr><tr><td>
-                  Java Client
-                </td><td>
-                  M1
-                </td><td>
-                  M2
-                </td></tr><tr><td>
-                  .Net Client
-                </td><td>
-                  &#160;
-                </td><td>
-                  &#160;
-                </td></tr><tr><td>
-                  Python Client
-                </td><td>
-                  M2
-                </td><td>
-                  &#160;
-                </td></tr><tr><td>
-                  Ruby Client
-                </td><td>
-                  M2
-                </td><td>
-                  &#160;
-                </td></tr></tbody></table></div></div><br class="table-break" 
/><div class="section"><div class="titlepage"><div><div><h5 class="title"><a 
id="idm139836370064768"></a>AMQPLAIN</h5></div></div></div><p /></div><div 
class="section"><div class="titlepage"><div><div><h5 class="title"><a 
id="idm139836367739136"></a>CRAM-MD5-HASHED</h5></div></div></div><p>
-            The Java SASL implementations require that you have the password
-            of the user to validate the incoming request. This then means
-            that the user's password must be stored on disk. For this to be
-            secure either the broker must encrypt the password file or the
-            need for the password being stored must be removed.
-          </p><p>
-            The CRAM-MD5-HASHED SASL plugin removes the need for the plain
-            text password to be stored on disk. The mechanism defers all
-            functionality to the build in CRAM-MD5 module the only change is
-            on the client side where it generates the hash of the password
-            and uses that value as the password. This means that the Java
-            Broker only need store the password hash on the file system.
-            While a one way hash is not very secure compared to other forms
-            of encryption in environments where the having the password in
-            plain text is unacceptable this will provide and additional layer
-            to protect the password. In particular this offers some
-            protection where the same password may be shared amongst many
-            systems. It offers no real extra protection against attacks on
-            the broker (the secret is now the hash rather than the password).
-          </p></div></div></div></div><div class="navfooter"><hr /><table 
summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a 
accesskey="p" href="AMQP-Compatibility.html">Prev</a>&#160;</td><td 
align="center" width="20%"><a accesskey="u" href="ch01.html">Up</a></td><td 
align="right" width="40%">&#160;<a accesskey="n" 
href="Using-message-groups.html">Next</a></td></tr><tr><td align="left" 
valign="top" width="40%">1.9.&#160;
-      AMQP compatibility
-    &#160;</td><td align="center" width="20%"><a accesskey="h" 
href="index.html">Home</a></td><td align="right" valign="top" 
width="40%">&#160;1.11.&#160;
-    Using Message Groups
-  </td></tr></table></div></div>
-
-          <hr/>
-
-          <ul id="-apache-navigation">
-            <li><a href="http://www.apache.org/";>Apache</a></li>
-            <li><a href="http://www.apache.org/licenses/";>License</a></li>
-            <li><a 
href="http://www.apache.org/foundation/sponsorship.html";>Sponsorship</a></li>
-            <li><a 
href="http://www.apache.org/foundation/thanks.html";>Thanks!</a></li>
-            <li><a href="/security.html">Security</a></li>
-            <li><a href="http://www.apache.org/";><img id="-apache-feather" 
width="48" height="14" src="" alt="Apache"/></a></li>
-          </ul>
-
-          <p id="-legal">
-            Apache Qpid, Messaging built on AMQP; Copyright &#169; 2015
-            The Apache Software Foundation; Licensed under
-            the <a href="http://www.apache.org/licenses/LICENSE-2.0";>Apache
-            License, Version 2.0</a>; Apache Qpid, Qpid, Qpid Proton,
-            Proton, Apache, the Apache feather logo, and the Apache Qpid
-            project logo are trademarks of The Apache Software
-            Foundation; All other marks mentioned may be trademarks or
-            registered trademarks of their respective owners
-          </p>
-        </div>
-      </div>
-    </div>
-  </body>
-</html>

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/a39b425b/content/releases/qpid-0.26/cpp-broker/book/Using-message-groups.html
----------------------------------------------------------------------
diff --git 
a/content/releases/qpid-0.26/cpp-broker/book/Using-message-groups.html 
b/content/releases/qpid-0.26/cpp-broker/book/Using-message-groups.html
deleted file mode 100644
index 80d3f09..0000000
--- a/content/releases/qpid-0.26/cpp-broker/book/Using-message-groups.html
+++ /dev/null
@@ -1,299 +0,0 @@
-<!DOCTYPE html>
-<!--
- -
- - Licensed to the Apache Software Foundation (ASF) under one
- - or more contributor license agreements.  See the NOTICE file
- - distributed with this work for additional information
- - regarding copyright ownership.  The ASF licenses this file
- - to you under the Apache License, Version 2.0 (the
- - "License"); you may not use this file except in compliance
- - with the License.  You may obtain a copy of the License at
- -
- -   http://www.apache.org/licenses/LICENSE-2.0
- -
- - Unless required by applicable law or agreed to in writing,
- - software distributed under the License is distributed on an
- - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- - KIND, either express or implied.  See the License for the
- - specific language governing permissions and limitations
- - under the License.
- -
--->
-<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
-  <head>
-    <title>Using-message-groups.html - Apache Qpid&#8482;</title>
-    <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
-    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
-    <link rel="stylesheet" href="/site.css" type="text/css" async="async"/>
-    <link rel="stylesheet" href="/deferred.css" type="text/css" defer="defer"/>
-    <script type="text/javascript">var _deferredFunctions = [];</script>
-    <script type="text/javascript" src="/deferred.js" defer="defer"></script>
-    <!--[if lte IE 8]>
-      <link rel="stylesheet" href="/ie.css" type="text/css"/>
-      <script type="text/javascript" src="/html5shiv.js"></script>
-    <![endif]-->
-
-    <!-- Redirects for `go get` and godoc.org -->
-    <meta name="go-import"
-          content="qpid.apache.org git 
https://git-wip-us.apache.org/repos/asf/qpid-proton.git"/>
-    <meta name="go-source"
-          content="qpid.apache.org
-https://github.com/apache/qpid-proton/blob/go1/README.md
-https://github.com/apache/qpid-proton/tree/go1{/dir}
-https://github.com/apache/qpid-proton/blob/go1{/dir}/{file}#L{line}"/>
-  </head>
-  <body>
-    <div id="-content">
-      <div id="-top" class="panel">
-        <a id="-menu-link"><img width="16" height="16" src="" alt="Menu"/></a>
-
-        <a id="-search-link"><img width="22" height="16" src="" 
alt="Search"/></a>
-
-        <ul id="-global-navigation">
-          <li><a id="-logotype" href="/index.html">Apache 
Qpid<sup>&#8482;</sup></a></li>
-          <li><a href="/documentation.html">Documentation</a></li>
-          <li><a href="/download.html">Download</a></li>
-          <li><a href="/discussion.html">Discussion</a></li>
-        </ul>
-      </div>
-
-      <div id="-menu" class="panel" style="display: none;">
-        <div class="flex">
-          <section>
-            <h3>Project</h3>
-
-            <ul>
-              <li><a href="/overview.html">Overview</a></li>
-              <li><a href="/components/index.html">Components</a></li>
-              <li><a href="/releases/index.html">Releases</a></li>
-            </ul>
-          </section>
-
-          <section>
-            <h3>Messaging APIs</h3>
-
-            <ul>
-              <li><a href="/proton/index.html">Qpid Proton</a></li>
-              <li><a href="/components/jms/index.html">Qpid JMS</a></li>
-              <li><a href="/components/messaging-api/index.html">Qpid 
Messaging API</a></li>
-            </ul>
-          </section>
-
-          <section>
-            <h3>Servers and tools</h3>
-
-            <ul>
-              <li><a href="/components/java-broker/index.html">Broker for 
Java</a></li>
-              <li><a href="/components/cpp-broker/index.html">C++ 
broker</a></li>
-              <li><a href="/components/dispatch-router/index.html">Dispatch 
router</a></li>
-            </ul>
-          </section>
-
-          <section>
-            <h3>Resources</h3>
-
-            <ul>
-              <li><a href="/dashboard.html">Dashboard</a></li>
-              <li><a 
href="https://cwiki.apache.org/confluence/display/qpid/Index";>Wiki</a></li>
-              <li><a href="/resources.html">More resources</a></li>
-            </ul>
-          </section>
-        </div>
-      </div>
-
-      <div id="-search" class="panel" style="display: none;">
-        <form action="http://www.google.com/search"; method="get">
-          <input type="hidden" name="sitesearch" value="qpid.apache.org"/>
-          <input type="text" name="q" maxlength="255" autofocus="autofocus" 
tabindex="1"/>
-          <button type="submit">Search</button>
-          <a href="/search.html">More ways to search</a>
-        </form>
-      </div>
-
-      <div id="-middle" class="panel">
-        <ul id="-path-navigation"><li><a 
href="/index.html">Home</a></li><li><a 
href="/releases/index.html">Releases</a></li><li><a 
href="/releases/qpid-0.26/index.html">Qpid 0.26</a></li><li><a 
href="/releases/qpid-0.26/cpp-broker/book/index.html">AMQP Messaging Broker 
(Implemented in C++)</a></li><li>Using-message-groups.html</li></ul>
-
-        <div id="-middle-content">
-          <div class="docbook"><div class="navheader"><table 
summary="Navigation header" width="100%"><tr><th align="center" 
colspan="3">1.11.&#160;
-    Using Message Groups
-  </th></tr><tr><td align="left" width="20%"><a accesskey="p" 
href="QpidInteroperabilityDocumentation-QpidInteroperabilityDocumentation.html">Prev</a>&#160;</td><th
 align="center" width="60%">Chapter&#160;1.&#160;
-      Running the AMQP Messaging Broker
-    </th><td align="right" width="20%">&#160;<a accesskey="n" 
href="chapter-ha.html">Next</a></td></tr></table><hr /></div><div 
class="section"><div class="titlepage"><div><div><h2 class="title"><a 
id="Using-message-groups"></a>1.11.&#160;
-    Using Message Groups
-  </h2></div></div></div><div class="section"><div 
class="titlepage"><div><div><h3 class="title"><a 
id="usingmessagegroups-Overview"></a>1.11.1.&#160;
-      Overview
-    </h3></div></div></div><p>
-        The broker allows messaging applications to classify a set of related 
messages as
-        belonging to a group.  This allows a message producer to indicate to 
the consumer
-        that a group of messages should be considered a single logical 
operation with
-        respect to the application.
-      </p><p>
-        The broker can use this group identification to enforce policies 
controlling how
-        messages from a given group can be distributed to consumers.  For 
instance, the
-        broker can be configured to guarantee all the messages from a 
particular group are
-        processed in order across multiple consumers.
-      </p><p>
-        For example, assume we have a shopping application that manages items 
in a virtual
-        shopping cart.  A user may add an item to their shopping cart, then 
change their
-        mind and remove it.  If the application sends an <span 
class="emphasis"><em>add</em></span> message to the broker,
-        immediately followed by a <span 
class="emphasis"><em>remove</em></span> message, they will be queued in the 
proper
-        order - <span class="emphasis"><em>add</em></span>, followed by <span 
class="emphasis"><em>remove</em></span>.
-      </p><p>
-        However, if there are multiple consumers, it is possible that once a 
consumer
-        acquires the <span class="emphasis"><em>add</em></span> message, a 
different consumer may acquire the
-        <span class="emphasis"><em>remove</em></span> message.  This allows 
both messages to be processed in parallel,
-        which could result in a "race" where the <span 
class="emphasis"><em>remove</em></span> operation is incorrectly
-        performed before the <span class="emphasis"><em>add</em></span> 
operation.
-      </p></div><div class="section"><div class="titlepage"><div><div><h3 
class="title"><a id="usingmessagegroups-GroupingMessages"></a>1.11.2.&#160;
-        Grouping Messages
-      </h3></div></div></div><p>
-        In order to group messages, the application would designate a 
particular
-        message header as containing a message's <span 
class="emphasis"><em>group identifier</em></span>.  The group
-        identifier stored in that header field would be a string value set by 
the message
-        producer.  Messages from the same group would have the same group 
identifier
-        value. The key that identifies the header must also be known to the 
message
-        consumers.  This allows the consumers to determine a message's 
assigned group.
-      </p><p>
-        The header that is used to hold the group identifier, as well as the 
values used
-        as group identifiers, are totally under control of the application.
-      </p></div><div class="section"><div class="titlepage"><div><div><h3 
class="title"><a id="usingmessagegroups-BrokerRole"></a>1.11.3.&#160;
-        The Role of the Broker
-      </h3></div></div></div><p>
-        The broker will apply the following processing on each grouped message:
-        </p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li 
class="listitem">Enqueue a received message on the destination queue.</li><li 
class="listitem">Determine the message's group by examining the message's group 
identifier header.</li><li class="listitem">Enforce <span 
class="emphasis"><em>consumption ordering</em></span> among messages belonging 
to the same group.</li></ul></div><p>
-        <span class="emphasis"><em>Consumption ordering</em></span> means that 
the broker will not allow outstanding
-        unacknowledged messages to <span class="emphasis"><em>more than one 
consumer for a given group</em></span>.
-      </p><p>
-        This means that only one consumer can be processing messages from a 
particular
-        group at a given time.  When the consumer acknowledges all of its 
acquired
-        messages, then the broker <span class="emphasis"><em>may</em></span> 
pass the next pending message
-        from that group to a different consumer.
-      </p><p>
-        Specifically, for any given group the broker allows only the first N 
messages in
-        the group to be delivered to a consumer.  The value of N would be 
determined by
-        the selected consumer's configured prefetch capacity.  The broker 
blocks access by
-        any other consumer to any remaining undelivered messages in that 
group.  Once the
-        receiving consumer has:
-        </p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li 
class="listitem">acknowledged,</li><li class="listitem">released, or</li><li 
class="listitem">rejected</li></ul></div><p>
-        all the delivered messages, the broker allows the next messages in the 
group to be
-        delivered.  The next messages <span 
class="emphasis"><em>may</em></span> be delivered to a different
-        consumer.
-      </p><p>
-        Note well that distinct message groups would not block each other from 
delivery.
-        For example, assume a queue contains messages from two different 
message groups -
-        say group "A" and group "B" - and they are enqueued such that "A"'s 
messages are
-        in front of "B". If the first message of group "A" is in the process 
of being
-        consumed by a client, then the remaining "A" messages are blocked, but 
the
-        messages of the "B" group are available for consumption by other 
consumers - even
-        though it is "behind" group "A" in the queue.
-      </p></div><div class="section"><div class="titlepage"><div><div><h3 
class="title"><a id="usingmessagegroups-ConsumerGuide"></a>1.11.4.&#160;
-        Well Behaved Consumers
-      </h3></div></div></div><p>
-        The broker can only enforce policy when delivering messages. To 
guarantee that
-        strict message ordering is preserved, the consuming application must 
adhere to the
-        following rules:
-        </p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li 
class="listitem">completely process the data in a received message before 
accepting
-          that message</li><li class="listitem">acknowledge (or reject) 
messages in the same order as they are
-          received</li><li class="listitem">avoid releasing messages (see 
below)</li></ul></div><p>
-        The term <span class="emphasis"><em>processed</em></span> means that 
the consumer has finished
-        updating all application state affected by the message that has been 
received.
-        See section 2.6.2. Transfer of Responsibility, of the AMQP-0.10 
specification for
-        more detail.
-      </p><div class="note" style="margin-left: 0.5in; margin-right: 
0.5in;"><h3 class="title">Be Advised</h3><p>
-          If a consumer does not adhere to the above rules, it may affect the 
ordering of
-          grouped messages even when the broker is enforcing consumption 
order.  This can
-          be done by selectively acknowledging and releasing messages from the 
same group.
-        </p><p>
-          Assume a consumer has received two messages from group "A", "A-1" 
and "A-2", in
-          that order.  If the consumer releases "A-1" then acknowledges "A-2", 
"A-1" will
-          be put back onto the queue and "A-2" will be removed from the queue. 
 This
-          allows another consumer to acquire and process "A-1" <span 
class="emphasis"><em>after</em></span>
-          "A-2" has been processed.
-        </p><p>
-          Under some application-defined circumstances, this may be acceptable 
behavior.
-          However, if order must be preserved, the client should either release
-          <span class="emphasis"><em>all</em></span> currently held messages, 
or discard the target message
-          using reject.
-        </p></div></div><div class="section"><div 
class="titlepage"><div><div><h3 class="title"><a 
id="usingmessagegroups-BrokerConfig"></a>1.11.5.&#160;
-        Broker Configuration
-      </h3></div></div></div><p>
-        In order for the broker to determine a message's group, the key for 
the header
-        that contains the group identifier must be provided to the broker via
-        configuration.  This is done on a per-queue basis, when the queue is 
first
-        configured.
-      </p><p>
-        This means that message group classification is determined by the 
message's destination
-        queue.
-      </p><p>
-        Specifically, the queue "holds" the header key that is used to find 
the message's
-        group identifier.  All messages arriving at the queue are expected to 
use the same
-        header key for holding the identifer.  Once the message is enqueued, 
the broker
-        looks up the group identifier in the message's header, and classifies 
the message
-        by its group.
-      </p><p>
-        Message group support can be enabled on a queue using the
-        <span class="command"><strong>qpid-config</strong></span> command line 
tool.  The following options should be
-        provided when adding a new queue:
-        </p><div class="table"><a id="idm139836370913376"></a><p 
class="title"><strong>Table&#160;1.25.&#160;qpid-config options for creating 
message group queues</strong></p><div class="table-contents"><table border="1" 
summary="qpid-config options for creating message group queues"><colgroup><col 
/><col 
/></colgroup><thead><tr><th>Option</th><th>Description</th></tr></thead><tbody><tr><td>--group-header=<em
 class="replaceable"><code>header-name</code></em></td><td>Enable message group 
support for this queue. Specify name of application header that holds the group 
identifier.</td></tr><tr><td>--shared-groups</td><td>Enforce ordered message 
group consumption across multiple 
consumers.</td></tr></tbody></table></div></div><p><br class="table-break" />
-      </p><p>
-        Message group support may also be specified in the
-        <span class="command"><strong>queue.declare</strong></span> method via 
the <span class="command"><strong>arguments</strong></span>
-        parameter map, or using the messaging address syntax.  The following 
keys must be
-        provided in the arguments map to enable message group support on a 
queue:
-      </p><div class="table"><a id="idm139836366005776"></a><p 
class="title"><strong>Table&#160;1.26.&#160;Queue Declare/Address Syntax 
Message Group Configuration Arguments</strong></p><div 
class="table-contents"><table border="1" summary="Queue Declare/Address Syntax 
Message Group Configuration Arguments"><colgroup><col /><col 
/></colgroup><thead><tr><th>Key</th><th>Value</th></tr></thead><tbody><tr><td>qpid.group_header_key</td><td>string
 - key for message header that holds the group identifier 
value</td></tr><tr><td>qpid.shared_msg_group</td><td>1 - enforce ordering 
across multiple consumers</td></tr></tbody></table></div></div><br 
class="table-break" /><p>
-        It is important to note that there is no need to provide the actual 
group
-        identifer values that will be used. The broker learns this values as 
messages are
-        recieved.  Also, there is no practical limit - aside from resource 
limitations -
-        to the number of different groups that the broker can track at run 
time.
-      </p><div class="note" style="margin-left: 0.5in; margin-right: 
0.5in;"><h3 class="title">Restrictions</h3><p>
-          Message grouping is not supported on LVQ or Priority queues.
-        </p></div><div class="example"><a id="idm139836370827232"></a><p 
class="title"><strong>Example&#160;1.4.&#160;Creating a message group queue via 
qpid-config</strong></p><div class="example-contents"><p>
-          This example uses the qpid-config tool to create a message group 
queue called
-          "MyMsgQueue".  The message header that contains the group identifier 
will use
-          the key "GROUP_KEY".
-        </p><pre class="programlisting">
-qpid-config add queue MyMsgQueue --group-header="GROUP_KEY" --shared-groups
-        </pre></div></div><br class="example-break" /><div class="example"><a 
id="idm139836368576240"></a><p 
class="title"><strong>Example&#160;1.5.&#160;Creating a message group queue 
using address syntax (C++)</strong></p><div class="example-contents"><p>
-          This example uses the messaging address syntax to create a message 
group queue
-          with the same configuration as the previous example.
-        </p><pre class="programlisting">
-sender = session.createSender("MyMsgQueue;"
-                              " {create:always, delete:receiver,"
-                              " node: {x-declare: {arguments:"
-                              " {'qpid.group_header_key':'GROUP_KEY',"
-                              " 'qpid.shared_msg_group':1}}}}")
-        </pre></div></div><br class="example-break" /><div 
class="section"><div class="titlepage"><div><div><h4 class="title"><a 
id="usingmessagegroups-DefaultGroup"></a>1.11.5.1.&#160;
-          Default Group
-        </h4></div></div></div><p>
-          Should a message without a group identifier arrive at a queue 
configured for message grouping, the broker assigns the message to the default 
group.  Therefore, all such "unidentified" messages are considered by the 
broker as part of the same group.  The name of the default group is <span 
class="command"><strong>"qpid.no-group"</strong></span>.  This default can be 
overridden by suppling a different value to the broker configuration item <span 
class="command"><strong>"default-message-group"</strong></span>:
-          </p><div class="example"><a id="idm139836369801984"></a><p 
class="title"><strong>Example&#160;1.6.&#160;Overriding the default message 
group identifier for the broker</strong></p><div class="example-contents"><pre 
class="programlisting">
-qpidd --default-msg-group "EMPTY-GROUP"
-            </pre></div></div><p><br class="example-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="QpidInteroperabilityDocumentation-QpidInteroperabilityDocumentation.html">Prev</a>&#160;</td><td
 align="center" width="20%"><a accesskey="u" href="ch01.html">Up</a></td><td 
align="right" width="40%">&#160;<a accesskey="n" 
href="chapter-ha.html">Next</a></td></tr><tr><td align="left" valign="top" 
width="40%">1.10.&#160;Qpid Interoperability Documentation&#160;</td><td 
align="center" width="20%"><a accesskey="h" href="index.html">Home</a></td><td 
align="right" valign="top" width="40%">&#160;1.12.&#160;Active-Passive 
Messaging Clusters</td></tr></table></div></div>
-
-          <hr/>
-
-          <ul id="-apache-navigation">
-            <li><a href="http://www.apache.org/";>Apache</a></li>
-            <li><a href="http://www.apache.org/licenses/";>License</a></li>
-            <li><a 
href="http://www.apache.org/foundation/sponsorship.html";>Sponsorship</a></li>
-            <li><a 
href="http://www.apache.org/foundation/thanks.html";>Thanks!</a></li>
-            <li><a href="/security.html">Security</a></li>
-            <li><a href="http://www.apache.org/";><img id="-apache-feather" 
width="48" height="14" src="" alt="Apache"/></a></li>
-          </ul>
-
-          <p id="-legal">
-            Apache Qpid, Messaging built on AMQP; Copyright &#169; 2015
-            The Apache Software Foundation; Licensed under
-            the <a href="http://www.apache.org/licenses/LICENSE-2.0";>Apache
-            License, Version 2.0</a>; Apache Qpid, Qpid, Qpid Proton,
-            Proton, Apache, the Apache feather logo, and the Apache Qpid
-            project logo are trademarks of The Apache Software
-            Foundation; All other marks mentioned may be trademarks or
-            registered trademarks of their respective owners
-          </p>
-        </div>
-      </div>
-    </div>
-  </body>
-</html>


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

Reply via email to