]> git.ipfire.org Git - pbs.git/commitdiff
jobs: Limit dependency checks to four at a time
authorMichael Tremer <michael.tremer@ipfire.org>
Tue, 23 May 2023 16:02:30 +0000 (16:02 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Tue, 23 May 2023 16:02:30 +0000 (16:02 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/buildservice/jobs.py

index c4c251fed179ebdd3cedf6b07232fe9f325726f8..23564549de6129818468297d82b0ce2dd39b28ab 100644 (file)
@@ -837,14 +837,18 @@ class Job(base.DataObject):
                """
                return self.build.build_repo.pakfire(arch=self.arch, **kwargs)
 
+       # Perform only four dependency checks at a time
+       __depcheck_ratelimiter = asyncio.Semaphore(4)
+
        async def depcheck(self):
                """
                        Perform dependency check
                """
-               log.info("Performing dependency check for %s (%s)" % (self, self.uuid))
+               with self.__depcheck_ratelimiter:
+                       log.info("Performing dependency check for %s (%s)" % (self, self.uuid))
 
-               with self.db.transaction():
-                       return await asyncio.to_thread(self._depcheck)
+                       with self.db.transaction():
+                               return await asyncio.to_thread(self._depcheck)
 
        def _depcheck(self):
                # Create a Pakfire instance