Skip to content

Commit

Permalink
merge
Browse files Browse the repository at this point in the history
  • Loading branch information
adrian-codecov committed Apr 24, 2024
2 parents 39514c6 + bcec347 commit 163e7c9
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 16 deletions.
8 changes: 6 additions & 2 deletions tasks/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -204,14 +204,18 @@ def _analyse_error(self, exception: SQLAlchemyError, *args, **kwargs):
try:
import psycopg2

if isinstance(exception.orig, psycopg2.errors.DeadlockDetected):
if hasattr(exception, "orig") and isinstance(
exception.orig, psycopg2.errors.DeadlockDetected
):
log.exception(
"Deadlock while talking to database",
extra=dict(task_args=args, task_kwargs=kwargs),
exc_info=True,
)
return
elif isinstance(exception.orig, psycopg2.OperationalError):
elif hasattr(exception, "orig") and isinstance(
exception.orig, psycopg2.OperationalError
):
log.warning(
"Database seems to be unavailable",
extra=dict(task_args=args, task_kwargs=kwargs),
Expand Down
28 changes: 14 additions & 14 deletions tasks/sync_repos.py
Original file line number Diff line number Diff line change
Expand Up @@ -174,28 +174,28 @@ async def sync_repos_affected_repos_known(
async for repo_data in git.get_repos_from_nodeids_generator(
repos_to_search, owner.username
):
# Insert those repos
new_repo = Repository(
service_id=repo_data["service_id"],
name=repo_data["name"],
language=repo_data["language"],
private=repo_data["private"],
branch=repo_data["branch"],
using_integration=True,
)
# Get or create owner
if repo_data["owner"]["is_expected_owner"]:
new_repo.ownerid = owner.ownerid
new_repo_ownerid = owner.ownerid
else:
upserted_owner_id = self.upsert_owner(
db_session,
git.service,
repo_data["owner"]["service_id"],
repo_data["owner"]["username"],
)
new_repo.ownerid = upserted_owner_id
db_session.add(new_repo)
db_session.flush()
repoids_added.append(new_repo.repoid)
new_repo_ownerid = upserted_owner_id
# Get or create repo
# Yes we had issues trying to insert a repeated repo at this point.
# Maybe race condition?
repoid = self.upsert_repo(
db_session=db_session,
service=git.service,
ownerid=new_repo_ownerid,
repo_data={**repo_data, "service_id": str(repo_data["service_id"])},
using_integration=True,
)
repoids_added.append(repoid)
return repoids_added

def _possibly_update_ghinstallation_covered_repos(
Expand Down

0 comments on commit 163e7c9

Please sign in to comment.