This portal is to open public enhancement requests against products and services offered by the IBM Data & AI organization. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (https://ideas.ibm.com).
Shape the future of IBM!
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:
Search existing ideas
Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,
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
Specific links you will want to bookmark for future use
Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.
IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.
ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.
IBM Employees should enter Ideas at https://ideas.ibm.com
I was having a conversation with Anthony Ciabattoni after his "Db2 for z/OS DDF SWAT" presentation, and he suggested I open this request.
We were specifically discussing the RQSTWLB feature delivered in FL502 of Db2 13, and I mentioned that client compliance with proprietary JDBC driver parameters is difficult to enforce, especially with most development going to PaaS/Cloud environments, and that being able to "request" that the driver enable certain JDBC parameters for the Data Server Driver from the system-end would be useful for Db2 Operations staff.
The more JDBC DS Driver parameters we can set, either by Default (i.e. like RQSTWLB) or by specific client (Profiles??) from the server-side, the less we the Sysadmins have a need to enforce compliance on the Client-end. The developers don't want to have to care about Db2-specific parameters...they just want to point to the JDBC driver class, set up their data-source, and "be off"...we the Admins are always the ones trying to enforce Db2-specific settings, so the more of them we can "suggest" ourselves (provided the developer hasn't explicitly overridden them), the better.
The reason we were looking at Transport Object settings is because we were discussing them tangential to the enableSysplexWLB setting.
One problem we've experienced in the past is that developers in a Cloud environment will often over-provision instances or pods...leading to tens or hundreds of running instances, each with only ONE connection/socket to DB2 at a time, since the volume is often not significant enough to any one node to need a second.
With one connection, when we recycle the Db2 group, all instances have a habit of "storm-draining" to the first available member with their one transport, resulting in virtually all work being routed to that member subsystem. This could also impede workload balancing, if there's enough workflow that the single transport is never idle for more than maxTransportObjectIdleTime, but never busy enough to merit a second transport.
We therefore recommend that developers set minTransportObjects to some number > 1 at our shop. Even if the first connections are all to one member, the additional connections, if idle, would eventually hit maxTransportObjectIdleTime and re-balance to other members, providing alternate targets for balancing DDF workload and allowing the balance to react to changing conditions on the sysplex, as well as having connections to other members to support seamless ACR.
Setting maxTransportObjects also makes sense, as developers also can over-provision application threads on their end. Being able to instruct their JDBC driver instance to limit itself to a set number of transport objects allows us to throttle individual apps from the client-side, which would be superior to simply blocking them server-side with MONITOR CONNECTIONS. Also, I thought that if we were managing min Transports, it also made sense to allow management of max Transports, and possibly even maxTransportObjectIdleTime.
In summary, I suggested these settings for setting from the server-side, because they directly relate to enableSysplexWLB, and because these are the kinds of settings that developers just don't care about, but the admins operating the Db2 for z/OS Server DO care about.
I hope that clarifies...sorry for being verbose.
Thanks
-Mark
Hello Mark, Thank you for submitting this enhancement request. The Db2 for z/OS engineers reviewed it and would be willing to provide similar system related client properties overrides that don't affect the behavior of the applications to the MODIFY DDF command.
They are not sure minTransportObjects and maxTransportObjects are good candidates. They generally don't recommend the setting of minTransportObjects and maxTransportObjects. maxTransportObjects is constrained by the number of open connections and minTransportObjects is affected by maxTransportObjectIdleTime which removes transports after idle for 10 seconds.
Please provide the rationale that you are setting them or other specific client parameters you would like the Db2 DBA can override?
Sincerely,
The Db2 for z/OS team