| <?xml version="1.0"?> |
| <!-- |
| |
| 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. |
| |
| --> |
| |
| <section xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="Java-Broker-Runtime-Background-Recovery"> |
| <title>Background Recovery</title> |
| <para>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.</para> |
| <para>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.</para> |
| <para>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.</para> |
| <para>To activate the feature, set a <link linkend="Java-Broker-Management-Managing-Entities-General">context variable</link> |
| <literal>use_async_message_store_recovery</literal> at the desired Virtualhost, or at Broker or |
| higher to enable the feature broker-wide.</para> |
| <note> |
| <para>The background recovery feature does not write operational log messages to indicate its |
| progress. This means messages <link linkend="Java-Broker-Appendix-Operation-Logging-Message-MST-1004">MST-1004</link> and <link linkend="Java-Broker-Appendix-Operation-Logging-Message-MST-1005">MST-1005</link> will not |
| be seen.</para> |
| </note> |
| </section> |