diff --git a/build_analytics/build_analytics/db.py b/build_analytics/build_analytics/db.py index 3509bb3..21efd0f 100644 --- a/build_analytics/build_analytics/db.py +++ b/build_analytics/build_analytics/db.py @@ -246,17 +246,18 @@ class DB(): val = int(cur.fetchone()[0]) return val == 1 - def get_build_tasks_for_unfinished_tests(self, not_before: datetime) -> List[int]: + def get_build_tasks_for_tests_update(self, not_before: datetime) -> List[int]: ''' - getting build tasks id of unfinished test tasks + Getting build tasks id for test tasks that we need to update + https://cloudlinux.atlassian.net/browse/ALBS-1060 ''' cur = self.__conn.cursor() sql = ''' - SELECT DISTINCT bt.id - FROM build_tasks as bt - INNER JOIN test_tasks AS tt - ON bt.id = tt.build_task_id - WHERE tt.status_id < 3 AND bt.started_at > %s; + SELECT bt.id + FROM build_tasks AS bt + INNER JOIN builds AS b + ON b.id = bt.build_id + WHERE b.created_at > %s; ''' cur.execute(sql, (not_before.timestamp(),)) logging.debug('raw SQL query: %s', cur.query) diff --git a/build_analytics/build_analytics/extractor/extractor.py b/build_analytics/build_analytics/extractor/extractor.py index cea2946..dfac09a 100644 --- a/build_analytics/build_analytics/extractor/extractor.py +++ b/build_analytics/build_analytics/extractor/extractor.py @@ -131,8 +131,9 @@ class Extractor: build_id, err, exc_info=True) def updating_test_tasks(self): - logging.info('getting build task ids of unfinished tests') - build_task_ids = self.db.get_build_tasks_for_unfinished_tests( + logging.info('getting build tasks for builds created after %s', + self.config.oldest_to_update) + build_task_ids = self.db.get_build_tasks_for_tests_update( self.config.oldest_to_update) for build_task_id in build_task_ids: try: diff --git a/build_analytics/build_analytics/extractor/start.py b/build_analytics/build_analytics/extractor/start.py index e14598a..6adb6ab 100644 --- a/build_analytics/build_analytics/extractor/start.py +++ b/build_analytics/build_analytics/extractor/start.py @@ -95,7 +95,7 @@ def start(yml_path: str): else: logging.info('update finished') - logging.info('updating statuses of unfinished test tasks') + logging.info('updating/inserting test tasks') try: extractor.updating_test_tasks() except Exception as err: # pylint: disable=broad-except