Forum OpenACS Development: URGENT call for HELP: Bug Tracker Improvement Needs

We need to do serious performance tuning on bug-tracker and sadly we need to do it fast, otherwise openacs.org will be in trouble.

A) Bug Tracker needs pagination. Timo and I tried around a little bit, but did not get far (due to lack of time).

B) select_action_assignees takes for ages:

2081 ms       select       dbqd.bug-tracker.tcl.bug-procs.bug_tracker::bug::get_list.select_action_assignees: select nsdb0

select p.first_names || ' ' || p.last_name as name,
      crum.user_id,
      count(b.bug_id) as num_bugs
from  bt_bugs b,
      workflow_case_assigned_actions aa left outer join
      workflow_case_role_user_map crum on (crum.case_id = aa.case_id and crum.role_id = aa.role_id) left outer join
      persons p on (p.person_id = crum.user_id)
where  b.project_id = '56106'
and    aa.workflow_id = '216824'
and    aa.action_id = '18'
and    aa.object_id = b.bug_id
group  by p.first_names, p.last_name, crum.user_id

At least part B) seems to be solved after I rerun "vacuumdb --full --analyze openacs.org". At least it only takes 300 ms at the moment (but maybe I just got lucky).
Collapse
Posted by Don Baccus on
Remember that after vacuuming (vacuumdb does an ANALYZE I presume?) you may have to restart AOLserver in order to see results.  Inline queries will improve but calls to PL/pgSQL functions will not as they're compiled the first time they're used by a backend and aren't recompiled after ANALYZE.

And I'll help with pagination as we've discussed via e-mail.