X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=Documentation%2Fpublic-inbox-index.pod;h=ff2e5486748889667667de1ef0f86d0d6f390115;hb=2ca7db34a51b858c9d7f6f7366afb9fffee86b6e;hp=610dacbe7df9b2937dad1f2bd465842209e168da;hpb=d9aad3a7988262b31ab2171f2c982daf04ac822c;p=public-inbox.git diff --git a/Documentation/public-inbox-index.pod b/Documentation/public-inbox-index.pod index 610dacbe..ff2e5486 100644 --- a/Documentation/public-inbox-index.pod +++ b/Documentation/public-inbox-index.pod @@ -4,7 +4,7 @@ public-inbox-index - create and update search indices =head1 SYNOPSIS -public-inbox-index [OPTIONS] INBOX_DIR +public-inbox-index [OPTIONS] INBOX_DIR... =head1 DESCRIPTION @@ -32,15 +32,48 @@ normal search functionality. =over +=item --jobs=JOBS, -j + +Control the number of Xapian indexing jobs in a +(L) inbox. + +C<--jobs=0> is accepted as of public-inbox 1.6.0 (PENDING) +to disable parallel indexing. + +Default: the number of existing Xapian shards + +=item --compact / -c + +Compacts the Xapian DBs after indexing. This is recommended +when using C<--reindex> to avoid running out of disk space +while indexing multiple inboxes. + +While option takes a negligible amount of time compared to +C<--reindex>, it requires temporarily duplicating the entire +contents of the Xapian DB. + +This switch may be specified twice, in which case compaction +happens both before and after indexing to minimize the temporal +footprint of the (re)indexing operation. + +Available since public-inbox 1.4.0. + =item --reindex -Forces a search engine re-index of all messages in the -repository. This can be used for in-place upgrades while +Forces a re-index of all messages in the inbox. +This can be used for in-place upgrades and bugfixes while NNTP/HTTP server processes are utilizing the index. Keep in mind this roughly doubles the size of the already-large -Xapian database. +Xapian database. Using this with C<--compact> or running +L afterwards is recommended to +release free space. -This does not touch the NNTP article number database. +public-inbox protects writes to various indices with L, +so it is safe to reindex while L, +L or L run. + +This does not touch the NNTP article number database or +affect threading. =item --prune @@ -49,6 +82,24 @@ is detected. This is intended to be used in mirrors after running L or L to ensure data is expunged from mirrors. +Available since public-inbox 1.2.0. + +=item --max-size SIZE + +Sets or overrides L on a +per-invocation basis. See L +below. + +Available since public-inbox 1.5.0. + +=item --batch-size SIZE + +Sets or overrides L on a +per-invocation basis. See L +below. + +Available in public-inbox 1.6.0 (PENDING). + =back =head1 FILES @@ -57,7 +108,46 @@ For v1 (ssoma) repositories described in L. All public-inbox-specific files are contained within the C<$GIT_DIR/public-inbox/> directory. -v2 repositories are described in L. +v2 inboxes are described in L. + +=head1 CONFIGURATION + +=over 8 + +=item publicinbox.indexMaxSize + +Prevents indexing of messages larger than the specified size +value. A single suffix modifier of C, C or C is +supported, thus the value of C<1m> to prevents indexing of +messages larger than one megabyte. + +This is useful for avoiding memory exhaustion in mirrors. +This option is only available in public-inbox 1.5 or later. + +Default: none + +=item publicinbox.indexBatchSize + +Flushes changes to the filesystem and releases locks after +indexing the given number of bytes. The default value of C<1m> +(one megabyte) is low to minimize memory use and reduce +contention with parallel invocations of L, +L, and L. + +Increase this value on powerful systems to improve throughput at +the expense of memory use. The reduction of lock granularity +may not be noticeable on fast systems. + +This option is available in public-inbox 1.6 or later. +public-inbox 1.5 and earlier used the current default, C<1m>. + +For L inboxes, this value is +multiplied by the number of Xapian shards. Thus a typical v2 +inbox with 3 shards will flush every 3 megabytes by default. + +Default: 1m (one megabyte) + +=back =head1 ENVIRONMENT @@ -73,10 +163,13 @@ The number of documents to update before committing changes to disk. This environment is handled directly by Xapian, refer to Xapian API documentation for more details. -Default: our indexing code flushes every megabyte of mail seen -to keep memory usage low. Setting this environment variable to -any positive value will switch to a document count-based -threshold in Xapian. +For public-inbox 1.6 and later, use C +instead. Setting C for a large C<--reindex> +may cause L, L and +L tasks to wait long periods of time +during C<--reindex>. + +Default: none, uses C =back @@ -94,7 +187,7 @@ and L =head1 COPYRIGHT -Copyright 2016-2019 all contributors L +Copyright 2016-2020 all contributors L License: AGPL-3.0+ L