Skip to content

[IMP] project_ux: index followers of tasks by partner - #150

Open
ced-adhoc wants to merge 1 commit into
ingadhoc:18.0from
adhoc-dev:18.0-t-72145-ced-followers
Open

ced-adhoc wants to merge 1 commit into
ingadhoc:18.0from
adhoc-dev:18.0-t-72145-ced-followers

Conversation

@ced-adhoc

@ced-adhoc ced-adhoc commented Oct 2, 2026 •

Copy link
Copy Markdown

Tarea: https://www.adhoc.inc/odoo/project.task/72145

Índice parcial en mail_followers (partner_id, res_id) WHERE res_model = 'project.task'. Las reglas de acceso de project.task buscan las tareas que sigue el usuario en cada consulta; con usuarios que siguen decenas de miles, es la mayor parte del costo. No cambia la regla ni quién ve qué.

Validación local: instalado desde 18.0 sin índice; con -u en esta rama se crea mail_followers_project_task_partner_id_res_id_index y la regla lo usa. Con ~120.000 tareas y un usuario que sigue ~55.000, el botón "Tareas" de una orden pasa de ~40 a ~19 ms y contar todas las tareas, de ~72 a ~52 ms.

Al mergear: bump. El forward-port lo lleva a 19.0.

Relacionado: #149, ingadhoc/sale#1880, ingadhoc/sale#1884.

Add a partial index on mail_followers (partner_id, res_id) for
project.task rows. The project.task record rules check if the user
follows the task, and with many followed tasks per user that
subquery is most of the cost of task counts and searches.
Copilot AI balanced review requested due to automatic review settings October 2, 2026 20:12
@roboadhoc

Copy link
Copy Markdown
Contributor

Pull request status dashboard

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟢 Approval recommended

El cambio es acotado, coincide con la consulta objetivo y no presenta problemas bloqueantes; el incremento de versión está previsto al integrar.

Review effort: Balanced
Findings: None

What changed in this PR

Optimiza las consultas de tareas por seguidores sin modificar las reglas de acceso.

Cambios:

  • Agrega un índice parcial sobre (partner_id, res_id) para seguidores de project.task.
  • Registra la extensión del modelo para crear el índice al instalar o actualizar el módulo.
File Description
project_ux/​models/​mail_followers.py Crea el índice parcial desde init().
project_ux/​models/​__init__.py Importa la extensión de seguidores.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@ced-adhoc ced-adhoc changed the title [WIP] [IMP] project_ux: index followers of tasks by partner [IMP] project_ux: index followers of tasks by partner Oct 2, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants