discourse/lib/freedom_patches
Alan Guo Xiang Tan 408d2f8e69
DEV: Adds a freedom patch to cache connection type map (#25923)
Why this change?

This patch has been added to address the problems identified in https://github.com/rails/rails/issues/35311. For every,
new connection created using the PostgreSQL adapter, 3 queries are executed to fetch type map information from the `pg_type`
system catalog, adding about 1ms overhead to every connection creation.

On multisite clusters where connections are reaped more aggressively, the 3 queries executed
accounts for a significant portion of CPU usage on the PostgreSQL cluster. This patch works around the problem by
caching the type map in a class level attribute to reuse across connections.
2024-02-28 14:29:13 +08:00
..
active_record_attribute_methods.rb DEV: Clean up freedom patches 2022-04-06 10:07:14 +02:00
ams_include_without_root.rb
cache_postgresql_connection_type_map.rb DEV: Adds a freedom patch to cache connection type map (#25923) 2024-02-28 14:29:13 +08:00
copy_file.rb DEV: Work around a Docker issue (#13368) 2021-06-14 17:38:36 +02:00
cose_rsapkcs1.rb DEV: Apply syntax_tree formatting to lib/* 2023-01-09 12:10:19 +00:00
fast_pluck.rb DEV: Apply syntax_tree formatting to lib/* 2023-01-09 12:10:19 +00:00
inflector_backport.rb DEV: Apply syntax_tree formatting to lib/* 2023-01-09 12:10:19 +00:00
ip_addr.rb DEV: Fix various rubocop lints (#24749) 2023-12-06 23:25:00 +01:00
mail_disable_starttls.rb DEV: Apply syntax_tree formatting to lib/* 2023-01-09 12:10:19 +00:00
rails_multisite.rb DEV: Make multisite freedom patch compatible with Rails 7.1+ 2023-05-31 14:29:14 +02:00
rails4.rb DEV: Move distance_of_time_in_words/time_ago_in_words (#21745) 2023-05-25 14:53:59 +02:00
safe_buffer.rb DEV: Apply syntax_tree formatting to lib/* 2023-01-09 12:10:19 +00:00
safe_migrations.rb DEV: Apply syntax_tree formatting to lib/* 2023-01-09 12:10:19 +00:00
schema_migration_details.rb DEV: Apply syntax_tree formatting to lib/* 2023-01-09 12:10:19 +00:00
sprockets_patches.rb DEV: Simplify sprockets configuration (#24111) 2023-10-26 17:29:53 +01:00
translate_accelerator.rb UX: Add show more button to long post queued reviewables (#23075) 2023-08-14 10:11:30 -07:00
web_push_request.rb SECURITY: Monkey-patch web-push gem to use safer HTTP client 2023-03-16 15:27:09 -06:00