WebSphere Application Server & Liberty

WebSphere Application Server & Liberty

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
Expand all | Collapse all

Follow Up Questions for WebSphere Liberty 18.0.0.4 Virtual Proof of Technology (Session 1)

  • 1.  Follow Up Questions for WebSphere Liberty 18.0.0.4 Virtual Proof of Technology (Session 1)

    Posted Thu January 24, 2019 11:04 AM
    Edited by Alasdair Nottingham Fri February 01, 2019 12:05 PM

    Hi all,

    I wanted to do a follow up thread to our vPOT webcasts, in case you missed it I presented "WebSphere Liberty 18.0.0.4 Virtual Proof of Technology" click here to view the replay from session 1. We received many great questions during both events, in case there is more please feel free to utilize this thread.



    ------------------------------
    Alasdair Nottingham
    IBM
    ------------------------------


  • 2.  RE: Follow Up Questions for WebSphere Liberty 18.0.0.4 Virtual Proof of Technology (Session 1)

    Posted Mon January 28, 2019 10:48 AM

    I am interested to know the possibilities in WAS Liberty server to server core banking products like T24 (Temenos T24). Temenos T24 application involved with JMS, EJB, MDB concept.

    Please let me know if there is any documentation to configure Liberty with JMS, DataSource as like WAS. Thanks.



    ------------------------------
    Manikandan Gopalakrishnan
    ------------------------------



  • 3.  RE: Follow Up Questions for WebSphere Liberty 18.0.0.4 Virtual Proof of Technology (Session 1)

    Posted Mon January 28, 2019 11:25 AM
    The documentation on how to configure DataSources is in knowledge center here.
    JMS resources are configured via JCA which is documented here.

    ------------------------------
    Alasdair Nottingham
    IBM
    ------------------------------



  • 4.  RE: Follow Up Questions for WebSphere Liberty 18.0.0.4 Virtual Proof of Technology (Session 1)

    Posted Tue January 29, 2019 04:52 AM
    Hi,

    Apache Tomcat does have a nifty little feature aboard its datasource implementation: 
    "removeAbandoned" and "logAbandoned" [1].
    This feature is about removing "old" jdbc connections, and logging the stacktrace of such removed connections. (the age of "old" connections is configurable in seconds).
    While this is not a good practice of running with that setting enabled in production - and slows down JDBC performance - it is an invaluable feature when suspecting and diagnosing JDBC connection leaks: once a connection is diagnosed as "abandoned", it will be terminated by the pool manager and a stacktrace of the thread getting the connection will be printed. With that information at hand, it is easy to find the faulty code that keeps the connection in the application without returning it to the pool.

    That said, I have used Liberty great OPs modules like "requestTiming" and "eventLogging", and I really love Liberty's ability to help me diagnose slow requests and hung threads (without server restart, as I can enable these features on the fly!!). Tomcat does not have a similarily powerful feature for these use-cases!

    But something similar to Tomcat's connection leak diagnosis can not be done with the above mentioned Liberty modules, in my opinion - or am I wrong? When having a conn. leak, the thread/code not returning the connection will not hang, nor will the JDBC query be slow; the connection just will never be returned to the pool.

    So my question is, how could we find the cause of a connection leak in Liberty?

    Thanks for you input,
    Thomas

    [1] https://tomcat.apache.org/tomcat-8.0-doc/jdbc-pool.html

    ------------------------------
    Thomas Hikade
    2innovate IT Consulting GmbH
    ------------------------------



  • 5.  RE: Follow Up Questions for WebSphere Liberty 18.0.0.4 Virtual Proof of Technology (Session 1)

    Posted Sun February 03, 2019 12:18 PM
    Thomas,
    The two properties you mention provide Tomcat with two functions, with slightly different use cases.  "removeAbandoned" is more the "fix my ill-behaved app for me" and "logAbandoned" is more the "help me fix my ill-behaved app".  Of course you could use the latter to clean up your code, then turn it off, and turn on the former to catch anything you missed.  But, there may a perf penalty for doing so.

    Traditional WAS and Liberty share code that will handle the "help me fix my ill-behaved app" part.  We have something called LTC (Local Transaction Containment) leak logic that, if enabled, will log output including stack traceback to help locate the creation point of an "abandoned" connection.  If you look at Slide 18 of https://www-01.ibm.com/support/docview.wss?uid=swg27039259&aid=1

    Root Cause #3 – Connection Leak in Application
    [9/4/13 8:38:30:570 EDT] 00000003 PoolManager 3 alarm(), Pool contents ==> PoolManager name:jdbc/db2demo
    PoolManager object:89943098
    Total number of connections: 5 (max/min 5/0, reap/unused/aged 180/1800/0, connectiontimeout/purge 180/EntirePool)
    (testConnection/inteval false/0, stuck timer/time/threshold 0/0/0, surge time/connections 0/-1)
    Shared Connection information (shared partitions 200)
    No shared connections
    Free Connection information (free distribution table/partitions 5/1)
    No free connections
    UnShared Connection information
    MCWrapper id 5c11f3e Managed connection WSRdbManagedConnectionImpl@5bee0c0 State:STATE_ACTIVE_INUSE Thread Id: 00000024 Thread Name:
    WebContainer : 5 Handle count 1 Start time inuse Wed Sep 04 08:35:32 EDT 2013 Time inuse 178 (seconds)
    MCWrapper id 5c140f6 Managed connection WSRdbManagedConnectionImpl@5c085b4 State:STATE_ACTIVE_INUSE Thread Id: 00000025 Thread Name:
    WebContainer : 6 Handle count 1 Start time inuse Wed Sep 04 08:35:32 EDT 2013 Time inuse 178 (seconds)
    MCWrapper id 5bf5554 Managed connection WSRdbManagedConnectionImpl@5bf19dd State:STATE_ACTIVE_INUSE Thread Id: 00000022 Thread Name:
    WebContainer : 3 Handle count 1 Start time inuse Wed Sep 04 08:35:32 EDT 2013 Time inuse 178 (seconds)
    MCWrapper id 5ba9a36 Managed connection WSRdbManagedConnectionImpl@5ba417e State:STATE_ACTIVE_INUSE Thread Id: 00000021 Thread Name:
    WebContainer : 2 Handle count 1 Start time inuse Wed Sep 04 08:35:30 EDT 2013 Time inuse 180 (seconds)
    MCWrapper id 5c16e0c Managed connection WSRdbManagedConnectionImpl@5c0b8ff State:STATE_ACTIVE_INUSE Thread Id: 0000001f Thread Name:
    WebContainer : 0 Handle count 1 Start time inuse Wed Sep 04 08:35:32 EDT 2013 Time inuse 178 (seconds)
    Total number of connection in unshared pool: 5
    Connection Leak Logic Information:
    MCWrapper id 5c11f3e Managed connection WSRdbManagedConnectionImpl@5bee0c0 State:STATE_ACTIVE_INUSE Thread Id: 00000024 Thread Name:
    WebContainer : 5 Handle count 1
    Start time inuse Wed Sep 04 08:35:32 EDT 2013 Time inuse 178 (seconds)
    Last allocation time Wed Sep 04 08:35:32 EDT 2013
    getConnection stack trace information:
    com.ibm.ejs.j2c.ConnectionManager.allocateConnection(ConnectionManager.java:1260)
    com.ibm.ws.rsadapter.jdbc.WSJdbcDataSource.getConnection(WSJdbcDataSource.java:669)
    com.ibm.ws.rsadapter.jdbc.WSJdbcDataSource.getConnection(WSJdbcDataSource.java:636)
    com.ibm.wste.WSTEServlet.doPost(WSTEServlet.java:62) 

    Connection leak logic is enabled by the tracespec WAS.j2c=all:ConnLeakLogic=all
    The output will appear in the app server trace.log or in the response of the JMX invocation of the datasource mbean operation showPoolContents. In traditional WAS and Liberty, the connection is logged as leaked after 10 seconds; this value is not currently configurable.
    Let us know if you have further questions.


    ------------------------------
    Fred Rowe
    WebSphere Architect for JCA/JDBC connectivity and WAS for IBM i
    Senior Software Engineer
    IBM Cloud
    ------------------------------



  • 6.  RE: Follow Up Questions for WebSphere Liberty 18.0.0.4 Virtual Proof of Technology (Session 1)

    Posted Tue February 19, 2019 11:11 AM
    Hi Fred,

    I was aware of WAS connleaklogic trace, but not aware of the fact that it can be used in Liberty, too! 
    Thanks a lot for that pointer!

    Best regards
    Thomas

    ------------------------------
    Thomas Hikade
    2innovate IT Consulting GmbH
    ------------------------------



  • 7.  RE: Follow Up Questions for WebSphere Liberty 18.0.0.4 Virtual Proof of Technology (Session 1)

    Posted Tue February 05, 2019 03:20 PM
    IBM provides a Cloud Transformation Advisor within ICP, but this does not seem to be available outside of ICP. Are there plans to make it so? The reason I ask is that we have a significant WAS ND estate and the assessment tooling currently available is very singular in its use (i.e. single WAR / EAR at a time). The Transformation Advisor seems to enable a more holistic view across multiple apps. This would be invaluable in teasing out common code issues across legacy <g class="gr_ gr_11 gr-alert gr_gramm gr_inline_cards gr_run_anim Punctuation only-del replaceWithoutSep" id="11" data-gr-id="11">applications,</g> and therefore focus where / what to fix. Also running Liberty in Pivotal CF

    ------------------------------
    Pete Jones
    Technical Architect
    HSBC Plc
    Sheffield
    01142529317
    ------------------------------



  • 8.  RE: Follow Up Questions for WebSphere Liberty 18.0.0.4 Virtual Proof of Technology (Session 1)

    Posted Wed February 06, 2019 05:49 AM
    Although Transformation Advisor is not currently available separately, you can use WebSphere Migration Toolkit for Application Binaries to scan your applications and generate very similar reports as TA. Migration toolkit is used by TA underneath. Toolkit will allow you to point to directory that contains many ears automatically generate reports for all included applications.

    ------------------------------
    Grzegorz S
    ------------------------------



  • 9.  RE: Follow Up Questions for WebSphere Liberty 18.0.0.4 Virtual Proof of Technology (Session 1)

    Posted Fri February 08, 2019 01:18 AM
    Hello Pete,
    you might also check out the WebSphere Application Server Migration Toolkit:

    WebSphere Application Server Migration Toolkit
    The migration toolkit provides a rich set of tools that help you migrate applications from third-party application servers, between versions of WebSphere Application Server, to Liberty, and to cloud platforms such as Liberty for Java on IBM Cloud, IBM WebSphere on IBM Cloud and Docker.

    https://developer.ibm.com/wasdev/downloads/#asset/tools-WebSphere_Application_Server_Migration_Toolkit

    Can't remember anymore which we used to assess the DX migration some time ago.

    Hope that helps ... have a good day - Hermann

    ------------------------------
    Hermann Huebler
    ------------------------------



  • 10.  RE: Follow Up Questions for WebSphere Liberty 18.0.0.4 Virtual Proof of Technology (Session 1)

    Posted Fri February 15, 2019 09:05 AM
    Hello again Pete,
    had a great session at #Think2019 yesterday with @Christopher Vignola and there we got some very interesting news here. It sees that at WAS ND v9.0.x is ante portas and this updated version contains transformation advisor in the Admin Console as well as a license for ICP to run the transformation (not not workloads). So this could help you with the required tooling for your transformation. Also had a chance to run a shirt lab with the transformation advisor and the tools looks really promissing.

    Hope that helps ... Hermann
    ​​​​​​​​

    ------------------------------
    Hermann Huebler
    ------------------------------



  • 11.  RE: Follow Up Questions for WebSphere Liberty 18.0.0.4 Virtual Proof of Technology (Session 1)

    Posted Tue April 02, 2019 08:16 AM
    Hello @Pete Jones,

    check out the WAS v9.0.5 announcement: http://www-01.ibm.com/common/ssi/ShowDoc.wss?docURL=/common/ssi/rep_ca/4/897/ENUS219-174/index.html&lang=en&request_locale=en

    This contains more details on the advisor feature being included ..​​

    ------------------------------
    Hermann Huebler
    ------------------------------