diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-04-20 13:00:54 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-04-20 13:00:54 +0300 |
commit | 3cccd102ba543e02725d247893729e5c73b38295 (patch) | |
tree | f36a04ec38517f5deaaacb5acc7d949688d1e187 /app/models/concerns/from_set_operator.rb | |
parent | 205943281328046ef7b4528031b90fbda70c75ac (diff) |
Add latest changes from gitlab-org/gitlab@14-10-stable-eev14.10.0-rc42
Diffstat (limited to 'app/models/concerns/from_set_operator.rb')
-rw-r--r-- | app/models/concerns/from_set_operator.rb | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/app/models/concerns/from_set_operator.rb b/app/models/concerns/from_set_operator.rb index c6d63631c84..ce3a83e9fa1 100644 --- a/app/models/concerns/from_set_operator.rb +++ b/app/models/concerns/from_set_operator.rb @@ -11,7 +11,12 @@ module FromSetOperator raise "Trying to redefine method '#{method(method_name)}'" if methods.include?(method_name) define_method(method_name) do |members, remove_duplicates: true, remove_order: true, alias_as: table_name| - operator_sql = operator.new(members, remove_duplicates: remove_duplicates, remove_order: remove_order).to_sql + operator_sql = + if members.any? + operator.new(members, remove_duplicates: remove_duplicates, remove_order: remove_order).to_sql + else + where("1=0").to_sql + end from(Arel.sql("(#{operator_sql}) #{alias_as}")) end |