Performance issues with userlistAction

XMLWordPrintable

    • Critical
    • Loading users for tasks may lead to excessive full scans and per-row subquery execution, slowing down the DB. This is optimised.

      Problem

      The current SQL query that retrieves users with their assigned tasks runs extremely slowly (up to 500 seconds in production).

      More over users in the list are not filtered according to permissions.

      Solution

      Redo list building that will also respect permissions of logged in user.

      To do so set of rules should be checked:

      1. List should contain only users that have some jobs in tasks.
      2. Only those users that belong to allowed for user tasks (those that are in overview) can be in list.
      3. Admin should be able able to see all users.
      4. PM can see all simple users + coordinators of top coordinator groups
      5. Client PM can see all simple users in tasks of his clients or he is PM of task + coordinators of top coordinator groups in tasks of his clients or he is PM of task + simple users of tasks where he is editor if task not anonymised
      6. Light PM can see all simple users in tasks where he is PM + coordinators of top coordinator groups in tasks where he is PM + simple users of tasks where he is editor if task not anonymised
      7. Coordinator can see only users of his coordinator group and Coordinator of his direct sub-groups
      8. Coordinator group user can see only users of his coordinator group if task not anonymised
      9. Simple editor can see simple users if task not anonymised. If editor assigned as PM of a task: simple users in tasks where he is PM + coordinators of top coordinator groups in tasks where he is PM

      Front End Testing

      Ensure that task overview filtering does now as described above.
       
       

       
       
       
       

       

            Assignee:
            Sanya Mikhliaiev
            Reporter:
            Thomas Lauria
            Thomas Lauria
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: