Update changelog

This commit is contained in:
Eugene Burmakin 2025-11-07 23:42:21 +01:00
parent e4f80dbf2b
commit 98a157bd0b
8 changed files with 42 additions and 334 deletions

View file

View file

@ -22,9 +22,12 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Removed useless system tests and cover map functionality with Playwright e2e tests instead.
- Number of family members on self-hosted instances is no longer limited.
- Export to GPX now adds adds speed and course to each point if they are available.
- `docker-compose.yml` file updated to provide sensible defaults for self-hosted production environment.
- .env.example file added with default environment variables.
- Single Dockerfile introduced so Dawarich could be run in self-hosted mode in production environment.
- [ ] Check if with no changes to docker-compose.yml everything still works as before.
- [ ] Deploy to Staging and test again.
- [x] Check if with no changes to docker-compose.yml everything still works as before.
- [x] Deploy to Staging and test again.
- [ ] Run self-hosted instance with production env
# [0.34.2] - 2025-10-31

View file

@ -48,7 +48,6 @@ gem 'sidekiq-limit_fetch'
gem 'sprockets-rails'
gem 'stackprof'
gem 'stimulus-rails'
# gem 'strong_migrations', '>= 2.4.0'
gem 'tailwindcss-rails', '= 3.3.2'
gem 'turbo-rails', '>= 2.0.17'
gem 'tzinfo-data', platforms: %i[mingw mswin x64_mingw jruby]
@ -80,4 +79,5 @@ group :development do
gem 'database_consistency', '>= 2.0.5', require: false
gem 'foreman'
gem 'rubocop-rails', '>= 2.33.4', require: false
gem 'strong_migrations', '>= 2.4.0'
end

View file

@ -486,6 +486,8 @@ GEM
stimulus-rails (1.3.4)
railties (>= 6.0.0)
stringio (3.1.7)
strong_migrations (2.5.1)
activerecord (>= 7.1)
super_diff (0.17.0)
attr_extras (>= 6.2.4)
diff-lcs
@ -598,6 +600,7 @@ DEPENDENCIES
sprockets-rails
stackprof
stimulus-rails
strong_migrations (>= 2.4.0)
super_diff
tailwindcss-rails (= 3.3.2)
turbo-rails (>= 2.0.17)

View file

@ -79,6 +79,8 @@ Simply install one of the supported apps on your device and configure it to send
⏹️ **To stop the app**, press `Ctrl+C`.
You can use default values or create a `.env` file based on `.env.example` to customize your setup.
---
## 🔧 How to Install Dawarich

View file

@ -1,27 +1,31 @@
# # Mark existing migrations as safe
# StrongMigrations.start_after = 20_250_122_150_500
# frozen_string_literal: true
# # Set timeouts for migrations
# # PgBouncer in transaction mode doesn't support SET commands
# # Timeouts should be set on the database user instead
# # StrongMigrations.lock_timeout = 10.seconds
# # StrongMigrations.statement_timeout = 1.hour
return unless Rails.env.development?
# # Analyze tables after indexes are added
# # Outdated statistics can sometimes hurt performance
# StrongMigrations.auto_analyze = true
# Mark existing migrations as safe
StrongMigrations.start_after = 20_250_122_150_500
# # Set the version of the production database
# # so the right checks are run in development
# # StrongMigrations.target_version = 10
# Set timeouts for migrations
# PgBouncer in transaction mode doesn't support SET commands
# Timeouts should be set on the database user instead
# StrongMigrations.lock_timeout = 10.seconds
# StrongMigrations.statement_timeout = 1.hour
# # Add custom checks
# # StrongMigrations.add_check do |method, args|
# # if method == :add_index && args[0].to_s == "users"
# # stop! "No more indexes on the users table"
# # end
# # end
# Analyze tables after indexes are added
# Outdated statistics can sometimes hurt performance
StrongMigrations.auto_analyze = true
# # Make some operations safe by default
# # See https://github.com/ankane/strong_migrations#safe-by-default
# # StrongMigrations.safe_by_default = true
# Set the version of the production database
# so the right checks are run in development
# StrongMigrations.target_version = 10
# Add custom checks
# StrongMigrations.add_check do |method, args|
# if method == :add_index && args[0].to_s == "users"
# stop! "No more indexes on the users table"
# end
# end
# Make some operations safe by default
# See https://github.com/ankane/strong_migrations#safe-by-default
# StrongMigrations.safe_by_default = true

