X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/43773cb247a1fb744b57070b715bfa5d53a00822..0b1fb2bd766d117745188ea321de08c904711c49:/services/api/app/models/commit.rb?ds=sidebyside diff --git a/services/api/app/models/commit.rb b/services/api/app/models/commit.rb index af08c1d1a5..d7d0571067 100644 --- a/services/api/app/models/commit.rb +++ b/services/api/app/models/commit.rb @@ -43,11 +43,8 @@ class Commit < ActiveRecord::Base IO.foreach("|git rev-list --format=oneline --all") do |line| sha1, message = line.strip.split " ", 2 imported = false - begin - imported = Commit.new(repository_name: repo_name, - sha1: sha1, - message: message[0..254]).save - rescue ActiveRecord::RecordNotUnique + Commit.find_or_create_by_repository_name_and_sha1_and_message(repo_name, sha1, message[0..254]) do + imported = true end stat[!!imported] += 1 if (stat[true] + stat[false]) % 100 == 0