From 1550dde3d9576f13e64502ed6bc58663695cd47f Mon Sep 17 00:00:00 2001 From: Andrej Blagojevic Date: Thu, 8 Sep 2022 16:26:35 +0100 Subject: [PATCH] Skip some default checks for non-mariaDB databases --- .../connection_adapters/mysql/schema_statements.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/activerecord/lib/active_record/connection_adapters/mysql/schema_statements.rb b/activerecord/lib/active_record/connection_adapters/mysql/schema_statements.rb index 67ef8c1ec2d77..3f5b57120e9c1 100644 --- a/activerecord/lib/active_record/connection_adapters/mysql/schema_statements.rb +++ b/activerecord/lib/active_record/connection_adapters/mysql/schema_statements.rb @@ -185,9 +185,9 @@ def new_column_from_field(table_name, field) elsif type_metadata.type == :text && default&.start_with?("'") # strip and unescape quotes default = default[1...-1].gsub("\\'", "'") - elsif default&.match?(/\A\d/) + elsif mariadb? && default&.match?(/\A\d/) # Its a number so we can skip the query to check if it is a function - elsif default && default_type(table_name, field_name) == :function + elsif mariadb? && default && default_type(table_name, field_name) == :function default, default_function = nil, default end