View file

@ -2,12 +2,10 @@
class AddUtmParametersToUsers < ActiveRecord::Migration[8.0]
def change
# safety_assured do
add_column :users, :utm_source, :string
add_column :users, :utm_medium, :string
add_column :users, :utm_campaign, :string
add_column :users, :utm_term, :string
add_column :users, :utm_content, :string
# end
end
end

302
temp..log
View file

@ -1,302 +0,0 @@
dokku run dawarich rails db:migrate
[dotenv] Loaded .env
E, [2025-11-07T18:56:36.037575 #12] ERROR -- : Prometheus Exporter, failed to send message getaddrinfo(3): Name or service not known
E, [2025-11-07T18:56:36.540304 #12] ERROR -- : Prometheus Exporter, failed to send message getaddrinfo(3): Name or service not known
E, [2025-11-07T18:56:37.048717 #12] ERROR -- : Prometheus Exporter, failed to send message getaddrinfo(3): Name or service not known
E, [2025-11-07T18:56:37.554386 #12] ERROR -- : Prometheus Exporter, failed to send message getaddrinfo(3): Name or service not known
E, [2025-11-07T18:56:38.057240 #12] ERROR -- : Prometheus Exporter, failed to send message getaddrinfo(3): Name or service not known
E, [2025-11-07T18:56:38.560002 #12] ERROR -- : Prometheus Exporter, failed to send message getaddrinfo(3): Name or service not known
E, [2025-11-07T18:56:39.062596 #12] ERROR -- : Prometheus Exporter, failed to send message getaddrinfo(3): Name or service not known
Migrating to AddUtmParametersToUsers (20251030190924)
== 20251030190924 AddUtmParametersToUsers: migrating ==========================
E, [2025-11-07T18:56:39.565841 #12] ERROR -- : Prometheus Exporter, failed to send message getaddrinfo(3): Name or service not known
-- add_column(:users, :utm_source, :string)
bin/rails aborted!
StandardError: An error has occurred, this and all later migrations canceled: (StandardError)
PG::InFailedSqlTransaction: ERROR: current transaction is aborted, commands ignored until end of transaction block
/app/vendor/bundle/ruby/3.4.0/gems/prometheus_exporter-2.2.0/lib/prometheus_exporter/instrumentation/method_profiler.rb:99:in 'PG::Connection#exec'
/app/vendor/bundle/ruby/3.4.0/gems/prometheus_exporter-2.2.0/lib/prometheus_exporter/instrumentation/method_profiler.rb:99:in 'PG::Connection#async_exec'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/postgresql/database_statements.rb:167:in 'ActiveRecord::ConnectionAdapters::PostgreSQL::DatabaseStatements#perform_query'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:556:in 'block (2 levels) in ActiveRecord::ConnectionAdapters::DatabaseStatements#raw_execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract_adapter.rb:1017:in 'block in ActiveRecord::ConnectionAdapters::AbstractAdapter#with_raw_connection'
/app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/lib/active_support/concurrency/null_lock.rb:9:in 'ActiveSupport::Concurrency::NullLock#synchronize'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract_adapter.rb:986:in 'ActiveRecord::ConnectionAdapters::AbstractAdapter#with_raw_connection'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:555:in 'block in ActiveRecord::ConnectionAdapters::DatabaseStatements#raw_execute'
/app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/lib/active_support/notifications/instrumenter.rb:58:in 'ActiveSupport::Notifications::Instrumenter#instrument'
/app/vendor/bundle/ruby/3.4.0/gems/sentry-rails-6.0.0/lib/sentry/rails/tracing.rb:56:in 'Sentry::Rails::Tracing::SentryNotificationExtension#instrument'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract_adapter.rb:1137:in 'ActiveRecord::ConnectionAdapters::AbstractAdapter#log'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:554:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#raw_execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:591:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#internal_execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:137:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/query_cache.rb:27:in 'ActiveRecord::ConnectionAdapters::AbstractAdapter#execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/postgresql/database_statements.rb:40:in 'ActiveRecord::ConnectionAdapters::PostgreSQL::DatabaseStatements#execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/schema_statements.rb:643:in 'ActiveRecord::ConnectionAdapters::SchemaStatements#add_column'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/postgresql/schema_statements.rb:462:in 'ActiveRecord::ConnectionAdapters::PostgreSQL::SchemaStatements#add_column'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration/default_strategy.rb:10:in 'ActiveRecord::Migration::DefaultStrategy#method_missing'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1055:in 'block in ActiveRecord::Migration#method_missing'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1021:in 'block in ActiveRecord::Migration#say_with_time'
/app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/lib/active_support/benchmark.rb:17:in 'ActiveSupport::Benchmark.realtime'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1021:in 'ActiveRecord::Migration#say_with_time'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1044:in 'ActiveRecord::Migration#method_missing'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:14:in 'block (2 levels) in StrongMigrations::Migration#method_missing'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/checker.rb:127:in 'StrongMigrations::Checker#perform_method'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/checker.rb:112:in 'StrongMigrations::Checker#perform'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:13:in 'block in StrongMigrations::Migration#method_missing'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:12:in 'Kernel#catch'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:12:in 'StrongMigrations::Migration#method_missing'
/app/db/migrate/20251030190924_add_utm_parameters_to_users.rb:6:in 'block in AddUtmParametersToUsers#change'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:31:in 'block in StrongMigrations::Migration#safety_assured'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/checker.rb:30:in 'StrongMigrations::Checker.safety_assured'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:30:in 'StrongMigrations::Migration#safety_assured'
/app/db/migrate/20251030190924_add_utm_parameters_to_users.rb:5:in 'AddUtmParametersToUsers#change'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:990:in 'ActiveRecord::Migration#exec_migration'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:974:in 'block (2 levels) in ActiveRecord::Migration#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/lib/active_support/benchmark.rb:17:in 'ActiveSupport::Benchmark.realtime'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:973:in 'block in ActiveRecord::Migration#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:416:in 'ActiveRecord::ConnectionAdapters::ConnectionPool#with_connection'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:972:in 'ActiveRecord::Migration#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:5:in 'StrongMigrations::Migration#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1186:in 'ActiveRecord::MigrationProxy#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1535:in 'block in ActiveRecord::Migrator#execute_migration_in_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/transaction.rb:626:in 'block in ActiveRecord::ConnectionAdapters::TransactionManager#within_new_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/lib/active_support/concurrency/null_lock.rb:9:in 'ActiveSupport::Concurrency::NullLock#synchronize'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/transaction.rb:623:in 'ActiveRecord::ConnectionAdapters::TransactionManager#within_new_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:367:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#within_new_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:359:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1586:in 'ActiveRecord::Migrator#ddl_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migrator.rb:5:in 'StrongMigrations::Migrator#ddl_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1534:in 'ActiveRecord::Migrator#execute_migration_in_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1508:in 'Array#each'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1508:in 'ActiveRecord::Migrator#migrate_without_lock'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1453:in 'block in ActiveRecord::Migrator#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1606:in 'ActiveRecord::Migrator#with_advisory_lock'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1453:in 'ActiveRecord::Migrator#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1260:in 'ActiveRecord::MigrationContext#up'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration_context.rb:4:in 'StrongMigrations::MigrationContext#up'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1235:in 'ActiveRecord::MigrationContext#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/tasks/database_tasks.rb:270:in 'ActiveRecord::Tasks::DatabaseTasks#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/tasks/database_tasks.rb:248:in 'ActiveRecord::Tasks::DatabaseTasks#migrate_all'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/railties/databases.rake:90:in 'block (2 levels) in <main>'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:281:in 'block in Rake::Task#execute'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:281:in 'Array#each'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:281:in 'Rake::Task#execute'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:219:in 'block in Rake::Task#invoke_with_call_chain'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:199:in 'Monitor#synchronize'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:199:in 'Rake::Task#invoke_with_call_chain'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:188:in 'Rake::Task#invoke'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:188:in 'Rake::Application#invoke_task'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:138:in 'block (2 levels) in Rake::Application#top_level'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:138:in 'Array#each'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:138:in 'block in Rake::Application#top_level'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:147:in 'Rake::Application#run_with_threads'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:132:in 'Rake::Application#top_level'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands/rake/rake_command.rb:27:in 'block (2 levels) in Rails::Command::RakeCommand.perform'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:214:in 'Rake::Application#standard_exception_handling'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands/rake/rake_command.rb:27:in 'block in Rails::Command::RakeCommand.perform'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands/rake/rake_command.rb:44:in 'block in Rails::Command::RakeCommand.with_rake'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/rake_module.rb:59:in 'Rake.with_application'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands/rake/rake_command.rb:41:in 'Rails::Command::RakeCommand.with_rake'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands/rake/rake_command.rb:20:in 'Rails::Command::RakeCommand.perform'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/command.rb:150:in 'Rails::Command.invoke_rake'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/command.rb:67:in 'block in Rails::Command.invoke'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/command.rb:143:in 'Rails::Command.with_argv'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/command.rb:63:in 'Rails::Command.invoke'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands.rb:18:in '<main>'
/app/vendor/ruby-3.4.6/lib/ruby/3.4.0/bundled_gems.rb:82:in 'Kernel.require'
/app/vendor/ruby-3.4.6/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in Kernel#replace_require'
/app/vendor/bundle/ruby/3.4.0/gems/bootsnap-1.18.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in 'Kernel#require'
/app/bin/rails:4:in '<main>'
Caused by:
ActiveRecord::StatementInvalid: PG::InFailedSqlTransaction: ERROR: current transaction is aborted, commands ignored until end of transaction block (ActiveRecord::StatementInvalid)
/app/vendor/bundle/ruby/3.4.0/gems/prometheus_exporter-2.2.0/lib/prometheus_exporter/instrumentation/method_profiler.rb:99:in 'PG::Connection#exec'
/app/vendor/bundle/ruby/3.4.0/gems/prometheus_exporter-2.2.0/lib/prometheus_exporter/instrumentation/method_profiler.rb:99:in 'PG::Connection#async_exec'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/postgresql/database_statements.rb:167:in 'ActiveRecord::ConnectionAdapters::PostgreSQL::DatabaseStatements#perform_query'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:556:in 'block (2 levels) in ActiveRecord::ConnectionAdapters::DatabaseStatements#raw_execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract_adapter.rb:1017:in 'block in ActiveRecord::ConnectionAdapters::AbstractAdapter#with_raw_connection'
/app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/lib/active_support/concurrency/null_lock.rb:9:in 'ActiveSupport::Concurrency::NullLock#synchronize'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract_adapter.rb:986:in 'ActiveRecord::ConnectionAdapters::AbstractAdapter#with_raw_connection'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:555:in 'block in ActiveRecord::ConnectionAdapters::DatabaseStatements#raw_execute'
/app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/lib/active_support/notifications/instrumenter.rb:58:in 'ActiveSupport::Notifications::Instrumenter#instrument'
/app/vendor/bundle/ruby/3.4.0/gems/sentry-rails-6.0.0/lib/sentry/rails/tracing.rb:56:in 'Sentry::Rails::Tracing::SentryNotificationExtension#instrument'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract_adapter.rb:1137:in 'ActiveRecord::ConnectionAdapters::AbstractAdapter#log'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:554:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#raw_execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:591:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#internal_execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:137:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/query_cache.rb:27:in 'ActiveRecord::ConnectionAdapters::AbstractAdapter#execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/postgresql/database_statements.rb:40:in 'ActiveRecord::ConnectionAdapters::PostgreSQL::DatabaseStatements#execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/schema_statements.rb:643:in 'ActiveRecord::ConnectionAdapters::SchemaStatements#add_column'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/postgresql/schema_statements.rb:462:in 'ActiveRecord::ConnectionAdapters::PostgreSQL::SchemaStatements#add_column'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration/default_strategy.rb:10:in 'ActiveRecord::Migration::DefaultStrategy#method_missing'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1055:in 'block in ActiveRecord::Migration#method_missing'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1021:in 'block in ActiveRecord::Migration#say_with_time'
/app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/lib/active_support/benchmark.rb:17:in 'ActiveSupport::Benchmark.realtime'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1021:in 'ActiveRecord::Migration#say_with_time'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1044:in 'ActiveRecord::Migration#method_missing'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:14:in 'block (2 levels) in StrongMigrations::Migration#method_missing'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/checker.rb:127:in 'StrongMigrations::Checker#perform_method'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/checker.rb:112:in 'StrongMigrations::Checker#perform'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:13:in 'block in StrongMigrations::Migration#method_missing'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:12:in 'Kernel#catch'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:12:in 'StrongMigrations::Migration#method_missing'
/app/db/migrate/20251030190924_add_utm_parameters_to_users.rb:6:in 'block in AddUtmParametersToUsers#change'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:31:in 'block in StrongMigrations::Migration#safety_assured'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/checker.rb:30:in 'StrongMigrations::Checker.safety_assured'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:30:in 'StrongMigrations::Migration#safety_assured'
/app/db/migrate/20251030190924_add_utm_parameters_to_users.rb:5:in 'AddUtmParametersToUsers#change'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:990:in 'ActiveRecord::Migration#exec_migration'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:974:in 'block (2 levels) in ActiveRecord::Migration#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/lib/active_support/benchmark.rb:17:in 'ActiveSupport::Benchmark.realtime'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:973:in 'block in ActiveRecord::Migration#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:416:in 'ActiveRecord::ConnectionAdapters::ConnectionPool#with_connection'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:972:in 'ActiveRecord::Migration#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:5:in 'StrongMigrations::Migration#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1186:in 'ActiveRecord::MigrationProxy#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1535:in 'block in ActiveRecord::Migrator#execute_migration_in_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/transaction.rb:626:in 'block in ActiveRecord::ConnectionAdapters::TransactionManager#within_new_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/lib/active_support/concurrency/null_lock.rb:9:in 'ActiveSupport::Concurrency::NullLock#synchronize'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/transaction.rb:623:in 'ActiveRecord::ConnectionAdapters::TransactionManager#within_new_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:367:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#within_new_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:359:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1586:in 'ActiveRecord::Migrator#ddl_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migrator.rb:5:in 'StrongMigrations::Migrator#ddl_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1534:in 'ActiveRecord::Migrator#execute_migration_in_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1508:in 'Array#each'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1508:in 'ActiveRecord::Migrator#migrate_without_lock'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1453:in 'block in ActiveRecord::Migrator#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1606:in 'ActiveRecord::Migrator#with_advisory_lock'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1453:in 'ActiveRecord::Migrator#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1260:in 'ActiveRecord::MigrationContext#up'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration_context.rb:4:in 'StrongMigrations::MigrationContext#up'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1235:in 'ActiveRecord::MigrationContext#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/tasks/database_tasks.rb:270:in 'ActiveRecord::Tasks::DatabaseTasks#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/tasks/database_tasks.rb:248:in 'ActiveRecord::Tasks::DatabaseTasks#migrate_all'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/railties/databases.rake:90:in 'block (2 levels) in <main>'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:281:in 'block in Rake::Task#execute'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:281:in 'Array#each'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:281:in 'Rake::Task#execute'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:219:in 'block in Rake::Task#invoke_with_call_chain'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:199:in 'Monitor#synchronize'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:199:in 'Rake::Task#invoke_with_call_chain'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:188:in 'Rake::Task#invoke'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:188:in 'Rake::Application#invoke_task'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:138:in 'block (2 levels) in Rake::Application#top_level'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:138:in 'Array#each'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:138:in 'block in Rake::Application#top_level'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:147:in 'Rake::Application#run_with_threads'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:132:in 'Rake::Application#top_level'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands/rake/rake_command.rb:27:in 'block (2 levels) in Rails::Command::RakeCommand.perform'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:214:in 'Rake::Application#standard_exception_handling'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands/rake/rake_command.rb:27:in 'block in Rails::Command::RakeCommand.perform'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands/rake/rake_command.rb:44:in 'block in Rails::Command::RakeCommand.with_rake'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/rake_module.rb:59:in 'Rake.with_application'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands/rake/rake_command.rb:41:in 'Rails::Command::RakeCommand.with_rake'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands/rake/rake_command.rb:20:in 'Rails::Command::RakeCommand.perform'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/command.rb:150:in 'Rails::Command.invoke_rake'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/command.rb:67:in 'block in Rails::Command.invoke'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/command.rb:143:in 'Rails::Command.with_argv'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/command.rb:63:in 'Rails::Command.invoke'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands.rb:18:in '<main>'
/app/vendor/ruby-3.4.6/lib/ruby/3.4.0/bundled_gems.rb:82:in 'Kernel.require'
/app/vendor/ruby-3.4.6/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in Kernel#replace_require'
/app/vendor/bundle/ruby/3.4.0/gems/bootsnap-1.18.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in 'Kernel#require'
/app/bin/rails:4:in '<main>'
Caused by:
PG::InFailedSqlTransaction: ERROR: current transaction is aborted, commands ignored until end of transaction block (PG::InFailedSqlTransaction)
/app/vendor/bundle/ruby/3.4.0/gems/prometheus_exporter-2.2.0/lib/prometheus_exporter/instrumentation/method_profiler.rb:99:in 'PG::Connection#exec'
/app/vendor/bundle/ruby/3.4.0/gems/prometheus_exporter-2.2.0/lib/prometheus_exporter/instrumentation/method_profiler.rb:99:in 'PG::Connection#async_exec'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/postgresql/database_statements.rb:167:in 'ActiveRecord::ConnectionAdapters::PostgreSQL::DatabaseStatements#perform_query'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:556:in 'block (2 levels) in ActiveRecord::ConnectionAdapters::DatabaseStatements#raw_execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract_adapter.rb:1017:in 'block in ActiveRecord::ConnectionAdapters::AbstractAdapter#with_raw_connection'
/app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/lib/active_support/concurrency/null_lock.rb:9:in 'ActiveSupport::Concurrency::NullLock#synchronize'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract_adapter.rb:986:in 'ActiveRecord::ConnectionAdapters::AbstractAdapter#with_raw_connection'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:555:in 'block in ActiveRecord::ConnectionAdapters::DatabaseStatements#raw_execute'
/app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/lib/active_support/notifications/instrumenter.rb:58:in 'ActiveSupport::Notifications::Instrumenter#instrument'
/app/vendor/bundle/ruby/3.4.0/gems/sentry-rails-6.0.0/lib/sentry/rails/tracing.rb:56:in 'Sentry::Rails::Tracing::SentryNotificationExtension#instrument'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract_adapter.rb:1137:in 'ActiveRecord::ConnectionAdapters::AbstractAdapter#log'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:554:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#raw_execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:591:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#internal_execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:137:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/query_cache.rb:27:in 'ActiveRecord::ConnectionAdapters::AbstractAdapter#execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/postgresql/database_statements.rb:40:in 'ActiveRecord::ConnectionAdapters::PostgreSQL::DatabaseStatements#execute'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/schema_statements.rb:643:in 'ActiveRecord::ConnectionAdapters::SchemaStatements#add_column'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/postgresql/schema_statements.rb:462:in 'ActiveRecord::ConnectionAdapters::PostgreSQL::SchemaStatements#add_column'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration/default_strategy.rb:10:in 'ActiveRecord::Migration::DefaultStrategy#method_missing'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1055:in 'block in ActiveRecord::Migration#method_missing'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1021:in 'block in ActiveRecord::Migration#say_with_time'
/app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/lib/active_support/benchmark.rb:17:in 'ActiveSupport::Benchmark.realtime'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1021:in 'ActiveRecord::Migration#say_with_time'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1044:in 'ActiveRecord::Migration#method_missing'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:14:in 'block (2 levels) in StrongMigrations::Migration#method_missing'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/checker.rb:127:in 'StrongMigrations::Checker#perform_method'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/checker.rb:112:in 'StrongMigrations::Checker#perform'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:13:in 'block in StrongMigrations::Migration#method_missing'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:12:in 'Kernel#catch'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:12:in 'StrongMigrations::Migration#method_missing'
/app/db/migrate/20251030190924_add_utm_parameters_to_users.rb:6:in 'block in AddUtmParametersToUsers#change'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:31:in 'block in StrongMigrations::Migration#safety_assured'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/checker.rb:30:in 'StrongMigrations::Checker.safety_assured'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:30:in 'StrongMigrations::Migration#safety_assured'
/app/db/migrate/20251030190924_add_utm_parameters_to_users.rb:5:in 'AddUtmParametersToUsers#change'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:990:in 'ActiveRecord::Migration#exec_migration'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:974:in 'block (2 levels) in ActiveRecord::Migration#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/lib/active_support/benchmark.rb:17:in 'ActiveSupport::Benchmark.realtime'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:973:in 'block in ActiveRecord::Migration#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:416:in 'ActiveRecord::ConnectionAdapters::ConnectionPool#with_connection'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:972:in 'ActiveRecord::Migration#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration.rb:5:in 'StrongMigrations::Migration#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1186:in 'ActiveRecord::MigrationProxy#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1535:in 'block in ActiveRecord::Migrator#execute_migration_in_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/transaction.rb:626:in 'block in ActiveRecord::ConnectionAdapters::TransactionManager#within_new_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/lib/active_support/concurrency/null_lock.rb:9:in 'ActiveSupport::Concurrency::NullLock#synchronize'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/transaction.rb:623:in 'ActiveRecord::ConnectionAdapters::TransactionManager#within_new_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:367:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#within_new_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/connection_adapters/abstract/database_statements.rb:359:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1586:in 'ActiveRecord::Migrator#ddl_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migrator.rb:5:in 'StrongMigrations::Migrator#ddl_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1534:in 'ActiveRecord::Migrator#execute_migration_in_transaction'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1508:in 'Array#each'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1508:in 'ActiveRecord::Migrator#migrate_without_lock'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1453:in 'block in ActiveRecord::Migrator#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1606:in 'ActiveRecord::Migrator#with_advisory_lock'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1453:in 'ActiveRecord::Migrator#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1260:in 'ActiveRecord::MigrationContext#up'
/app/vendor/bundle/ruby/3.4.0/gems/strong_migrations-2.5.1/lib/strong_migrations/migration_context.rb:4:in 'StrongMigrations::MigrationContext#up'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/migration.rb:1235:in 'ActiveRecord::MigrationContext#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/tasks/database_tasks.rb:270:in 'ActiveRecord::Tasks::DatabaseTasks#migrate'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/tasks/database_tasks.rb:248:in 'ActiveRecord::Tasks::DatabaseTasks#migrate_all'
/app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.3/lib/active_record/railties/databases.rake:90:in 'block (2 levels) in <main>'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:281:in 'block in Rake::Task#execute'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:281:in 'Array#each'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:281:in 'Rake::Task#execute'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:219:in 'block in Rake::Task#invoke_with_call_chain'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:199:in 'Monitor#synchronize'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:199:in 'Rake::Task#invoke_with_call_chain'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/task.rb:188:in 'Rake::Task#invoke'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:188:in 'Rake::Application#invoke_task'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:138:in 'block (2 levels) in Rake::Application#top_level'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:138:in 'Array#each'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:138:in 'block in Rake::Application#top_level'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:147:in 'Rake::Application#run_with_threads'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:132:in 'Rake::Application#top_level'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands/rake/rake_command.rb:27:in 'block (2 levels) in Rails::Command::RakeCommand.perform'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/application.rb:214:in 'Rake::Application#standard_exception_handling'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands/rake/rake_command.rb:27:in 'block in Rails::Command::RakeCommand.perform'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands/rake/rake_command.rb:44:in 'block in Rails::Command::RakeCommand.with_rake'
/app/vendor/bundle/ruby/3.4.0/gems/rake-13.3.1/lib/rake/rake_module.rb:59:in 'Rake.with_application'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands/rake/rake_command.rb:41:in 'Rails::Command::RakeCommand.with_rake'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands/rake/rake_command.rb:20:in 'Rails::Command::RakeCommand.perform'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/command.rb:150:in 'Rails::Command.invoke_rake'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/command.rb:67:in 'block in Rails::Command.invoke'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/command.rb:143:in 'Rails::Command.with_argv'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/command.rb:63:in 'Rails::Command.invoke'
/app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.3/lib/rails/commands.rb:18:in '<main>'
/app/vendor/ruby-3.4.6/lib/ruby/3.4.0/bundled_gems.rb:82:in 'Kernel.require'
/app/vendor/ruby-3.4.6/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in Kernel#replace_require'
/app/vendor/bundle/ruby/3.4.0/gems/bootsnap-1.18.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in 'Kernel#require'
/app/bin/rails:4:in '<main>'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)
root@dawarich-staging:~#