My Rails backend becomes too slow on the queries that include filters. The local and staging environments are way faster for the same queries but the production environment(having much better servers) is way too slow. The amount of data in staging and development is ~ 134000 records for the particular model. And on production it is ~ 150000 records for the model that is slow on filter queries. Production is taking ~40000 ms to load the index. Logs.
2022-09-20T08:48:24.696263+00:00 app[web.1]: I, [2022-09-20T08:48:24.696196 #3] INFO -- : [76f22ddd-486a-4157-bf5e-8f3b4afa6fca] Started GET "/admin/listing?model_name=listing&utf8=%E2%9C%93&query=Missouri&_pjax=%5Bdata-pjax-container%5D" for 172.70.147.182 at 2022-09-20 08:48:24 +0000
2022-09-20T08:48:24.706653+00:00 app[web.1]: I, [2022-09-20T08:48:24.706580 #3] INFO -- : [76f22ddd-486a-4157-bf5e-8f3b4afa6fca] Processing by RailsAdmin::MainController#index as HTML
2022-09-20T08:48:24.706693+00:00 app[web.1]: I, [2022-09-20T08:48:24.706659 #3] INFO -- : [76f22ddd-486a-4157-bf5e-8f3b4afa6fca] Parameters: {"model_name"=>"listing", "utf8"=>"✓", "query"=>"Missouri", "_pjax"=>"[data-pjax-container]"}
2022-09-20T08:48:25.634623+00:00 app[web.1]: I, [2022-09-20T08:48:25.634511 #3] INFO -- : [76f22ddd-486a-4157-bf5e-8f3b4afa6fca] Rendering vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/rails_admin/main/index.html.haml within layouts/rails_admin/pjax
2022-09-20T08:48:26.626621+00:00 app[web.1]: I, [2022-09-20T08:48:26.626531 #3] INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2] Started GET "/admin/listing?model_name=listing&utf8=%E2%9C%93&query=Missouri" for 172.70.147.182 at 2022-09-20 08:48:26 +0000
2022-09-20T08:48:26.627933+00:00 app[web.1]: I, [2022-09-20T08:48:26.627863 #3] INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2] Processing by RailsAdmin::MainController#index as HTML
2022-09-20T08:48:26.627975+00:00 app[web.1]: I, [2022-09-20T08:48:26.627937 #3] INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2] Parameters: {"model_name"=>"listing", "utf8"=>"✓", "query"=>"Missouri"}
2022-09-20T08:48:27.608308+00:00 app[web.1]: I, [2022-09-20T08:48:27.608202 #3] INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2] Rendering vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/rails_admin/main/index.html.haml within layouts/rails_admin/application
2022-09-20T08:49:05.644054+00:00 app[web.1]: I, [2022-09-20T08:49:05.643938 #3] INFO -- : [76f22ddd-486a-4157-bf5e-8f3b4afa6fca] Rendered vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/rails_admin/main/index.html.haml within layouts/rails_admin/pjax (40009.3ms)
2022-09-20T08:49:05.650745+00:00 app[web.1]: I, [2022-09-20T08:49:05.650658 #3] INFO -- : [76f22ddd-486a-4157-bf5e-8f3b4afa6fca] Completed 200 OK in 40944ms (Views: 58.3ms | ActiveRecord: 40596.8ms)
2022-09-20T08:49:07.592857+00:00 app[web.1]: I, [2022-09-20T08:49:07.592762 #3] INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2] Rendered vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/rails_admin/main/index.html.haml within layouts/rails_admin/application (39984.4ms)
2022-09-20T08:49:07.593402+00:00 app[web.1]: I, [2022-09-20T08:49:07.593325 #3] INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2] Rendered vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/layouts/rails_admin/_head.html.haml (0.4ms)
2022-09-20T08:49:07.595530+00:00 app[web.1]: I, [2022-09-20T08:49:07.595465 #3] INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2] Rendered vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/layouts/rails_admin/_secondary_navigation.html.haml (1.6ms)
2022-09-20T08:49:07.595630+00:00 app[web.1]: I, [2022-09-20T08:49:07.595589 #3] INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2] Rendered vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/layouts/rails_admin/_navigation.html.haml (1.9ms)
2022-09-20T08:49:07.608988+00:00 app[web.1]: I, [2022-09-20T08:49:07.608929 #3] INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2] Rendered vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/layouts/rails_admin/_sidebar_navigation.html.haml (13.2ms)
2022-09-20T08:49:07.609182+00:00 app[web.1]: I, [2022-09-20T08:49:07.609140 #3] INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2] Rendering vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/layouts/rails_admin/pjax.html.haml
2022-09-20T08:49:07.612388+00:00 app[web.1]: I, [2022-09-20T08:49:07.612333 #3] INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2] Rendered vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/layouts/rails_admin/pjax.html.haml (3.1ms)
2022-09-20T08:49:07.612715+00:00 app[web.1]: I, [2022-09-20T08:49:07.612623 #3] INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2] Completed 200 OK in 40985ms (Views: 73.4ms | ActiveRecord: 40601.5ms)
My rails_admin.rb
config.model Listing do
list do
scopes %i[active archived only_active pending sold unlisted]
items_per_page 10
field :id
field :created_at do
pretty_value do
value.in_time_zone('Arizona').strftime('%B %d, %Y %I:%M')
end
end
field :updated_at do
pretty_value do
value.in_time_zone('Arizona').strftime('%B %d, %Y %I:%M')
end
end
field :status
field :price
field :address
field :address2
field :listing_type
field :city
field :notes
field :seller
field :user
field :images
field :documents
field :video
field :offers
field :appointments
field :user_favorite_listings
field :favorite_by
field :lender_prequalifications
end
end