From 708c9c2a2e429c321db905e21b140b03fd5c1af5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karol=20B=C4=85k?= Date: Sun, 1 Oct 2023 18:28:18 +0200 Subject: [PATCH] remove issues while updating repo --- .../20231001162627_add_delete_cascade_to_issues.rb | 10 ++++++++++ slices/processing/services/repo_syncer.rb | 3 +-- 2 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 db/migrate/20231001162627_add_delete_cascade_to_issues.rb diff --git a/db/migrate/20231001162627_add_delete_cascade_to_issues.rb b/db/migrate/20231001162627_add_delete_cascade_to_issues.rb new file mode 100644 index 0000000..093ddb4 --- /dev/null +++ b/db/migrate/20231001162627_add_delete_cascade_to_issues.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +ROM::SQL.migration do + change do + alter_table :issues do + drop_foreign_key :repo_id + add_foreign_key :repo_id, :repos, index: true, on_delete: :cascade + end + end +end diff --git a/slices/processing/services/repo_syncer.rb b/slices/processing/services/repo_syncer.rb index d964148..dc26368 100644 --- a/slices/processing/services/repo_syncer.rb +++ b/slices/processing/services/repo_syncer.rb @@ -4,7 +4,7 @@ module Processing module Services class RepoSyncer < ShinyGems::Service include Deps["services.github.repo_fetcher", "repositories.repos_repository", - "repositories.gems_repository", "repositories.issues_repository", "workers.sync_issues_worker"] + "repositories.gems_repository", "workers.sync_issues_worker"] def call(repo) info = yield repo_fetcher.call(repo.name) @@ -20,7 +20,6 @@ def call(repo) repos_repository.transaction do new_repo = repos_repository.find_or_create({name: info[:full_name]}) gems_repository.replace_repo(repo.id, new_repo.id) - issues_repository.replace_repo(repo.id, new_repo.id) repos_repository.delete(repo.id) Success(repos_repository.update(new_repo.id, attributes)) end