#!/usr/bin/perl -w # Copyright (C) 2018-2020 all contributors # License: AGPL-3.0+ use strict; use warnings; use Getopt::Long qw(:config gnu_getopt no_ignore_case auto_abbrev); use PublicInbox::InboxWritable; use PublicInbox::Xapcmd; use PublicInbox::Admin; PublicInbox::Admin::require_or_die('-index'); my $usage = "Usage: public-inbox-compact INBOX_DIR\n"; my $opt = { compact => 1, -coarse_lock => 1 }; GetOptions($opt, @PublicInbox::Xapcmd::COMPACT_OPT) or die "bad command-line args\n$usage"; my @ibxs = PublicInbox::Admin::resolve_inboxes(\@ARGV) or die $usage; foreach (@ibxs) { my $ibx = PublicInbox::InboxWritable->new($_); PublicInbox::Xapcmd::run($ibx, 'compact', $opt); }