From 1c42957891d0a5e5249127aaa7c0bfa156083812 Mon Sep 17 00:00:00 2001 From: Vishnu Narayanan Date: Tue, 18 Mar 2025 07:57:05 +0530 Subject: [PATCH 1/2] perf: enable active record connection pool reaper (#10866) The pg_stat_activity data showed a lot of idle connections. This affects the total number of database connections available which resulted in production incidents during the weekend. > reaping_frequency: frequency in seconds to periodically run the Reaper, which attempts to find and recover connections from dead threads, which can occur if a programmer forgets to close a connection at the end of a thread or a thread dies unexpectedly. Regardless of this setting, the Reaper will be invoked before every blocking wait. (Default nil, which means don't schedule the Reaper). Ref: https://api.rubyonrails.org/v5.1/classes/ActiveRecord/ConnectionAdapters/ConnectionPool.html --- config/database.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/config/database.yml b/config/database.yml index 5cd278f8d..0577e3ee6 100644 --- a/config/database.yml +++ b/config/database.yml @@ -5,6 +5,9 @@ default: &default port: <%= ENV.fetch('POSTGRES_PORT', '5432') %> # ref: https://github.com/mperham/sidekiq/issues/2985#issuecomment-531097962 pool: <%= Sidekiq.server? ? ENV.fetch('SIDEKIQ_CONCURRENCY', 10) : ENV.fetch('RAILS_MAX_THREADS', 5) %> + # frequency in seconds to periodically run the Reaper, which attempts + # to find and recover connections from dead threads + reaping_frequency: <%= ENV.fetch('DB_POOL_REAPING_FREQUENCY', 30) %> variables: # we are setting this value to be close to the racktimeout value. we will iterate and reduce this value going forward statement_timeout: <%= ENV["POSTGRES_STATEMENT_TIMEOUT"] || "14s" %> From 3dc7045340ecb81cfcd2cda2f87e87e33d362787 Mon Sep 17 00:00:00 2001 From: Sivin Varghese <64252451+iamsivin@users.noreply.github.com> Date: Tue, 18 Mar 2025 09:21:56 +0530 Subject: [PATCH 2/2] fix: Dropdown for custom attributes in conversation sidebar hides under the list (#11099) # Pull Request Template ## Description This PR fixes the issue where the custom attributes type list dropdown in the conversation sidebar gets hidden under the section. ## Type of change - [x] Bug fix (non-breaking change which fixes an issue) ## How Has This Been Tested? ### Screenshots **Before** image **After** image ## Checklist: - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my code - [ ] I have commented on my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] Any dependent changes have been merged and published in downstream modules --- .../conversation/customAttributes/CustomAttributes.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/javascript/dashboard/routes/dashboard/conversation/customAttributes/CustomAttributes.vue b/app/javascript/dashboard/routes/dashboard/conversation/customAttributes/CustomAttributes.vue index 01fbe9b71..4f0cf6340 100644 --- a/app/javascript/dashboard/routes/dashboard/conversation/customAttributes/CustomAttributes.vue +++ b/app/javascript/dashboard/routes/dashboard/conversation/customAttributes/CustomAttributes.vue @@ -271,7 +271,7 @@ const evenClass = [ ghost-class="ghost" handle=".drag-handle" item-key="key" - class="last:rounded-b-lg overflow-hidden" + class="last:rounded-b-lg" :class="evenClass" @start="dragging = true" @end="onDragEnd"