X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/0561bd0c3c07257fd58ded6c7cfa5feeae97af57..HEAD:/services/api/lib/has_uuid.rb diff --git a/services/api/lib/has_uuid.rb b/services/api/lib/has_uuid.rb index dc8bdcb6c5..217113beec 100644 --- a/services/api/lib/has_uuid.rb +++ b/services/api/lib/has_uuid.rb @@ -14,14 +14,14 @@ module HasUuid base.has_many(:links_via_head, -> { where("not (link_class = 'permission')") }, class_name: 'Link', - foreign_key: :head_uuid, - primary_key: :uuid, + foreign_key: 'head_uuid', + primary_key: 'uuid', dependent: :destroy) base.has_many(:links_via_tail, -> { where("not (link_class = 'permission')") }, class_name: 'Link', - foreign_key: :tail_uuid, - primary_key: :uuid, + foreign_key: 'tail_uuid', + primary_key: 'uuid', dependent: :destroy) end @@ -30,7 +30,7 @@ module HasUuid Digest::MD5.hexdigest(self.to_s).to_i(16).to_s(36)[-5..-1] end def generate_uuid - [Server::Application.config.uuid_prefix, + [Rails.configuration.ClusterID, self.uuid_prefix, rand(2**256).to_s(36)[-15..-1]]. join '-' @@ -79,8 +79,8 @@ module HasUuid def destroy_permission_links if uuid - Link.destroy_all(['link_class=? and (head_uuid=? or tail_uuid=?)', - 'permission', uuid, uuid]) + Link.where(['link_class=? and (head_uuid=? or tail_uuid=?)', + 'permission', uuid, uuid]).destroy_all end end end