From 3c7f48b8b99168cb6a1cb5f9f31fb200a400f777 Mon Sep 17 00:00:00 2001 From: Jean Boussier Date: Thu, 27 Jul 2023 10:29:02 +0200 Subject: [PATCH] Sort SchemaCache members when dumping it Ref: https://github.com/rails/rails/issues/42717 This allow to result to be consistent, allowing to use its digest for cache keys and such. --- .../lib/active_record/connection_adapters/schema_cache.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/activerecord/lib/active_record/connection_adapters/schema_cache.rb b/activerecord/lib/active_record/connection_adapters/schema_cache.rb index fb0def8dcf..b46fe058e1 100644 --- a/activerecord/lib/active_record/connection_adapters/schema_cache.rb +++ b/activerecord/lib/active_record/connection_adapters/schema_cache.rb @@ -278,10 +278,10 @@ def initialize_dup(other) # :nodoc: end def encode_with(coder) # :nodoc: - coder["columns"] = @columns - coder["primary_keys"] = @primary_keys - coder["data_sources"] = @data_sources - coder["indexes"] = @indexes + coder["columns"] = @columns.sort.to_h + coder["primary_keys"] = @primary_keys.sort.to_h + coder["data_sources"] = @data_sources.sort.to_h + coder["indexes"] = @indexes.sort.to_h coder["version"] = @version coder["database_version"] = @database_version end