28.11.2014 Views

Performance Tuning Guide - EMC Community Network

Performance Tuning Guide - EMC Community Network

Performance Tuning Guide - EMC Community Network

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Designing the Application<br />

Rendering task lists<br />

Poor performance for task list rendering (list of eligible tasks take a long time after user clicks the<br />

tasks tab) can occur because the task list query returns many tasks, additional row by row processing<br />

occurs on task list query results, or both. To maximize performance of task list rendering:<br />

• Design your work queues and skill sets properly (Designing task lists (work queues), page 47.<br />

• Minimize the use of custom preconditions (Avoiding unnecessary preconditions, page 50).<br />

• Consider partitioning large work queues into several smaller work queues (Filtering a task list<br />

and partitioning a work queue, page 49).<br />

• Constrain the query results for large result sets (Constraining query results for large result sets,<br />

page 49).<br />

Note: If a task list includes pseudo attributes (specifically package names), another query is issued to<br />

get the object names of the package documents associated with each task.<br />

To measure task list rendering performance, collect a DFC trace on the TaskSpace application<br />

server for a single user. The DFC trace shows all the queries issued when user clicks the tasks tab.<br />

Analyze the task list query to determine the performance issue with the query (Chapter 7, Measuring<br />

<strong>Performance</strong>). Hot fixes and future releases (6.6, for example) eliminate some additional queries.<br />

Filtering a task list and partitioning a work queue<br />

System capacity can be exceeded when working with large work queues (approximately 50,000 tasks)<br />

during peak loads. In such cases, partition the work queue into multiple queues that satisfy different<br />

criteria, or design forms that filter displayed tasks by date range (for example: today, last seven days,<br />

and so on). Both these approaches limit the number of results returned to a task list.<br />

Troubleshooting the get next task function<br />

The get next task function can be implemented by clicking the Get Next Task button or by setting a<br />

preference in TaskSpace so that the next task automatically displays after completion of a task.<br />

When the get next task function executes automatically, the get next task stored procedure executes<br />

first, followed by rendering of the task form. <strong>Performance</strong> issues with the get next task function can<br />

result from problems with the task form, the get next task procedure, or both.<br />

To isolate whether there is a problem with the form, collect a DFC trace while manually clicking on<br />

the task list to open a task, which does not involve the get next task procedure. If rendering the form<br />

manually performs well, focus on the procedure. If the form performs poorly, focus on the form itself.<br />

Constraining query results for large result sets<br />

Poor performance for task list rendering can result when a work queue contains thousands of tasks<br />

and the task list query does not limit (constrain) the number of results returned from the database.<br />

<strong>EMC</strong> Documentum xCP 1.0 <strong>Performance</strong> <strong>Tuning</strong> <strong>Guide</strong> 49

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!