Module: SQLErrorParse

Included in:
TPRecordOptimistic
Defined in:
lib/tp_record_optimistic.rb

Instance Method Summary collapse

Instance Method Details

#unique_errors(error) ⇒ Object



5
6
7
8
9
10
11
12
13
# File 'lib/tp_record_optimistic.rb', line 5

def unique_errors(error)
  table = self.class.table_name
  split_key = /(INSERT|UPDATE)/
  especific_key = %w(UNIQUE constraint failed: SQLite3::ConstraintException:)
  error.split(split_key)[0].split
       .reject { |e| especific_key.include? e }
       .map { |e| e.sub("#{table}.", '').delete(':') }
       .map(&:to_sym)
end