From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-4.2 required=3.0 tests=ALL_TRUSTED,AWL,BAYES_00, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF, T_SCC_BODY_TEXT_LINE shortcircuit=no autolearn=ham autolearn_force=no version=3.4.6 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id BABA41F452 for ; Tue, 21 Nov 2023 12:43:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=80x24.org; s=selector1; t=1700570595; bh=WyYZBGERYc9JrwPadESkja4uYkzvUmO2xesLMSJt3Ug=; h=From:To:Subject:Date:In-Reply-To:References:From; b=ZOFUqVKCZAju0zjiHr5hXKB21Cmv7KILn/ezqYscGeyUu8Sl0uyvoeNlLU4TGfVru JB5rm0oepqhTQhBCUoRUNdEwjM/gnAy3HoQieZWZ2YzNrof2//MfoGHHLq5ipYem4+ kpLB6rG6Ko3hrR5+5ovve2ssUzenECKEPH7pdsLk= From: Eric Wong To: meta@public-inbox.org Subject: [PATCH 1/3] cindex: avoid unneeded and redundant `local' calls Date: Tue, 21 Nov 2023 12:43:13 +0000 Message-Id: <20231121124315.1775613-2-e@80x24.org> In-Reply-To: <20231121124315.1775613-1-e@80x24.org> References: <20231121124315.1775613-1-e@80x24.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit List-Id: We only set $MAX_SIZE at startup, and there's no need to use a local $self->{roots} for the per-repo roots array. --- lib/PublicInbox/CodeSearchIdx.pm | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/lib/PublicInbox/CodeSearchIdx.pm b/lib/PublicInbox/CodeSearchIdx.pm index 54a2ba22..bbccc0e3 100644 --- a/lib/PublicInbox/CodeSearchIdx.pm +++ b/lib/PublicInbox/CodeSearchIdx.pm @@ -152,8 +152,8 @@ EOM # TODO: may be used for reshard/compact sub count_shards { scalar($_[0]->xdb_shards_flat) } -sub update_commit ($$) { - my ($self, $cmt) = @_; # fields from @FMT +sub update_commit ($$$) { + my ($self, $cmt, $roots) = @_; # fields from @FMT my $x = 'Q'.$cmt->{H}; my ($docid, @extra) = sort { $a <=> $b } docids_by_postlist($self, $x); @extra and warn "W: $cmt->{H} indexed multiple times, pruning ", @@ -161,7 +161,7 @@ sub update_commit ($$) { $self->{xdb}->delete_document($_) for @extra; my $doc = $PublicInbox::Search::X{Document}->new; $doc->add_boolean_term($x); - $doc->add_boolean_term('G'.$_) for @{$self->{roots}}; + $doc->add_boolean_term('G'.$_) for @$roots; $doc->add_boolean_term('XP'.$_) for split(/ /, $cmt->{P}); $doc->add_boolean_term('T'.'c'); @@ -277,9 +277,7 @@ sub cidx_read_log_p { my ($self, $log_p, $rd) = @_; my $git = delete $log_p->{git} // die 'BUG: no {git}'; local $self->{current_info} = "$git->{git_dir} [$self->{shard}]"; - local $self->{roots} = delete $log_p->{roots} // die 'BUG: no {roots}'; - - local $MAX_SIZE = $self->{-opt}->{max_size}; + my $roots = delete $log_p->{roots} // die 'BUG: no {roots}'; # local-ized in parent before fork $TXN_BYTES = $BATCH_BYTES; local $self->{git} = $git; # for patchid @@ -308,7 +306,7 @@ sub cidx_read_log_p { cidx_ckpoint($self, "[$self->{shard}] $nr"); $TXN_BYTES -= $len; # len may be huge, >TXN_BYTES; } - update_commit($self, $cmt); + update_commit($self, $cmt, $roots); ++$nr; cidx_ckpoint($self, "[$self->{shard}] $nr") if $TXN_BYTES <= 0; $/ = $FS; @@ -1143,6 +1141,7 @@ sub cidx_run { # main entry point @ID2ROOT, $XHC, @SORT, $GITS_NR); local $BATCH_BYTES = $self->{-opt}->{batch_size} // $PublicInbox::SearchIdx::BATCH_BYTES; + local $MAX_SIZE = $self->{-opt}->{max_size}; local $self->{ASSOC_PFX} = \@ASSOC_PFX; local $self->{PENDING} = {}; local $self->{-pi_cfg};