Restructure omni services and add Chatwoot research snapshot

This commit is contained in:
Ruslan Bakiev
2026-02-21 11:11:27 +07:00
parent edea7a0034
commit b73babbbf6
7732 changed files with 978203 additions and 32 deletions

View File

@@ -0,0 +1,22 @@
class AddIndexToMessages < ActiveRecord::Migration[7.0]
disable_ddl_transaction!
def change
# This index is added as a temporary fix for performance issues in the CSAT
# responses controller where we query messages with account_id, content_type
# and created_at. The current implementation (account.message.input_csat.count)
# times out with millions of messages.
#
# TODO: Create a dedicated csat_survey table and add entries when surveys are
# sent, then query this table instead of the entire messages table for better
# performance.
return if index_exists?(
:messages,
[:account_id, :content_type, :created_at],
name: 'idx_messages_account_content_created'
)
add_index :messages, [:account_id, :content_type, :created_at],
name: 'idx_messages_account_content_created', algorithm: :concurrently
end
end