This is an IBM Automation portal for Cloud Platform products. 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).
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:
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 an idea.
Get feedback from the IBM team and other customers to refine your idea.
Follow the idea through the IBM Ideas process.
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.
See this idea on ideas.ibm.com
There's a known issue (limitation) when using connections to databases or messaging providers from for example servlets without using server-managed transactions. It's described here:
https://www.ibm.com/support/pages/common-reasons-why-connections-stay-open-long-period-time-websphere-application-server - Shared Connections with Local Transaction Containment
https://www.ibm.com/support/pages/how-change-shareable-unshareable-connections
https://www.ibm.com/support/knowledgecenter/SSEQTP_9.0.5/com.ibm.websphere.base.doc/ae/cdat_conshrnon.html
The workaround is to set connections as unshared. This can be done in 2 ways in general:
1. Unshareable in resource reference (= application level)
2. defaultConnectionTypeOverride, globalConnectionTypeOverride connection pool custom properties (= server level)
But exactly the same issue also affects JMS sessions in the case of the WebSphere MQ provider.
In this case, it's only possible to set sessions as unshareable at the server level.
- session.sharing.scope connection factory custom property (= server level)
https://www-01.ibm.com/support/docview.wss?uid=swg1PK59605
There's no possibility to configure sessions as unshareable at the application level.
This RFE asks to make it possible to set sessions as unshareable at the application level.
- Ideally, Unshareable in resource reference should also affect sessions since they're affected the same way as connections.
- If that isn't acceptable for some reason, make it possible via WebSphere specific deployment descriptor such as ibm-web-ext.xml, ibm-web-bnd.xml or deployment.xml used in enhanced ears.
This would make things more consistent and allow developers that workaround the issue via setting res-sharing-scope in resource reference to cover all possible cases and not depend on server-level settings.
Idea priority | Medium |
RFE ID | 140154 |
RFE URL | |
RFE Product | WebSphere Application Server |
By clicking the "Post Comment" or "Submit Idea" button, you are agreeing to the IBM Ideas Portal Terms of Use.
Do not place IBM confidential, company confidential, or personal information into any field.
Thank you for the suggestion. The requirement does have merit, but looking at it with respect to our total backlog of requests we do not see sufficient interest in this enhancement to merit delivery any time in the foreseeable future. Given the unlikelihood that we would deliver this, we are declining the request rather than leaving it in an uncommitted state for an extended period of time. If you would like to discuss this decision further, please contact Graham Charters <charters@uk.ibm.com>.
To clarify, the session.sharing.scope property that was introduced in the fix for APAR PK59605 is a custom property that can be set on an MQ ConnectionFactory definition.
Setting the property does not change the behaviour of Connections created from this factory, but sets whether Sessions created from those Connections (it is the Sessions, not the Connections that are enlisted in transactions) are created as shareable or unshareable.
ConnectionFactories contain all the details that are used when connecting to an MQ queue manager (such as port, channel and clientID) and so it would be normal practice to have different ConnectionFactories for different applications.
What this means is that the session.sharing.scope property is not strictly a server-level setting, rather it is a ConnectionFactory setting, and we would usually expect a 1-1 relationship between a ConnectionFactory and an application. Thus, it is already possible to use the existing custom property to define the sharable/unshareable behaviour of JMS Sessions at an effectively application level.