From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-Status: No, score=-4.0 required=3.0 tests=ALL_TRUSTED,BAYES_00 shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 6C6A41F66F for ; Fri, 13 Nov 2020 11:11:44 +0000 (UTC) From: Eric Wong To: meta@public-inbox.org Subject: [PATCH 0/4] extindex: checkpoints, graceful shutdown, cleanups Date: Fri, 13 Nov 2020 11:11:40 +0000 Message-Id: <20201113111144.23038-1-e@80x24.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit List-Id: Patches 1 and 4 should make long indexing runs more user-friendly by being interrupt-friendly (via SIGINT, SIGQUIT, or SIGTERM, just like read-only daemons). I would've found this feature useful when dealing with unplanned emergency shutdowns due to power outages. I may continue to find it useful in the future since the power grid falling to pieces and see more power outages. Stealing UI ideas from git, SIGUSR1 also triggers a checkpoint during indexing. 2 and 3 are just cleanups I've noticed along the way. Eric Wong (4): *index: checkpoints write last_commit metadata *index: avoid per-epoch --batch-check processes *index: discard sync->{todo} on iteration extindex: support graceful shutdown via QUIT/INT/TERM lib/PublicInbox/ExtSearchIdx.pm | 23 +++++++++---- lib/PublicInbox/IdxStack.pm | 18 +++++++--- lib/PublicInbox/SearchIdx.pm | 56 +++++++++++++++++-------------- lib/PublicInbox/SearchIdxShard.pm | 6 ++++ lib/PublicInbox/V2Writable.pm | 49 +++++++++++++++++++++------ t/idx_stack.t | 20 ++++++----- 6 files changed, 115 insertions(+), 57 deletions(-)