=head1 NAME public-inbox-xcpdb - upgrade Xapian DB formats =head1 SYNOPSIS public-inbox-xcpdb [OPTIONS] INBOX_DIR =head1 DESCRIPTION public-inbox-xcpdb is similar to L for upgrading to the latest database format supported by Xapian (e.g. "glass" or "honey"), but is designed to tolerate and recover from Xapian database modifications from L or L. =head1 OPTIONS =over =item --compact In addition to performing the copy operation, run L on each Xapian partition 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 --blocksize / --no-full / --fuller These options are passed directly to L when used with C<--compact>. =back =head1 ENVIRONMENT =over 8 =item PI_CONFIG 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 The mail archives are hosted at L and L =head1 COPYRIGHT Copyright 2019 all contributors L License: AGPL-3.0+ L =head1 SEE ALSO L, L, L