From 454fdaf1191c87e5c770ab865a911e10e600e178 Mon Sep 17 00:00:00 2001 From: Josip Sokcevic Date: Mon, 7 Oct 2024 17:33:38 +0000 Subject: sync: Always use WORKER_BATCH_SIZE With 551285fa35ccd0836513e9cf64ee8d3372e5e3f4, the comment about number of workers no longer stands - dict is shared among multiprocesses and real time information is available. Using 2.7k projects as the baseline, using chunk size of 4 takes close to 5 minutes. A chunk size of 32 takes this down to 40s - a reduction of rougly 8 times which matches the increase. R=gavinmak@google.com Bug: b/371638995 Change-Id: Ida5fd8f7abc44b3b82c02aa0f7f7ae01dff5eb07 Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/438523 Commit-Queue: Josip Sokcevic Tested-by: Josip Sokcevic Reviewed-by: Gavin Mak --- project.py | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) (limited to 'project.py') diff --git a/project.py b/project.py index 88dd747b..1d8ab556 100644 --- a/project.py +++ b/project.py @@ -2396,26 +2396,25 @@ class Project: try: # if revision (sha or tag) is not present then following function # throws an error. + revs = [f"{self.revisionExpr}^0"] + upstream_rev = None + if self.upstream: + upstream_rev = self.GetRemote().ToLocal(self.upstream) + revs.append(upstream_rev) + self.bare_git.rev_list( "-1", "--missing=allow-any", - "%s^0" % self.revisionExpr, + *revs, "--", log_as_error=False, ) + if self.upstream: - rev = self.GetRemote().ToLocal(self.upstream) - self.bare_git.rev_list( - "-1", - "--missing=allow-any", - "%s^0" % rev, - "--", - log_as_error=False, - ) self.bare_git.merge_base( "--is-ancestor", self.revisionExpr, - rev, + upstream_rev, log_as_error=False, ) return True -- cgit v1.2.3-54-g00ecf