public-inbox.git  about / heads / tags
an "archives first" approach to mailing lists
blob 149c8f78c738fc60a18e1f9def1e295d745f65eb 2546 bytes (raw)
$ git show v1.4.0:Documentation/public-inbox-xcpdb.pod	# shows this blob on the CLI

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
 
=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<copydatabase(1)> 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<public-inbox-watch(1)> or L<public-inbox-mda(1)>.

=head1 OPTIONS

=over

=item --compact

In addition to performing the copy operation, run L<xapian-compact(1)>
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<public-inbox-compact(1)>, use of this option is
preferable for gigantic inboxes where the coarse-grained lock
currently required for L<public-inbox-compact(1)> can cause
the compaction to take hours at-a-time.

=item --reshard=N / -R N

Reshard the Xapian database on a L<v2|public-inbox-v2-format(5)>
inbox to C<N> shards .  Since L<xapian-compact(1)> is not suitable
for merging, users can rely on this switch to reshard the
existing Xapian database(s) to any positive value of C<N>.

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<xapian-compact(1)> when
used with C<--compact>.

=back

=head1 ENVIRONMENT

=over 8

=item PI_CONFIG

The default config file, normally "~/.public-inbox/config".
See L<public-inbox-config(5)>

=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<public-inbox-index(1)>).

=head1 CONTACT

Feedback welcome via plain-text mail to L<mailto:meta@public-inbox.org>

The mail archives are hosted at L<https://public-inbox.org/meta/>
and L<http://hjrcffqmbrq6wope.onion/meta/>

=head1 COPYRIGHT

Copyright 2019-2020 all contributors L<mailto:meta@public-inbox.org>

License: AGPL-3.0+ L<https://www.gnu.org/licenses/agpl-3.0.txt>

=head1 SEE ALSO

L<copydatabase(1)>, L<xapian-compact(1)>, L<public-inbox-index(1)>

git clone https://public-inbox.org/public-inbox.git
git clone http://7fh6tueqddpjyxjmgtdiueylzoqt6pt7hec3pukyptlmohoowvhde4yd.onion/public-inbox.git