diff options
Diffstat (limited to 'app/models/packages')
-rw-r--r-- | app/models/packages/package.rb | 4 | ||||
-rw-r--r-- | app/models/packages/package_file.rb | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/app/models/packages/package.rb b/app/models/packages/package.rb index c76473c9438..7744e578df5 100644 --- a/app/models/packages/package.rb +++ b/app/models/packages/package.rb @@ -228,8 +228,8 @@ class Packages::Package < ApplicationRecord def self.keyset_pagination_order(join_class:, column_name:, direction: :asc) join_table = join_class.table_name - asc_order_expression = Gitlab::Database.nulls_last_order("#{join_table}.#{column_name}", :asc) - desc_order_expression = Gitlab::Database.nulls_first_order("#{join_table}.#{column_name}", :desc) + asc_order_expression = join_class.arel_table[column_name].asc.nulls_last + desc_order_expression = join_class.arel_table[column_name].desc.nulls_first order_direction = direction == :asc ? asc_order_expression : desc_order_expression reverse_order_direction = direction == :asc ? desc_order_expression : asc_order_expression arel_order_classes = ::Gitlab::Pagination::Keyset::ColumnOrderDefinition::AREL_ORDER_CLASSES.invert diff --git a/app/models/packages/package_file.rb b/app/models/packages/package_file.rb index ad8140ac684..b49e04f481c 100644 --- a/app/models/packages/package_file.rb +++ b/app/models/packages/package_file.rb @@ -34,7 +34,7 @@ class Packages::PackageFile < ApplicationRecord validates :file, presence: true validates :file_name, presence: true - validates :file_name, uniqueness: { scope: :package }, if: -> { package&.pypi? } + validates :file_name, uniqueness: { scope: :package }, if: -> { !pending_destruction? && package&.pypi? } scope :recent, -> { order(id: :desc) } scope :limit_recent, ->(limit) { recent.limit(limit) } |