On Wed, 16 May 2018 at 01:12, Eric Wong <e...@80x24.org> wrote:
> Ah, took me a while to realize what was going on :x
> The Xapian files processes were lacking O_CLOEXEC and FD_CLOEXEC
> usage and this was a problem in Xapian >= 1.2.21 && <= 1.2.24

> Relevant Xapian commit should be e953a10dc4f0cc8e604fd2082c87b638c6a3382b
> ("Set CLOEXEC on the lock file fd and pipe")

> I suspect the following patch works around the problem with or
> without parallel=0

> --- a/t/v2mirror.t
> +++ b/t/v2mirror.t
> @@ -50,7 +50,7 @@ for my $i (1..9) {
>          $mime->header_set('Subject', "subject = $i");
>          ok($v2w->add($mime), "add msg $i OK");
>   }
> -$v2w->barrier;
> +$v2w->done;

>   my %opts = (
>          LocalAddr => '127.0.0.1',

> Can you confirm?  I don't have 1.2.22 handy anymore, but I
> reported this problem and got Olly to fix it back in 2016.

Sorry I missed your reply! Yes, you're correct -- applying the above patch
makes all tests pass. I'm guessing it's also the reason why I'm seeing the
"already locked" error in my other tests, too:

$ public-inbox-index /var/lib/public-inbox/meta.git
Exception: Unable to get write lock on
/var/lib/public-inbox/meta.git/public-inbox/xapian15: already locked

Hope this helps.
-K

Reply via email to