We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:
Post your ideas
Post ideas and requests to enhance a product or service. Take a look at ideas others have posted and upvote them if they matter to you,
Post an idea
Upvote ideas that matter most to you
Get feedback from the IBM team to refine your idea
Help IBM prioritize your ideas and requests
The IBM team may need your help to refine the ideas so they may ask for more information or feedback. The product management team will then decide if they can begin working on your idea. If they can start during the next development cycle, they will put the idea on the priority list. Each team at IBM works on a different schedule, where some ideas can be implemented right away, others may be placed on a different schedule.
Receive notification on the decision
Some ideas can be implemented at IBM, while others may not fit within the development plans for the product. In either case, the team will let you know as soon as possible. In some cases, we may be able to find alternatives for ideas which cannot be implemented in a reasonable time.
new aggregated WLM threshold for LOCKLIST at workload/service class level
We have MAXLOCK db-cfg parameter which can be used to avoid a single connection (UOW) to consume the LOCKLIST space.
But this parameter some times it not enough. I have seen LOCK escalation cases happening (which locked system tables, causing huge LOCK CHAIN contention for hours) in the database, because there was too much concurrent applications running together, but none of them breached the MAXLOCK limit individually, but all of them consumed like 10 to 15% of the lock-list individually, exhausting the resource, and preventing it to be used by other "good" regular workload .
We need to have the ability to control the locklist in a more aggregated fashion, either at WORKLOAD , and/or at SERVICE CLASS level.
The final purpose is to manage the locks are resource to be used in a more intelligent way, avoiding specific workload (together) to consume all of it, and preventing other "good" users to use them as well.
Same way we do have options to control concurrent usage of TEMPSPACE (AGGSQLTEMPSPACE)by any given workload/service class, we should also have the same capability to control this important shared resource, which is the LOCKLIST utilization.
This way we could prevent "bad workloads" to consume this important resource, either by QUEUEING them, or CANCELING their activity.
It's important to note as well, that as part of this new threshold violation, the database engine should not ESCALATE the locks, as our purpose is to avoid ESCALATIONS , which will result in other problems like lock contention and lock chains scenarios. If this threshold is breached (collectively), it means we are in a heavy-workload scenario, so escalating LOCKS will just make things worst.
So, from threshold ACTIONs point of view, we either QUEUE the activity to be retried later on, when the lock-list get reduced (by the same workload) , or either we CANCEL the activity retuning an error to the application.
This new aggregated lock utilization threshold could be defined as a percentage (%) of the entire lock-list , same way the MAXLOCK parameter!
Do not place IBM confidential, company confidential, or personal information into any field.