about summary refs log tree commit homepage
path: root/lib/PublicInbox/Over.pm
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2023-03-29 20:32:59 +0000
committerEric Wong <e@80x24.org>2023-03-29 23:06:45 +0000
commit9d3b0372bdacd961928f3eabf21616849c188b00 (patch)
tree2040e962474290c74996626b816749d97531c87d /lib/PublicInbox/Over.pm
parentc421c638a77a785903cc829b49131fae3e15a25c (diff)
downloadpublic-inbox-9d3b0372bdacd961928f3eabf21616849c188b00.tar.gz
We need to ensure we don't block indexing for too long while
pruning, since pruning coderepos seems more frequent and
necessary than inbox repos due to the prevalence of force
pushes with branches like `seen' (formerly `pu') in git.git.

Implement this via ->event_step and requeue mechanisms of DS so
we periodically flush our work and let indexing resume.

I originally wanted to implement this as a dedicated group
of workers, but the XS Search::Xapian bug[1] workaround
to handle uncaught C++ exceptions was expensive and complex
compared to the evented mechanism.

[1] https://lists.xapian.org/pipermail/xapian-discuss/2023-March/009967.html
   <20230327114604.M803690@dcvr>
Diffstat (limited to 'lib/PublicInbox/Over.pm')
0 files changed, 0 insertions, 0 deletions