When two or more people try to claim the same work item, only one
person will succeed. The other person is denied access.
Only one person can claim a work item. When several people attempt to work
with the same work item at the same time, the probability of collision increases.
Collisions cause delays, because of lock waits on the database or rollbacks.
Some ways to avoid, or at least reduce, the incidence of collision are as
follows:
- If concurrent access is high, limit the number of users who can access
a particular work item to 10 through 50. This should reduce the incidence
of the message that the work item has already been claimed.
- Avoid unnecessary work item queries from clients, by using intelligent
claim mechanisms. For example, you might take one of the following steps:
- Try to claim another item from the list if the first claim is unsuccessful.
- Always claim a random work item.
- Reduce the number of people in each group.
- Limit the size of the work item list, either by using a custom property
in the where clause of the query or by setting a low threshold.
- Minimize or avoid dynamic staff queries.
- Use a client caching mechanism for work item queries, to
avoid running several queries at the same time.