X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=Documentation%2Fpublic-inbox-xcpdb.pod;h=149c8f78c738fc60a18e1f9def1e295d745f65eb;hb=c29b2b7ded47def906cf00e3baad65c102304120;hp=4ff51867367cb9ab1ce920fedf1b18e39ae19d18;hpb=ac5a695030be64059fcb1ae826a0f3bfd2ca035b;p=public-inbox.git diff --git a/Documentation/public-inbox-xcpdb.pod b/Documentation/public-inbox-xcpdb.pod index 4ff51867..149c8f78 100644 --- a/Documentation/public-inbox-xcpdb.pod +++ b/Documentation/public-inbox-xcpdb.pod @@ -1,24 +1,51 @@ =head1 NAME -public-inbox-xcpdb - copy Xapian DBs (for format upgrades) +public-inbox-xcpdb - upgrade Xapian DB formats =head1 SYNOPSIS - public-inbox-xcpdb INBOX_DIR + public-inbox-xcpdb [OPTIONS] INBOX_DIR =head1 DESCRIPTION -public-inbox-xcpdb is a wrapper for L for +public-inbox-xcpdb is similar to L for upgrading to the latest database format supported by Xapian -(e.g. "glass" or "honey"). +(e.g. "glass" or "honey"), but is designed to tolerate and +recover from Xapian database modifications from +L or L. -It locks the inbox and prevents other processes such as -L and L from -writing while it operates. +=head1 OPTIONS -This is intended for upgrading the database format used by -Xapian. It DOES NOT upgrade the schema used by the -public-inbox search interface (see L). +=over + +=item --compact + +In addition to performing the copy operation, run L +on each Xapian shard after copying but before finalizing it. +Compared to the cost of copying a Xapian database, compacting a +Xapian database takes only around 5% of the time required to copy. + +Compared to L, use of this option is +preferable for gigantic inboxes where the coarse-grained lock +currently required for L can cause +the compaction to take hours at-a-time. + +=item --reshard=N / -R N + +Reshard the Xapian database on a L +inbox to C shards . Since L is not suitable +for merging, users can rely on this switch to reshard the +existing Xapian database(s) to any positive value of C. + +This is useful in case the Xapian DB was created with too few or +too many shards given the capabilities of the current hardware. + +=item --blocksize / --no-full / --fuller + +These options are passed directly to L when +used with C<--compact>. + +=back =head1 ENVIRONMENT @@ -29,10 +56,24 @@ public-inbox search interface (see L). The default config file, normally "~/.public-inbox/config". See L +=item XAPIAN_FLUSH_THRESHOLD + +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: 10000 + =back =head1 UPGRADING +This tool is intended for admins upgrading Xapian search databases +used by public-inbox, NOT users upgrading public-inbox itself. + +In particular, it DOES NOT upgrade the schema used by the +PSGI search interface (see L). + =head1 CONTACT Feedback welcome via plain-text mail to L @@ -42,10 +83,10 @@ and L =head1 COPYRIGHT -Copyright 2019 all contributors L +Copyright 2019-2020 all contributors L License: AGPL-3.0+ L =head1 SEE ALSO -L, L +L, L, L