<?xml version='1.0' encoding='UTF-8'?>
<para xmlns="http://docbook.org/ns/docbook" version="5.0">
  <!-- Warning: Do not edit this file. It is automatically
     generated and your changes will be overwritten.
     The tool to do so lives in openstack-doc-tools repository. -->
  <table rules="all" xml:id="config_table_zaqar_mongodb">
    <caption>Description of MongoDB configuration options</caption>
    <col width="50%"/>
    <col width="50%"/>
    <thead>
      <tr>
        <th>Configuration option = Default value</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <th colspan="2">[drivers:storage:mongodb]</th>
      </tr>
      <tr>
        <td>database = zaqar</td>
        <td>(StrOpt) Database name.</td>
      </tr>
      <tr>
        <td>max_attempts = 1000</td>
        <td>(IntOpt) Maximum number of times to retry a failed operation. Currently only used for retrying a message post.</td>
      </tr>
      <tr>
        <td>max_reconnect_attempts = 10</td>
        <td>(IntOpt) Maximum number of times to retry an operation that failed due to a primary node failover.</td>
      </tr>
      <tr>
        <td>max_retry_jitter = 0.005</td>
        <td>(FloatOpt) Maximum jitter interval, to be added to the sleep interval, in order to decrease probability that parallel requests will retry at the same instant.</td>
      </tr>
      <tr>
        <td>max_retry_sleep = 0.1</td>
        <td>(FloatOpt) Maximum sleep interval between retries (actual sleep time increases linearly according to number of attempts performed).</td>
      </tr>
      <tr>
        <td>partitions = 2</td>
        <td>(IntOpt) Number of databases across which to partition message data, in order to reduce writer lock %. DO NOT change this setting after initial deployment. It MUST remain static. Also, you should not need a large number of partitions to improve performance, esp. if deploying MongoDB on SSD storage.</td>
      </tr>
      <tr>
        <td>reconnect_sleep = 0.02</td>
        <td>(FloatOpt) Base sleep interval between attempts to reconnect after a primary node failover. The actual sleep time increases exponentially (power of 2) each time the operation is retried.</td>
      </tr>
      <tr>
        <td>ssl_ca_certs = None</td>
        <td>(StrOpt) The ca_certs file contains a set of concatenated "certification authority" certificates, which are used to validate certificates passed from the other end of the connection.</td>
      </tr>
      <tr>
        <td>ssl_cert_reqs = CERT_REQUIRED</td>
        <td>(StrOpt) Specifies whether a certificate is required from the other side of the connection, and whether it will be validated if provided. It must be one of the three values ``CERT_NONE``(certificates ignored), ``CERT_OPTIONAL``(not required, but validated if provided), or ``CERT_REQUIRED``(required and validated). If the value of this parameter is not ``CERT_NONE``, then the ``ssl_ca_cert`` parameter must point to a file of CA certificates.</td>
      </tr>
      <tr>
        <td>ssl_certfile = None</td>
        <td>(StrOpt) The certificate file used to identify the local connection against mongod.</td>
      </tr>
      <tr>
        <td>ssl_keyfile = None</td>
        <td>(StrOpt) The private keyfile used to identify the local connection against mongod. If included with the ``certifle`` then only the ``ssl_certfile`` is needed.</td>
      </tr>
      <tr>
        <td>uri = None</td>
        <td>(StrOpt) Mongodb Connection URI. If ssl connection enabled, then ``ssl_keyfile``, ``ssl_certfile``, ``ssl_cert_reqs``, ``ssl_ca_certs`` need to be set accordingly.</td>
      </tr>
    </tbody>
  </table>
</para>
