# Ajout d'index et d'un cache sur les "en quelques chiffres" d'oblyk



- **Revision:** f4942ce0f7f6526cf4e2fa876f9e213482de105c
- **Author:** clucien
- **Period:** 2026-06-28 15:26:35 UTC – 2026-06-28 17:59:05 UTC
- **Duration:** 2 hours, 32 minutes, and 30 seconds

## Requests

- **95P:** 48.3 ms
- **Throughput:** 146.49 /min
- **Errors:** 0.03581%

| Name | 95P ms | Throughput /min | Impact |
| ---- | -----: | --------------: | -----: |
| Api::V1::CragsController#geo_json | 909 | 1.31 | 19.0% |
| Api::V1::CragsController#show | 32 | 16.18 | 7.4% |
| Api::V1::PublicationsController#my_publication_feed | 223 | 2.01 | 5.6% |
| Api::V1::PartnersController#partners_around | 105 | 3.61 | 5.2% |
| Api::V1::GymRoutesController#paginated | 82 | 4.81 | 4.7% |
| Api::V1::GymsController#geo_json | 1637 | 0.11 | 3.2% |
| Api::V1::GymsController#show | 64 | 3.8 | 3.1% |
| Api::V1::PublicationViewsController#my_unread_count | 112 | 1.88 | 2.5% |
| Api::V1::GymSectorsController#show | 26 | 10.02 | 2.4% |
| Api::V1::GymsController#ascent_scores | 693 | 0.22 | 2.3% |
| Api::V1::CurrentUsersController#show | 38 | 4.82 | 2.1% |
| Api::V1::CragRoutesController#index | 40 | 3.73 | 2.0% |
| Api::V1::CommonsController#figures | 983 | 0.12 | 2.0% |
| Api::V1::CragSectorsController#show | 20 | 5.99 | 1.8% |
| Api::V1::GymSpacesController#groups | 59 | 2.07 | 1.7% |
| Api::V1::TownsController#geo_json | 65 | 1.7 | 1.4% |
| Api::V1::GymSpacesController#show | 73 | 1.36 | 1.4% |
| Api::V1::CragRoutesController#show | 33 | 2.96 | 1.3% |
| Api::V1::CragsController#index | 123 | 0.66 | 1.2% |
| Api::V1::AscentGymRoutesController#index | 41 | 1.93 | 1.2% |
| Api::V1::TownsController#show | 10 | 9.0 | 1.2% |

## Jobs

- **95P:** 384.2 ms
- **Throughput:** 0.1 /min
- **Errors:** 0.00000%

| Name | 95P ms | Throughput /min | Impact |
| ---- | -----: | --------------: | -----: |
| ActiveStorage::AnalyzeJob | 553 | 0.03 | 48.0% |
| ActionMailer::MailDeliveryJob | 334 | 0.05 | 40.6% |
| EmailNotificationJob | 305 | 0.01 | 10.6% |

## Errors
| Exception | Message | Location | Count | Last |
| --------- | ------- | -------- | ----: | ---- |
| **NoMethodError** | undefined method `first&#39; for nil:NilClass | app/models/color.rb:7 | 4 | 28 Jun 17:26 |
| **NoMethodError** | undefined method `level_color&#39; for nil:NilClass | app/controllers/api/v1/climbing_sessions_controller.rb:111 | 1 | 28 Jun 17:08 |
| **NoMethodError** | undefined method `detail_to_json&#39; for nil:NilClass | app/controllers/api/v1/departments_controller.rb:26 | 1 | 28 Jun 16:39 |
| **NoMethodError** | undefined method `+&#39; for nil:NilClass | app/controllers/api/v1/gyms_controller.rb:175 | 1 | 28 Jun 15:37 |
| **NoMethodError** | undefined method `summary_to_json&#39; for nil:NilClass | app/models/follow.rb:52 | 1 | 28 Jun 15:44 |

[View on RoRvsWild ↗](https://www.rorvswild.com/applications/135627/deployments/66894)
