diff options
author | Greg Stark <stark@mit.edu> | 2017-09-18 19:37:57 +0100 |
---|---|---|
committer | Greg Stark <stark@gitlab.com> | 2017-09-19 11:52:14 +0100 |
commit | 46114fca5dd0f29ba4a98c715c15bd0895b07b0c (patch) | |
tree | a4b806c9d533d89bd7e626c24e00a322097b04e6 /config | |
parent | 727f51b8ef0af2b78087b4ac894ee728bfbabd1f (diff) | |
download | gitlab-ce-46114fca5dd0f29ba4a98c715c15bd0895b07b0c.tar.gz |
Fix regular expression used for opclasses to not be confused by partial index clausefix-rails-migrations-for-partial-indexes
Diffstat (limited to 'config')
-rw-r--r-- | config/initializers/postgresql_opclasses_support.rb | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/config/initializers/postgresql_opclasses_support.rb b/config/initializers/postgresql_opclasses_support.rb index 820cc89ef57..c2f3023b330 100644 --- a/config/initializers/postgresql_opclasses_support.rb +++ b/config/initializers/postgresql_opclasses_support.rb @@ -127,7 +127,7 @@ module ActiveRecord orders = desc_order_columns.any? ? Hash[desc_order_columns.map {|order_column| [order_column, :desc]}] : {} where = inddef.scan(/WHERE (.+)$/).flatten[0] using = inddef.scan(/USING (.+?) /).flatten[0].to_sym - opclasses = Hash[inddef.scan(/\((.+)\)$/).flatten[0].split(',').map do |column_and_opclass| + opclasses = Hash[inddef.scan(/\((.+?)\)(?:$| WHERE )/).flatten[0].split(',').map do |column_and_opclass| column, opclass = column_and_opclass.split(' ').map(&:strip) [column, opclass] if opclass end.compact] |