diff --git a/CHANGELOG.md b/CHANGELOG.md index 318c1e7..9a7875c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## UNRELEASED +# 1.24.1 - 2024-03-26 +- Fix: ActiveRecordConsumer batch consumption was not working with the trilogy adapter. + # 1.24.0 - 2024-02-26 ***BREAKING CHANGE**** diff --git a/deimos-ruby.gemspec b/deimos-ruby.gemspec index 5b1fb8a..376fc8a 100644 --- a/deimos-ruby.gemspec +++ b/deimos-ruby.gemspec @@ -25,6 +25,7 @@ Gem::Specification.new do |spec| spec.add_runtime_dependency('sigurd', '>= 0.1.0', '< 1.0') spec.add_development_dependency('activerecord-import') + spec.add_development_dependency('activerecord-trilogy-adapter') spec.add_development_dependency('avro', '~> 1.9') spec.add_development_dependency('database_cleaner', '~> 1.7') spec.add_development_dependency('ddtrace', '>= 0.11') diff --git a/lib/deimos/active_record_consume/mass_updater.rb b/lib/deimos/active_record_consume/mass_updater.rb index 854eaf7..3ba95b1 100644 --- a/lib/deimos/active_record_consume/mass_updater.rb +++ b/lib/deimos/active_record_consume/mass_updater.rb @@ -50,7 +50,8 @@ def save_records_to_database(record_list) options = if @key_cols.empty? {} # Can't upsert with no key, just do regular insert - elsif ActiveRecord::Base.connection.adapter_name.downcase =~ /mysql/ + elsif ActiveRecord::Base.connection.adapter_name.downcase =~ /mysql/ || + ActiveRecord::Base.connection.adapter_name.downcase =~ /trilogy/ { on_duplicate_key_update: columns } diff --git a/lib/deimos/version.rb b/lib/deimos/version.rb index 6d24678..137b227 100644 --- a/lib/deimos/version.rb +++ b/lib/deimos/version.rb @@ -1,5 +1,5 @@ # frozen_string_literal: true module Deimos - VERSION = '1.24.0' + VERSION = '1.24.1' end diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 16beb13..8e5184e 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -94,6 +94,13 @@ def build_message(payload, topic, key) database: 'test', host: ENV['MYSQL_HOST'] || '127.0.0.1' }, + { + adapter: 'trilogy', + port: 3306, + username: 'root', + database: 'test', + host: ENV['MYSQL_HOST'] || '127.0.0.1' + }, { adapter: 'sqlite3', database: 'test.sqlite3'