This is an automated email from the ASF dual-hosted git repository.
git-site-role pushed a commit to branch asf-staging
in repository https://gitbox.apache.org/repos/asf/james-site.git
The following commit(s) were added to refs/heads/asf-staging by this push:
new 572021193 Site checkin for project Apache James: Jenkins Tools
572021193 is described below
commit 572021193267a2cf480338652d288b1d3172a60c
Author: jenkins <[email protected]>
AuthorDate: Fri Sep 23 05:51:35 2022 +0000
Site checkin for project Apache James: Jenkins Tools
---
_/css/site.css | 2 +-
_/font/roboto-latin-400.woff | Bin 0 -> 20268 bytes
_/font/roboto-latin-400.woff2 | Bin 0 -> 15736 bytes
_/font/roboto-latin-400italic.woff | Bin 0 -> 21952 bytes
_/font/roboto-latin-400italic.woff2 | Bin 0 -> 17324 bytes
_/font/roboto-latin-500.woff | Bin 0 -> 20464 bytes
_/font/roboto-latin-500.woff2 | Bin 0 -> 15872 bytes
_/font/roboto-latin-500italic.woff | Bin 0 -> 22020 bytes
_/font/roboto-latin-500italic.woff2 | Bin 0 -> 17316 bytes
_/font/roboto-mono-latin-400.woff | Bin 0 -> 19972 bytes
_/font/roboto-mono-latin-400.woff2 | Bin 0 -> 16328 bytes
_/font/roboto-mono-latin-500.woff | Bin 0 -> 20040 bytes
_/font/roboto-mono-latin-500.woff2 | Bin 0 -> 16380 bytes
.../3.7.0/configure/blobstore.html | 6 +
.../3.7.0/operate/db-benchmark.html | 1034 ++++++++++++++++++++
sitemap-james-distributed-app.xml | 132 +--
sitemap-james-project.xml | 286 +++---
sitemap-james-site.xml | 4 +-
18 files changed, 1252 insertions(+), 212 deletions(-)
diff --git a/_/css/site.css b/_/css/site.css
index ae4e59a8f..17398533e 100644
--- a/_/css/site.css
+++ b/_/css/site.css
@@ -1,3 +1,3 @@
-@font-face{font-family:Roboto;font-style:normal;font-weight:400;src:url(../font/roboto-latin-400-normal.woff2)
format("woff2"),url(../font/roboto-latin-400-normal.woff)
format("woff");unicode-range:U+00??,U+0131,U+0152-0153,U+02bb-02bc,U+02c6,U+02da,U+02dc,U+2000-206f,U+2074,U+20ac,U+2122,U+2191,U+2193,U+2212,U+2215,U+feff,U+fffd}@font-face{font-family:Roboto;font-style:italic;font-weight:400;src:url(../font/roboto-latin-400-italic.woff2)
format("woff2"),url(../font/roboto-latin-400-ital [...]
+@font-face{font-family:Roboto;font-style:normal;font-weight:400;src:url(../font/roboto-latin-400-normal.woff2)
format("woff2"),url(../font/roboto-latin-400-normal.woff)
format("woff");unicode-range:U+00??,U+0131,U+0152-0153,U+02bb-02bc,U+02c6,U+02da,U+02dc,U+2000-206f,U+2074,U+20ac,U+2122,U+2191,U+2193,U+2212,U+2215,U+feff,U+fffd}@font-face{font-family:Roboto;font-style:italic;font-weight:400;src:url(../font/roboto-latin-400-italic.woff2)
format("woff2"),url(../font/roboto-latin-400-ital [...]
/*! Adapted from the GitHub style by Vasily Polovnyov <[email protected]>
*/.hljs-comment,.hljs-quote{color:#998;font-style:italic}.hljs-keyword,.hljs-selector-tag,.hljs-subst{color:#333;font-weight:500}.hljs-literal,.hljs-number,.hljs-tag
.hljs-attr,.hljs-template-variable,.hljs-variable{color:teal}.hljs-doctag,.hljs-string{color:#d14}.hljs-section,.hljs-selector-id,.hljs-title{color:#900;font-weight:500}.hljs-subst{font-weight:400}.hljs-class
.hljs-title,.hljs-type{color:#458;font-wei [...]
\ No newline at end of file
diff --git a/_/font/roboto-latin-400.woff b/_/font/roboto-latin-400.woff
new file mode 100644
index 000000000..69c882540
Binary files /dev/null and b/_/font/roboto-latin-400.woff differ
diff --git a/_/font/roboto-latin-400.woff2 b/_/font/roboto-latin-400.woff2
new file mode 100644
index 000000000..1a5370151
Binary files /dev/null and b/_/font/roboto-latin-400.woff2 differ
diff --git a/_/font/roboto-latin-400italic.woff
b/_/font/roboto-latin-400italic.woff
new file mode 100644
index 000000000..b940dbcb7
Binary files /dev/null and b/_/font/roboto-latin-400italic.woff differ
diff --git a/_/font/roboto-latin-400italic.woff2
b/_/font/roboto-latin-400italic.woff2
new file mode 100644
index 000000000..2741d4f08
Binary files /dev/null and b/_/font/roboto-latin-400italic.woff2 differ
diff --git a/_/font/roboto-latin-500.woff b/_/font/roboto-latin-500.woff
new file mode 100644
index 000000000..869925869
Binary files /dev/null and b/_/font/roboto-latin-500.woff differ
diff --git a/_/font/roboto-latin-500.woff2 b/_/font/roboto-latin-500.woff2
new file mode 100644
index 000000000..6362d7f64
Binary files /dev/null and b/_/font/roboto-latin-500.woff2 differ
diff --git a/_/font/roboto-latin-500italic.woff
b/_/font/roboto-latin-500italic.woff
new file mode 100644
index 000000000..b794d20de
Binary files /dev/null and b/_/font/roboto-latin-500italic.woff differ
diff --git a/_/font/roboto-latin-500italic.woff2
b/_/font/roboto-latin-500italic.woff2
new file mode 100644
index 000000000..0ff2f813d
Binary files /dev/null and b/_/font/roboto-latin-500italic.woff2 differ
diff --git a/_/font/roboto-mono-latin-400.woff
b/_/font/roboto-mono-latin-400.woff
new file mode 100644
index 000000000..c41382c27
Binary files /dev/null and b/_/font/roboto-mono-latin-400.woff differ
diff --git a/_/font/roboto-mono-latin-400.woff2
b/_/font/roboto-mono-latin-400.woff2
new file mode 100644
index 000000000..53d4b505c
Binary files /dev/null and b/_/font/roboto-mono-latin-400.woff2 differ
diff --git a/_/font/roboto-mono-latin-500.woff
b/_/font/roboto-mono-latin-500.woff
new file mode 100644
index 000000000..ba8ff09b3
Binary files /dev/null and b/_/font/roboto-mono-latin-500.woff differ
diff --git a/_/font/roboto-mono-latin-500.woff2
b/_/font/roboto-mono-latin-500.woff2
new file mode 100644
index 000000000..ec09ab18f
Binary files /dev/null and b/_/font/roboto-mono-latin-500.woff2 differ
diff --git a/james-distributed-app/3.7.0/configure/blobstore.html
b/james-distributed-app/3.7.0/configure/blobstore.html
index bea5c7ac4..b095f24b9 100644
--- a/james-distributed-app/3.7.0/configure/blobstore.html
+++ b/james-distributed-app/3.7.0/configure/blobstore.html
@@ -633,6 +633,12 @@ Maximum size of stored objects expressed in bytes.</p></td>
<td class="tableblock halign-left valign-top"><p
class="tableblock">objectstorage.s3.connection.timeout</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">optional:
HTTP connection timeout. duration, default value being second. Leaving it empty
relies on S3 driver defaults.</p></td>
</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">objectstorage.s3.in.read.limit</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">optional:
Object read in memory will be rejected if they exceed the size limit exposed
here. Size, exemple <code>100M</code>.
+Supported units: K, M, G, defaults to B if no unit is specified. If
unspecified, big object won’t be prevented
+from being loaded in memory. This settings complements protocol
limits.</p></td>
+</tr>
</tbody>
</table>
</div>
diff --git a/james-distributed-app/3.7.0/operate/db-benchmark.html
b/james-distributed-app/3.7.0/operate/db-benchmark.html
new file mode 100644
index 000000000..c634a7e46
--- /dev/null
+++ b/james-distributed-app/3.7.0/operate/db-benchmark.html
@@ -0,0 +1,1034 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width,initial-scale=1">
+ <title>Distributed James Server — Database benchmarks ::
Apache James</title>
+ <meta name="generator" content="Antora 2.3.4">
+ <link rel="stylesheet" href="../../../_/css/site.css">
+ <script>var uiRootPath = '../../../_'</script>
+ </head>
+ <body class="article">
+<header class="header">
+ <nav class="navbar">
+ <div class="navbar-brand">
+ <a class="navbar-item" href="https://james.apache.org"><img
src="/_/img/james.svg" alt="james logo"> Apache James</a>
+ <button class="navbar-burger" data-target="topbar-nav">
+ <span></span>
+ <span></span>
+ <span></span>
+ </button>
+ </div>
+ <div id="topbar-nav" class="navbar-menu">
+ <div class="navbar-end">
+ <a class="navbar-item" href="#">Home</a>
+ <div class="navbar-item has-dropdown is-hoverable">
+ <a class="navbar-link" href="#">Products</a>
+ <div class="navbar-dropdown">
+ <div class="navbar-item"><strong>James server</strong></div>
+ <a class="navbar-item"
href="https://github.com/apache/james-project">Repository</a>
+ <a class="navbar-item"
href="https://issues.apache.org/jira/projects/JAMES/issues">Issue Tracker</a>
+ <hr class="navbar-divider">
+ <a class="navbar-item"
href="https://james.apache.org/mime4j/index.html">Mime4J</a>
+ <a class="navbar-item"
href="https://james.apache.org/jsieve/index.html">jSieve</a>
+ <a class="navbar-item"
href="https://james.apache.org/jspf/index.html">jSPF</a>
+ <a class="navbar-item"
href="https://james.apache.org/jdkim/index.html">jDKIM</a>
+ <a class="navbar-item"
href="https://james.apache.org/hupa/index.html">HUPA</a>
+ </div>
+ </div>
+ <div class="navbar-item has-dropdown is-hoverable">
+ <a class="navbar-link" href="#">Community</a>
+ <div class="navbar-dropdown">
+ <!-- Not ideal but dropping the version in the href requires
tweaking james-projet docs module first -->
+ <a class="navbar-item"
href="/james-project/3.6.0/community/mailing-lists.html">Mailing lists</a>
+ <a class="navbar-item"
href="https://gitter.im/apache/james-project"><svg version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
viewBox="0 0 32 32" class="logo-gitter-sign" data-v-44ebcb1a=""><rect x="15"
y="5" width="2" height="10"></rect> <rect x="10" y="5" width="2"
height="20"></rect> <rect x="5" y="5" width="2" height="20"></rect> <rect
width="2" height="15"></rect></svg> Gitter</a>
+ <a class="navbar-item" href="https://twitter.com/ApacheJames">
+ <span class="icon">
+ <svg aria-hidden="true" data-icon="twitter" role="img"
xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
+ <path fill="#57aaee" d="M459.37 151.716c.325 4.548.325
9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452
0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0
94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974
12.995 1.624 19.818 1.624 9.421 0 18.843-1.3
27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797
30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492
5.1 [...]
+ </svg>
+ </span> Twitter
+ </a>
+ <a class="navbar-item" href="#"> <svg class="octicon
octicon-mark-github v-align-middle" viewBox="0 0 16 16" version="1.1"
aria-hidden="true"><path fill-rule="evenodd" d="M8 0C3.58 0 0 3.58 0 8c0 3.54
2.29 6.53 5.47 7.59.4.07.55-.17.55-.38
0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01
1.08.58 1.23.82.72 1.21 1.87.87
2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95
0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 [...]
+ </div>
+ </div>
+<!-- <div class="navbar-item">
+ <span class="control">
+ <a class="button is-primary" href="#">Download</a>
+ </span>
+ </div> -->
+ </div>
+ </div>
+ </nav>
+</header>
+<div class="body">
+<div class="nav-container" data-component="james-distributed-app"
data-version="3.7.0">
+ <aside class="nav">
+ <div class="panels">
+<div class="nav-panel-menu is-active" data-panel="menu">
+ <nav class="nav-menu">
+ <h3 class="title"><a href="../index.html">Apache James Distributed
Server</a></h3>
+<ul class="nav-list">
+ <li class="nav-item" data-depth="0">
+<ul class="nav-list">
+ <li class="nav-item" data-depth="1">
+ <button class="nav-item-toggle"></button>
+ <a class="nav-link" href="../index.html">Distributed James Application</a>
+<ul class="nav-list">
+ <li class="nav-item" data-depth="2">
+ <a class="nav-link" href="../objectives.html">Objectives and motivation</a>
+ </li>
+ <li class="nav-item" data-depth="2">
+ <button class="nav-item-toggle"></button>
+ <a class="nav-link" href="../architecture/index.html">Architecture</a>
+<ul class="nav-list">
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link"
href="../architecture/implemented-standards.html">Implemented standards</a>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link"
href="../architecture/consistency-model.html">Consistency Model</a>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link"
href="../architecture/specialized-instances.html">Specialized instances</a>
+ </li>
+</ul>
+ </li>
+ <li class="nav-item" data-depth="2">
+ <button class="nav-item-toggle"></button>
+ <a class="nav-link" href="../run/index.html">Run</a>
+<ul class="nav-list">
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link" href="../run/run-java.html">Run with Java</a>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link" href="../run/run-docker.html">Run with Docker</a>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <button class="nav-item-toggle"></button>
+ <a class="nav-link" href="../run/run-kubernetes.html">Run with
Kubernetes</a>
+<ul class="nav-list">
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../run/k8s-checklist.html">Deployment
Checklist</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../run/k8s-logsMetrics.html">Logs &
Metrics</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../run/k8s-values.html">values.yaml</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../run/k8s-secrets.html">secrets.yaml</a>
+ </li>
+</ul>
+ </li>
+</ul>
+ </li>
+ <li class="nav-item" data-depth="2">
+ <button class="nav-item-toggle"></button>
+ <a class="nav-link" href="../configure/index.html">Configuration</a>
+<ul class="nav-list">
+ <li class="nav-item" data-depth="3">
+ <button class="nav-item-toggle"></button>
+ <span class="nav-text">Protocols</span>
+<ul class="nav-list">
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/imap.html">imapserver.xml</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/jmap.html">jmap.properties</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/jmx.html">jmx.properties</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/smtp.html">smtpserver.xml &
lmtpserver.xml</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/smtp-hooks.html">Packaged SMTP
hooks</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/pop3.html">pop3server.xml</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link"
href="../configure/webadmin.html">webadmin.properties</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/ssl.html">SSL & TLS</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/sieve.html">Sieve &
ManageSieve</a>
+ </li>
+</ul>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <button class="nav-item-toggle"></button>
+ <span class="nav-text">Storage dependencies</span>
+<ul class="nav-list">
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link"
href="../configure/blobstore.html">blobstore.properties</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link"
href="../configure/cassandra.html">cassandra.properties</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link"
href="../configure/elasticsearch.html">elasticsearch.properties</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link"
href="../configure/rabbitmq.html">rabbitmq.properties</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/redis.html">redis.properties</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/tika.html">tika.properties</a>
+ </li>
+</ul>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <button class="nav-item-toggle"></button>
+ <span class="nav-text">Core components</span>
+<ul class="nav-list">
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link"
href="../configure/batchsizes.html">batchsizes.properties</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/dns.html">dnsservice.xml</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/domainlist.html">domainlist.xml</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link"
href="../configure/healthcheck.html">healthcheck.properties</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link"
href="../configure/mailetcontainer.html">mailetcontainer.xml</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/mailets.html">Packaged Mailets</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/matchers.html">Packaged Matchers</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link"
href="../configure/mailrepositorystore.html">mailrepositorystore.xml</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link"
href="../configure/recipientrewritetable.html">recipientrewritetable.xml</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link"
href="../configure/usersrepository.html">usersrepository.xml</a>
+ </li>
+</ul>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <button class="nav-item-toggle"></button>
+ <span class="nav-text">Extensions</span>
+<ul class="nav-list">
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link"
href="../configure/vault.html">deletedMessageVault.properties</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link"
href="../configure/extensions.html">extensions.properties</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/listeners.html">listeners.xml</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/spam.html">Anti-Spam setup</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link"
href="../configure/remote-delivery-error-handling.html">About RemoteDelivery
error handling</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/collecting-contacts.html">Contact
collection</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/collecting-events.html">Event
collection</a>
+ </li>
+ <li class="nav-item" data-depth="4">
+ <a class="nav-link" href="../configure/dsn.html">ESMTP DSN support</a>
+ </li>
+</ul>
+ </li>
+</ul>
+ </li>
+ <li class="nav-item" data-depth="2">
+ <button class="nav-item-toggle"></button>
+ <a class="nav-link" href="index.html">Operate</a>
+<ul class="nav-list">
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link" href="guide.html">Operator guide</a>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link" href="logging.html">Logging</a>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link" href="webadmin.html">WebAdmin REST administration
API</a>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link" href="metrics.html">Metrics</a>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link" href="migrating.html">Migrating existing data</a>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link" href="cli.html">Command Line Interface</a>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link" href="cassandra-migration.html">Cassandra migration</a>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link" href="security.html">Security checklist</a>
+ </li>
+ <li class="nav-item is-current-page" data-depth="3">
+ <a class="nav-link" href="db-benchmark.html">Database benchmarks</a>
+ </li>
+</ul>
+ </li>
+ <li class="nav-item" data-depth="2">
+ <button class="nav-item-toggle"></button>
+ <a class="nav-link" href="../extending/index.html">Extending server
behavior</a>
+<ul class="nav-list">
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link" href="../extending/mail-processing.html">Custom mail
processing components</a>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link" href="../extending/mailbox-listeners.html">Custom
Mailbox Listeners</a>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link" href="../extending/smtp-hooks.html">Custom SMTP
hooks</a>
+ </li>
+ <li class="nav-item" data-depth="3">
+ <a class="nav-link" href="../extending/webadmin-routes.html">Custom
WebAdmin routes</a>
+ </li>
+</ul>
+ </li>
+</ul>
+ </li>
+</ul>
+ </li>
+</ul>
+ </nav>
+</div>
+<div class="nav-panel-explore" data-panel="explore">
+ <div class="context">
+ <span class="title">Apache James Distributed Server</span>
+ <span class="version">3.7.0 SNAPSHOT</span>
+ </div>
+ <ul class="components">
+ <li class="component is-current">
+ <a class="title" href="../index.html">Apache James Distributed Server</a>
+ <ul class="versions">
+ <li class="version is-current is-latest">
+ <a href="../index.html">3.7.0 SNAPSHOT</a>
+ </li>
+ </ul>
+ </li>
+ <li class="component">
+ <a class="title" href="../../../james-project/3.7.0/index.html">Apache
James Server</a>
+ <ul class="versions">
+ <li class="version is-latest">
+ <a href="../../../james-project/3.7.0/index.html">3.7.0 SNAPSHOT</a>
+ </li>
+ <li class="version">
+ <a href="../../../james-project/3.6.0/index.html">3.6.0 Snapshot</a>
+ </li>
+ </ul>
+ </li>
+ <li class="component">
+ <a class="title" href="../../../james-site/latest/index.html">Apache
James Site</a>
+ <ul class="versions">
+ <li class="version is-latest">
+ <a href="../../../james-site/latest/index.html">latest</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+</div>
+ </div>
+ </aside>
+</div>
+<main class="article">
+<div class="toolbar" role="navigation">
+<button class="nav-toggle"></button>
+ <a href="../../../james-site/latest/homepage.html" class="home-link"></a>
+<nav class="breadcrumbs" aria-label="breadcrumbs">
+ <ul>
+ <li><a href="../index.html">Apache James Distributed Server</a></li>
+ <li><a href="../index.html">Distributed James Application</a></li>
+ <li><a href="index.html">Operate</a></li>
+ <li><a href="db-benchmark.html">Database benchmarks</a></li>
+ </ul>
+</nav>
+ <div class="edit-this-page"><a
href="https://github.com/apache/james-project/blob/master/server/apps/distributed-app/docs/modules/ROOT/pages/operate/db-benchmark.adoc">Edit
this Page</a></div>
+ </div>
+ <div class="content">
+<aside class="toc sidebar" data-title="Contents" data-levels="2">
+ <div class="toc-menu"></div>
+</aside>
+<article class="doc">
+<h1 class="page">Distributed James Server — Database
benchmarks</h1>
+<div id="preamble">
+<div class="sectionbody">
+<div class="paragraph">
+<p>This document provides basic performance of Distributed James' databases,
benchmark methodologies as a basis for a James administrator who
+can test and evaluate if his Distributed James databases are performing
well.</p>
+</div>
+<div class="paragraph">
+<p>It includes:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>A sample deployment topology</p>
+</li>
+<li>
+<p>Propose benchmark methodology and base performance for each database. This
aims to help operators to quickly identify
+performance issues and compliance of their databases.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_sample_deployment_topology"><a class="anchor"
href="#_sample_deployment_topology"></a>Sample deployment topology</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>We deploy a sample topology of Distributed James with these following
databases:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Apache Cassandra 4 as main database</p>
+</li>
+<li>
+<p>OpenDistro 1.13.1 as search engine</p>
+</li>
+<li>
+<p>RabbitMQ 3.8.17 as message queue</p>
+</li>
+<li>
+<p>OVH Swift S3 as an object storage</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>With the above system, our email service operates stably with valuable
performance.
+For a more details, it can handle a load throughput up to about 1000 JMAP
requests per second with 99th percentile latency is 400ms.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_benchmark_methodologies_and_base_performances"><a class="anchor"
href="#_benchmark_methodologies_and_base_performances"></a>Benchmark
methodologies and base performances</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>We are willing to share the benchmark methodologies and the result to you
as a reference to evaluate your Distributed James' performance.
+Other evaluation methods are welcome, as long as your databases exhibit
similar or even better performance than ours.
+It is up to your business needs. If your databases shows results that fall far
from our baseline performance, there’s a good chance that
+there are problems with your system, and you need to check it out
thoroughly.</p>
+</div>
+<div class="sect2">
+<h3 id="_benchmark_cassandra"><a class="anchor"
href="#_benchmark_cassandra"></a>Benchmark Cassandra</h3>
+<div class="sect3">
+<h4 id="_benchmark_methodology"><a class="anchor"
href="#_benchmark_methodology"></a>Benchmark methodology</h4>
+<div class="sect4">
+<h5 id="_benchmark_tool"><a class="anchor"
href="#_benchmark_tool"></a>Benchmark tool</h5>
+<div class="paragraph">
+<p>We use <a
href="https://cassandra.apache.org/doc/latest/cassandra/tools/cassandra_stress.html">cassandra-stress
tool</a> - an official
+tool of Cassandra for stress loading tests.</p>
+</div>
+<div class="paragraph">
+<p>The cassandra-stress tool is a Java-based stress testing utility for basic
benchmarking and load testing a Cassandra cluster.
+Data modeling choices can greatly affect application performance. Significant
load testing over several trials is the best method for discovering issues with
a particular data model. The cassandra-stress tool is an effective tool for
populating a cluster and stress testing CQL tables and queries. Use
cassandra-stress to:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Quickly determine how a schema performs.</p>
+</li>
+<li>
+<p>Understand how your database scales.</p>
+</li>
+<li>
+<p>Optimize your data model and settings.</p>
+</li>
+<li>
+<p>Determine production capacity.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>There are several operation types:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>write-only, read-only, and mixed workloads of standard data</p>
+</li>
+<li>
+<p>write-only and read-only workloads for counter columns</p>
+</li>
+<li>
+<p>user configured workloads, running custom queries on custom schemas</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect4">
+<h5 id="_how_to_benchmark"><a class="anchor" href="#_how_to_benchmark"></a>How
to benchmark</h5>
+<div class="paragraph">
+<p>Here we are using a simple case to test and compare Cassandra performance
between different setup environments.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-yaml hljs"
data-lang="yaml">keyspace: stresscql
+
+keyspace_definition: |
+ CREATE KEYSPACE stresscql WITH replication = {'class': 'SimpleStrategy',
'replication_factor': 3};
+
+table: mixed_workload
+
+table_definition: |
+ CREATE TABLE mixed_workload (
+ key uuid PRIMARY KEY,
+ a blob,
+ b blob
+ ) WITH COMPACT STORAGE
+
+columnspec:
+ - name: a
+ size: uniform(1..10000)
+ - name: b
+ size: uniform(1..100000)
+
+insert:
+ partitions: fixed(1)
+
+queries:
+ read:
+ cql: select * from mixed_workload where key = ?
+ fields: samerow</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Create the yaml file as above and copy to a Cassandra node.</p>
+</div>
+<div class="paragraph">
+<p>Insert some sample data:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-bash hljs"
data-lang="bash">cassandra-stress user profile=mixed_workload.yml n=100000
"ops(insert=1)" cl=ONE -mode native cql3 user=<user>
password=<password> -node <IP> -rate threads=8 -graph
file=./graph_insert.xml title=Benchmark revision=insert_ONE</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Read intensive scenario:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-bash hljs"
data-lang="bash">cassandra-stress user profile=mixed_workload.yml n=100000
"ops(insert=1,read=4)" cl=ONE -mode native cql3 user=<user>
password=<password> -node <IP> -rate threads=8 -graph
file=./graph_mixed.xml title=Benchmark revision=mixed_ONE</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>In there:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>n=100000: The number of insert batches, not number of individual insert
operations.</p>
+</li>
+<li>
+<p>rate threads=8: The number of concurrent threads. If not specified it will
start with 4 threads and increase until server reaches a limit.</p>
+</li>
+<li>
+<p>ops(insert=1,read=4): This will execute insert and read queries in the
ratio 1:4.</p>
+</li>
+<li>
+<p>graph: Export results to graph in html format.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_sample_benchmark_result"><a class="anchor"
href="#_sample_benchmark_result"></a>Sample benchmark result</h4>
+<div class="imageblock">
+<div class="content">
+<img src="../_images/cassandra_stress_test_result_1.png" alt="cassandra stress
test result 1">
+</div>
+</div>
+<div class="imageblock">
+<div class="content">
+<img src="../_images/cassandra_stress_test_result_2.png" alt="cassandra stress
test result 2">
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_references"><a class="anchor" href="#_references"></a>References</h4>
+<div class="paragraph">
+<p><a
href="https://www.datastax.com/blog/improved-cassandra-21-stress-tool-benchmark-any-schema-part-1">Datastax
- Cassandra stress tool</a></p>
+</div>
+<div class="paragraph">
+<p><a
href="https://www.instaclustr.com/deep-diving-cassandra-stress-part-3-using-yaml-profiles/">Deep
Diving cassandra-stress – Part 3 (Using YAML Profiles)</a></p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_benchmark_elasticsearch"><a class="anchor"
href="#_benchmark_elasticsearch"></a>Benchmark Elasticsearch</h3>
+<div class="sect3">
+<h4 id="_benchmark_methodology_2"><a class="anchor"
href="#_benchmark_methodology_2"></a>Benchmark methodology</h4>
+<div class="sect4">
+<h5 id="_benchmark_tool_2"><a class="anchor"
href="#_benchmark_tool_2"></a>Benchmark tool</h5>
+<div class="paragraph">
+<p>We use <a href="https://github.com/elastic/rally">EsRally</a> - an official
Elasticsearch benchmarking tool. EsRally provides the following features:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Automatically create Elasticsearch clusters, stress tests them, and delete
them.</p>
+</li>
+<li>
+<p>Manage stress testing data and solutions by Elasticsearch version.</p>
+</li>
+<li>
+<p>Present stress testing data in a comprehensive way, allowing you to compare
and analyze the data of different stress tests and store the data on a
particular Elasticsearch instance for secondary analysis.</p>
+</li>
+<li>
+<p>Collect Java Virtual Machine (JVM) details, such as memory and garbage
collection (GC) data, to locate performance problems.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>You can have a look at <a
href="https://elasticsearch-benchmarks.elastic.co/"
class="bare">https://elasticsearch-benchmarks.elastic.co/</a> where
Elasticsearch also officially uses esrally to test its performance and
publishes the results in real-time.</p>
+</div>
+</div>
+<div class="sect4">
+<h5 id="_how_to_benchmark_2"><a class="anchor"
href="#_how_to_benchmark_2"></a>How to benchmark</h5>
+<div class="paragraph">
+<p>Please follow <a
href="https://esrally.readthedocs.io/en/latest/quickstart.html?spm=a2c65.11461447.0.0.e26a498c3KJZNe">Esrally
quickstart documentation</a>
+to set up it first.</p>
+</div>
+<div class="paragraph">
+<p>Let’s see which tracks (simulation profiles) that EsRally provides:
<code><code>esrally list tracks</code></code>.
+For our James use case, we are interested in <code><code>pmc</code></code>
track: <code><code>Full-text benchmark with academic papers from
PMC</code></code>.</p>
+</div>
+<div class="paragraph">
+<p>Run the below script to benchmark against your Elasticsearch cluster:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-bash hljs"
data-lang="bash">esrally race --pipeline=benchmark-only --track=[track-name]
--target-host=[ip_node1:port_node1],[ip_node2:port_node2],[ip_node3:port_node3]
--client-options="use_ssl:false,verify_certs:false,basic_auth_user:'[user]',basic_auth_password:'[password]'"</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>In there:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>--pipeline=benchmark-only: benchmark against a running cluster</p>
+</li>
+<li>
+<p>track-name: track you want to benchmark</p>
+</li>
+<li>
+<p>ip:port: Elasticsearch Node' socket</p>
+</li>
+<li>
+<p>--client-options: change to your Elasticsearch authentication
credentials</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_sample_benchmark_result_2"><a class="anchor"
href="#_sample_benchmark_result_2"></a>Sample benchmark result</h4>
+<div class="sect4">
+<h5 id="_pmc_track"><a class="anchor" href="#_pmc_track"></a>PMC track</h5>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code>|
Metric | Task | Value |
Unit |
+|---------------------------------------------------------------:|------------------------------:|------------:|--------:|
+| Min Throughput |
index-append | 734.63 | docs/s |
+| Mean Throughput |
index-append | 763.16 | docs/s |
+| Median Throughput |
index-append | 746.5 | docs/s |
+| Max Throughput |
index-append | 833.51 | docs/s |
+| 50th percentile latency |
index-append | 4738.57 | ms |
+| 90th percentile latency |
index-append | 8129.1 | ms |
+| 99th percentile latency |
index-append | 11734.5 | ms |
+| 100th percentile latency |
index-append | 14662.9 | ms |
+| 50th percentile service time |
index-append | 4738.57 | ms |
+| 90th percentile service time |
index-append | 8129.1 | ms |
+| 99th percentile service time |
index-append | 11734.5 | ms |
+| 100th percentile service time |
index-append | 14662.9 | ms |
+| error rate |
index-append | 0 | % |
+| Min Throughput |
default | 19.94 | ops/s |
+| Mean Throughput |
default | 19.95 | ops/s |
+| Median Throughput |
default | 19.95 | ops/s |
+| Max Throughput |
default | 19.96 | ops/s |
+| 50th percentile latency |
default | 23.1322 | ms |
+| 90th percentile latency |
default | 25.4129 | ms |
+| 99th percentile latency |
default | 29.1382 | ms |
+| 100th percentile latency |
default | 29.4762 | ms |
+| 50th percentile service time |
default | 21.4895 | ms |
+| 90th percentile service time |
default | 23.589 | ms |
+| 99th percentile service time |
default | 26.6134 | ms |
+| 100th percentile service time |
default | 27.9068 | ms |
+| error rate |
default | 0 | % |
+| Min Throughput |
term | 19.93 | ops/s |
+| Mean Throughput |
term | 19.94 | ops/s |
+| Median Throughput |
term | 19.94 | ops/s |
+| Max Throughput |
term | 19.95 | ops/s |
+| 50th percentile latency |
term | 31.0684 | ms |
+| 90th percentile latency |
term | 34.1419 | ms |
+| 99th percentile latency |
term | 74.7904 | ms |
+| 100th percentile latency |
term | 103.663 | ms |
+| 50th percentile service time |
term | 29.6775 | ms |
+| 90th percentile service time |
term | 32.4288 | ms |
+| 99th percentile service time |
term | 36.013 | ms |
+| 100th percentile service time |
term | 102.193 | ms |
+| error rate |
term | 0 | % |
+| Min Throughput |
phrase | 19.94 | ops/s |
+| Mean Throughput |
phrase | 19.95 | ops/s |
+| Median Throughput |
phrase | 19.95 | ops/s |
+| Max Throughput |
phrase | 19.95 | ops/s |
+| 50th percentile latency |
phrase | 23.0255 | ms |
+| 90th percentile latency |
phrase | 26.1607 | ms |
+| 99th percentile latency |
phrase | 31.2094 | ms |
+| 100th percentile latency |
phrase | 45.5012 | ms |
+| 50th percentile service time |
phrase | 21.5109 | ms |
+| 90th percentile service time |
phrase | 24.4144 | ms |
+| 99th percentile service time |
phrase | 26.1865 | ms |
+| 100th percentile service time |
phrase | 43.5122 | ms |
+| error rate |
phrase | 0 | % |
+
+----------------------------------
+[INFO] SUCCESS (took 1772 seconds)
+----------------------------------</code></pre>
+</div>
+</div>
+</div>
+<div class="sect4">
+<h5 id="_pmc_custom_track"><a class="anchor" href="#_pmc_custom_track"></a>PMC
custom track</h5>
+<div class="paragraph">
+<p>We customized the PMC track by increasing search throughput target to
figure out our Elasticsearch cluster limit.</p>
+</div>
+<div class="paragraph">
+<p>The result is that with 25-30 request/s we have a 99th percentile latency
of 1s.</p>
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_references_2"><a class="anchor"
href="#_references_2"></a>References</h4>
+<div class="paragraph">
+<p><a
href="https://www.alibabacloud.com/blog/esrally-official-stress-testing-tool-for-elasticsearch_597102">esrally:
Official Stress Testing Tool for Elasticsearch</a></p>
+</div>
+<div class="paragraph">
+<p><a
href="https://esrally.readthedocs.io/en/latest/adding_tracks.html">Create a
custom EsRally track</a></p>
+</div>
+<div class="paragraph">
+<p><a
href="https://discuss.elastic.co/t/why-the-percentile-latency-is-several-times-more-than-service-time/69630">Why
the percentile latency is several times more than service time</a></p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_benchmark_rabbitmq"><a class="anchor"
href="#_benchmark_rabbitmq"></a>Benchmark RabbitMQ</h3>
+<div class="sect3">
+<h4 id="_benchmark_methodology_3"><a class="anchor"
href="#_benchmark_methodology_3"></a>Benchmark methodology</h4>
+<div class="sect4">
+<h5 id="_benchmark_tool_3"><a class="anchor"
href="#_benchmark_tool_3"></a>Benchmark tool</h5>
+<div class="paragraph">
+<p>We use <a
href="https://github.com/rabbitmq/rabbitmq-perf-test">rabbitmq-perf-test</a>
tool.</p>
+</div>
+</div>
+<div class="sect4">
+<h5 id="_how_to_benchmark_3"><a class="anchor"
href="#_how_to_benchmark_3"></a>How to benchmark</h5>
+<div class="paragraph">
+<p>Using PerfTestMulti for more friendly:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Provide input scenario from a single file</p>
+</li>
+<li>
+<p>Provide output result as a single file. Can be visualized result file by
the chart (graph WebUI)</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>Run a command like below:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-bash hljs"
data-lang="bash">bin/runjava com.rabbitmq.perf.PerfTestMulti [scenario-file]
[result-file]</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>In order to visualize result, coping [result-file] to
<code><code>/html/examples/[result-file]</code></code>.
+Start webserver to view graph by the command:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-bash hljs"
data-lang="bash">bin/runjava com.rabbitmq.perf.WebServer</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Then browse: <a href="http://localhost:8080/examples/sample.html"
class="bare">http://localhost:8080/examples/sample.html</a></p>
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_sample_benchmark_result_3"><a class="anchor"
href="#_sample_benchmark_result_3"></a>Sample benchmark result</h4>
+<div class="ulist">
+<ul>
+<li>
+<p>Scenario file:</p>
+</li>
+</ul>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code>[{'name': 'consume', 'type': 'simple',
+'uri': 'amqp://james:eeN7Auquaeng@localhost:5677',
+'params':
+ [{'time-limit': 30, 'producer-count': 2, 'consumer-count':
4}]}]</code></pre>
+</div>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Result file:</p>
+</li>
+</ul>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-json hljs"
data-lang="json">{
+ "consume": {
+ "send-bytes-rate": 0,
+ "recv-msg-rate": 4330.225080385852,
+ "avg-latency": 18975254,
+ "send-msg-rate": 455161.3183279743,
+ "recv-bytes-rate": 0,
+ "samples": [{
+ "elapsed": 15086,
+ "send-bytes-rate": 0,
+ "recv-msg-rate": 0,
+ "send-msg-rate": 0.06628662335940608,
+ "recv-bytes-rate": 0
+ },
+ {
+ "elapsed": 16086,
+ "send-bytes-rate": 0,
+ "recv-msg-rate": 1579,
+ "max-latency": 928296,
+ "min-latency": 278765,
+ "avg-latency": 725508,
+ "send-msg-rate": 388994,
+ "recv-bytes-rate": 0
+ },
+ {
+ "elapsed": 48184,
+ "send-bytes-rate": 0,
+ "recv-msg-rate": 3768.4918347742555,
+ "max-latency": 32969370,
+ "min-latency": 31852685,
+ "avg-latency": 32385432,
+ "send-msg-rate": 0,
+ "recv-bytes-rate": 0
+ },
+ {
+ "elapsed": 49186,
+ "send-bytes-rate": 0,
+ "recv-msg-rate": 4416.167664670658,
+ "max-latency": 33953465,
+ "min-latency": 32854771,
+ "avg-latency": 33373113,
+ "send-msg-rate": 0,
+ "recv-bytes-rate": 0
+ }]
+ }
+}</code></pre>
+</div>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Key result points:</p>
+</li>
+</ul>
+</div>
+<table class="tableblock frame-all grid-all stretch">
+<colgroup>
+<col style="width: 33.3333%;">
+<col style="width: 33.3333%;">
+<col style="width: 33.3334%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Metrics</th>
+<th class="tableblock halign-left valign-top">Unit</th>
+<th class="tableblock halign-left valign-top">Result</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Publisher
throughput (the sending rate)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">messages /
second</p></td>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">3111</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Consumer
throughput (the receiving rate)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">messages /
second</p></td>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">4404</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_benchmark_s3_storage"><a class="anchor"
href="#_benchmark_s3_storage"></a>Benchmark S3 storage</h3>
+<div class="sect3">
+<h4 id="_benchmark_methodology_4"><a class="anchor"
href="#_benchmark_methodology_4"></a>Benchmark methodology</h4>
+<div class="sect4">
+<h5 id="_benchmark_tool_4"><a class="anchor"
href="#_benchmark_tool_4"></a>Benchmark tool</h5>
+<div class="paragraph">
+<p>We use <a href="https://github.com/dvassallo/s3-benchmark">s3-benchmark</a>
tool.</p>
+</div>
+</div>
+<div class="sect4">
+<h5 id="_how_to_benchmark_4"><a class="anchor"
href="#_how_to_benchmark_4"></a>How to benchmark</h5>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Make sure you set up appropriate S3 credentials with
<code>awscli</code>.</p>
+</li>
+<li>
+<p>If you are using a compatible S3 storage of cloud providers like OVH, you
would need to configure
+<code>awscli-plugin-endpoint</code>. E.g: <a
href="https://docs.ovh.com/au/en/storage/getting_started_with_the_swift_S3_API/">Getting
started with the OVH Swift S3 API</a></p>
+</li>
+<li>
+<p>Install <code>s3-benchmark</code> tool and run the command:</p>
+</li>
+</ol>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-bash hljs"
data-lang="bash">./s3-benchmark -endpoint=[endpoint] -region=[region]
-bucket-name=[bucket-name] -payloads-min=[payload-min]
-payloads-max=[payload-max] threads-max=[threads-max]</code></pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_sample_benchmark_result_4"><a class="anchor"
href="#_sample_benchmark_result_4"></a>Sample benchmark result</h4>
+<div class="paragraph">
+<p>We did S3 performance testing with suitable email objects sizes: 4 KB, 128
KB, 1 MB, 8 MB.</p>
+</div>
+<div class="paragraph">
+<p>Result:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-bash hljs"
data-lang="bash">--- SETUP
--------------------------------------------------------------------------------------------------------------------
+
+Uploading 4 KB objects
+ 100% |████████████████████████████████████████| [4s:0s]
+Uploading 128 KB objects
+ 100% |████████████████████████████████████████| [9s:0s]
+Uploading 1 MB objects
+ 100% |████████████████████████████████████████| [8s:0s]
+Uploading 8 MB objects
+ 100% |████████████████████████████████████████| [10s:0s]
+
+--- BENCHMARK
----------------------------------------------------------------------------------------------------------------
+
+Download performance with 4 KB objects (b2-30)
+
+-------------------------------------------------------------------------------------------------+
+ | Time to First Byte (ms) |
Time to Last Byte (ms) |
++---------+----------------+------------------------------------------------+------------------------------------------------+
+| Threads | Throughput | avg min p25 p50 p75 p90 p99 max |
avg min p25 p50 p75 p90 p99 max |
++---------+----------------+------------------------------------------------+------------------------------------------------+
+| 8 | 0.6 MB/s | 36 10 17 22 36 57 233 249 |
37 10 17 22 36 57 233 249 |
+| 9 | 0.6 MB/s | 30 10 15 21 33 45 82 234 |
30 10 15 21 33 45 83 235 |
+| 10 | 0.2 MB/s | 55 11 18 22 28 52 248 1075 |
55 11 18 22 28 52 249 1075 |
+| 11 | 0.3 MB/s | 66 11 18 23 45 233 293 683 |
67 11 19 23 45 233 293 683 |
+| 12 | 0.6 MB/s | 35 12 19 22 43 55 67 235 |
35 12 19 22 43 56 67 235 |
+| 13 | 0.2 MB/s | 68 11 19 26 58 79 279 1037 |
68 11 19 26 58 80 279 1037 |
+| 14 | 0.6 MB/s | 43 17 20 24 52 56 230 236 |
43 17 20 25 52 56 230 236 |
+| 15 | 0.2 MB/s | 69 11 16 23 50 66 274 1299 |
69 11 16 24 50 66 274 1299 |
+| 16 | 0.5 MB/s | 52 9 19 31 81 95 228 237 |
53 9 19 31 81 95 229 237 |
++---------+----------------+------------------------------------------------+------------------------------------------------+
+
+Download performance with 128 KB objects (b2-30)
+
+-------------------------------------------------------------------------------------------------+
+ | Time to First Byte (ms) |
Time to Last Byte (ms) |
++---------+----------------+------------------------------------------------+------------------------------------------------+
+| Threads | Throughput | avg min p25 p50 p75 p90 p99 max |
avg min p25 p50 p75 p90 p99 max |
++---------+----------------+------------------------------------------------+------------------------------------------------+
+| 8 | 3.3 MB/s | 71 16 22 28 39 66 232 1768 |
73 16 23 29 43 67 233 1769 |
+| 9 | 3.6 MB/s | 74 9 19 23 34 58 239 1646 |
75 10 20 24 37 59 240 1647 |
+| 10 | 2.9 MB/s | 97 16 21 24 48 89 656 2034 |
99 17 21 26 49 92 657 2035 |
+| 11 | 3.0 MB/s | 100 10 21 26 39 64 1049 2029 |
101 11 21 27 40 65 1050 2030 |
+| 12 | 3.0 MB/s | 76 12 19 24 44 56 256 2012 |
77 13 20 25 48 69 258 2013 |
+| 13 | 6.1 MB/s | 73 10 13 20 43 223 505 1026 |
74 10 15 21 43 224 506 1027 |
+| 14 | 5.5 MB/s | 81 11 15 23 51 240 666 1060 |
82 12 16 23 54 241 667 1060 |
+| 15 | 2.7 MB/s | 80 10 19 28 43 59 234 2222 |
84 11 25 34 47 60 236 2224 |
+| 16 | 18.6 MB/s | 58 10 19 26 61 224 248 266 |
61 10 22 29 65 224 249 267 |
++---------+----------------+------------------------------------------------+------------------------------------------------+
+
+Download performance with 1 MB objects (b2-30)
+
+-------------------------------------------------------------------------------------------------+
+ | Time to First Byte (ms) |
Time to Last Byte (ms) |
++---------+----------------+------------------------------------------------+------------------------------------------------+
+| Threads | Throughput | avg min p25 p50 p75 p90 p99 max |
avg min p25 p50 p75 p90 p99 max |
++---------+----------------+------------------------------------------------+------------------------------------------------+
+| 8 | 56.4 MB/s | 41 12 26 34 43 57 94 235 |
136 30 69 100 161 284 345 396 |
+| 9 | 55.2 MB/s | 53 19 32 39 50 69 238 247 |
149 26 84 117 164 245 324 655 |
+| 10 | 33.9 MB/s | 74 17 27 37 50 77 456 1060 |
177 29 97 134 205 273 484 1076 |
+| 11 | 57.3 MB/s | 56 26 35 44 57 71 251 298 |
185 40 93 129 216 329 546 871 |
+| 12 | 37.7 MB/s | 66 21 33 43 58 73 102 1024 |
202 24 81 125 205 427 839 1222 |
+| 13 | 57.6 MB/s | 59 24 35 40 58 71 275 289 |
215 40 94 181 288 393 500 674 |
+| 14 | 47.1 MB/s | 73 18 46 56 66 75 475 519 |
229 30 116 221 272 441 603 686 |
+| 15 | 58.2 MB/s | 65 11 40 51 63 75 260 294 |
243 29 132 174 265 485 831 849 |
+| 16 | 23.1 MB/s | 96 14 46 55 62 80 124 2022 |
278 31 124 187 249 634 827 2028 |
++---------+----------------+------------------------------------------------+------------------------------------------------+
+
+Download performance with 8 MB objects (b2-30)
+
+-------------------------------------------------------------------------------------------------+
+ | Time to First Byte (ms) |
Time to Last Byte (ms) |
++---------+----------------+------------------------------------------------+------------------------------------------------+
+| Threads | Throughput | avg min p25 p50 p75 p90 p99 max |
avg min p25 p50 p75 p90 p99 max |
++---------+----------------+------------------------------------------------+------------------------------------------------+
+| 8 | 58.4 MB/s | 88 35 65 79 88 96 288 307 |
1063 458 564 759 928 1151 4967 6841 |
+| 9 | 50.4 MB/s | 137 32 52 69 145 286 509 1404 |
1212 160 471 581 1720 2873 3744 4871 |
+| 10 | 58.2 MB/s | 77 46 54 66 77 98 275 285 |
1319 377 432 962 1264 3232 4266 6151 |
+| 11 | 58.4 MB/s | 97 32 63 72 80 91 323 707 |
1429 325 593 722 1648 3020 6172 6370 |
+| 12 | 58.5 MB/s | 108 26 65 81 91 261 301 519 |
1569 472 696 1101 1915 3175 4066 5110 |
+| 13 | 56.1 MB/s | 115 35 69 83 93 125 329 1092 |
1712 458 801 1165 2354 3559 3865 5945 |
+| 14 | 58.6 MB/s | 103 26 70 78 88 112 309 656 |
1807 789 999 1269 1998 3258 5201 6651 |
+| 15 | 58.3 MB/s | 113 31 55 67 79 134 276 1490 |
1947 497 1081 1756 2730 3557 3799 3974 |
+| 16 | 58.0 MB/s | 99 35 67 79 96 146 282 513 |
2091 531 882 1136 2161 6034 6686 6702 |
++---------+----------------+------------------------------------------------+------------------------------------------------+</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>We believe that the actual OVH Swift S3' throughput should be at least
about 100 MB/s. This was not fully achieved due to
+network limitations of the client machine performing the benchmark.</p>
+</div>
+</div>
+</div>
+</div>
+</div>
+</article>
+ </div>
+</main>
+</div>
+<footer class="footer">
+ <p>This page was built using the Antora default UI.</p>
+ <p>The source code for this UI is licensed under the terms of the MPL-2.0
license.</p>
+</footer>
+<script src="../../../_/js/site.js"></script>
+<script async src="../../../_/js/vendor/highlight.js"></script>
+ </body>
+</html>
\ No newline at end of file
diff --git a/sitemap-james-distributed-app.xml
b/sitemap-james-distributed-app.xml
index 4cb3eeb0c..322e2e6b2 100644
--- a/sitemap-james-distributed-app.xml
+++ b/sitemap-james-distributed-app.xml
@@ -2,266 +2,266 @@
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/architecture/consistency-model.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/architecture/implemented-standards.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/architecture/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/architecture/specialized-instances.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/benchmark/db-benchmark.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/benchmark/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/benchmark/james-benchmark.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/batchsizes.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/blobstore.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/cassandra.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/collecting-contacts.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/collecting-events.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/dns.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/domainlist.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/dsn.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/extensions.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/healthcheck.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/imap.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/jmap.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/jmx.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/jvm.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/listeners.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/mailetcontainer.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/mailets.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/mailrepositorystore.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/matchers.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/opensearch.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/pop3.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/rabbitmq.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/recipientrewritetable.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/redis.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/remote-delivery-error-handling.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/sieve.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/smtp-hooks.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/smtp.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/spam.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/ssl.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/tika.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/usersrepository.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/vault.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/configure/webadmin.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/extending/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/extending/mail-processing.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/extending/mailbox-listeners.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/extending/smtp-hooks.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/extending/webadmin-routes.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/objectives.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/operate/cassandra-migration.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/operate/cli.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/operate/guide.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/operate/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/operate/logging.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/operate/metrics.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/operate/migrating.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/operate/security.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/operate/webadmin.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/run/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/run/k8s-checklist.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/run/k8s-logsMetrics.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/run/k8s-secrets.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/run/k8s-values.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/run/run-docker.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/run/run-java.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-distributed-app/3.7.1/run/run-kubernetes.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
</urlset>
diff --git a/sitemap-james-project.xml b/sitemap-james-project.xml
index f266a0fcb..6679c3d5f 100644
--- a/sitemap-james-project.xml
+++ b/sitemap-james-project.xml
@@ -2,574 +2,574 @@
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://james.apache.org/james-project/3.7.1/community/contributing.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/community/download.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/community/guidelines.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/community/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/community/mailing-lists.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/community/release.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/community/support.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/community/website.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/configuration.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/glossary.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/mail/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/messages/imf.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/messages/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/messages/mime.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/processing/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/protocols/esmtp.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/protocols/imap.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/protocols/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/protocols/jmap.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/protocols/lmtp.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/protocols/pop.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/protocols/smtp.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/storage/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/storage/mailbox.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/storage/users.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/concepts/user/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/customization/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/development/deployment-tests.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/development/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/development/logging.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/servers/15-minute-demo.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/servers/5-minute-demo.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/servers/basic/architecture.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/servers/basic/concepts.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/servers/basic/conf/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/servers/basic/context.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/servers/basic/help.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/servers/basic/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/servers/basic/objectives.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/servers/demo.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/servers/extendable.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/servers/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/servers/run.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.7.1/servers/test.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/community/contributing.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/community/download.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/community/guidelines.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/community/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/community/mailing-lists.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/community/release.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/community/support.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/community/website.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/configuration.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/glossary.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/mail/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/messages/imf.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/messages/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/messages/mime.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/processing/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/protocols/esmtp.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/protocols/imap.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/protocols/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/protocols/jmap.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/protocols/lmtp.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/protocols/pop.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/protocols/smtp.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/storage/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/storage/mailbox.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/storage/users.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/concepts/user/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/customization/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/development/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/development/logging.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/15-minute-demo.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/5-minute-demo.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/basic/architecture.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/basic/concepts.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/basic/conf/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/basic/context.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/basic/help.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/basic/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/basic/objectives.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/demo.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/architecture/consistency-model.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/architecture/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/architecture/specialized-instances.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/batchsizes.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/blobstore.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/cassandra.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/collecting-contacts.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/collecting-events.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/dns.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/domainlist.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/dsn.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/elasticsearch.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/extensions.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/healthcheck.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/imap.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/jmap.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/jmx.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/listeners.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/mailetcontainer.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/mailets.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/mailrepositorystore.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/matchers.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/pop3.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/rabbitmq.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/recipientrewritetable.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/remote-delivery-error-handling.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/smtp-hooks.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/smtp.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/spam.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/ssl.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/tika.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/usersrepository.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/vault.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/configure/webadmin.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/extending/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/extending/mail-processing.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/extending/mailbox-listeners.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/extending/smtp-hooks.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/extending/webadmin-routes.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/objectives.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/operate/cassandra-migration.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/operate/cli.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/operate/guide.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/operate/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/operate/logging.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/operate/metrics.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/operate/migrating.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/operate/webadmin.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/run-docker.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/distributed/run.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/extendable.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/run.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-project/3.6.0/servers/test.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
</urlset>
diff --git a/sitemap-james-site.xml b/sitemap-james-site.xml
index e14695f7d..7a9334f30 100644
--- a/sitemap-james-site.xml
+++ b/sitemap-james-site.xml
@@ -2,10 +2,10 @@
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://james.apache.org/james-site/latest/homepage.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
<url>
<loc>https://james.apache.org/james-site/latest/index.html</loc>
-<lastmod>2022-09-22T12:41:29.179Z</lastmod>
+<lastmod>2022-09-23T05:50:48.792Z</lastmod>
</url>
</urlset>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]