by | Feb 11, 2020

    Maximo buzz kills – working your way around them

    In the world of Maximo, there are often little things that you wish you wouldn’t have to encounter. Slow start centers, slow search results and that dreaded spinning wheel on the screen are just some of the Maximo buzz kills that users report. If you can rule out issues of network latency, CPU utilization and other obvious reasons, then simple tweaks like the ones mentioned below may be able to help you.

    Maximo buzz kills can be frustrating and time consuming

    ~ Maximo buzz kills can be frustrating and time consuming ~

    Start Center slowness

    Start Center is a pretty nifty tool. To have everything stored in one place is a major time saver. So, when a start center lags, it can be pretty frustrating. What goes on behind those lovely result sets and KPI portlets, you ask? Every portlet runs queries. This is what fetches the results from the database in each portlet. Assuming each query takes about a second to execute, 5 portlets in your start center would mean that it would take 5 seconds to load everything on the start center. To solve these Maximo buzz kills, try to make sure that too many queries are not being run simultaneously. Furthermore, the default query should be compact rather than too complicated as this will also increase lag time.

    Time lags in Start Center

    ~ Time lags in Start Center ~

    Problems with displaying more information in the List tab

    It is a common request from clients to make available a field in an application. A common belief might be that one or two fields on the List tab won’t significantly affect performance. Such customizations are performed using the Application Designer, or by directly modifying the XML for an application. While the original intent of the customizations is convenience and being able to easily download data using the “Download” feature, there is a downside. Such customizations can create an unnecessary drain on system performance. Every time the List tab is displayed when a user hits enter in the application; the added information also needs to be fetched from the database. There is, however, a simple solution to this – instead of customizing applications to make available additional information, using ad hoc reports can help the performance. Additionally, the information you need is not displayed every time the application is loaded, but only when it is needed.

    Long running queries – how to identify and tune them

    When analysing logs, long running queries are common Maximo buzz kills that most of us have experienced. Sometimes users can run poor queries, oblivious of the impact it can have on the system. Fortunately, there are some properties available in Maximo to tackle this.

    Maximo provides configurable system properties that determine how long queries can run. A control is provided in the user interface so you can cancel your own queries before a configured timeout property cancels them. These configurable attributes are set in the System Properties application.

    Query timeout: mxe.db.QueryTimeout.

    This property represents the amount of time in seconds before the SQL query times out and is stopped.

    Identify long running queries: mxe.db.logSQLTimeLimit

    This property can be used to identify long running SQL statements. By setting appropriate logging levels and monitoring logs you can identify performance problems caused by inefficient user queries or the lack of a good index for a frequently used query.

    Long running reports

    We have seen cases where a report goes rogue, running for a long time and affecting negatively on system performance. There are two ways to ensure reports don’t degrade system performance.

    1. Specifying record limits – To minimize performance impacts of users inadvertently running reports against very large record sets, you can specify record limits. These record limits can be set for individual reports, or at the security group level. This will prevent a very large report from executing or can even cancel it when it reaches a certain value.
    2. Sending notifications – Did you know that you can configure notifications to be sent to your administrator when reports are processing either for a very long time, or if reports are hung in the queue? This would help nip the problem in the bud before it degrades system performance any further.
    Specify record limits and send notifications to your administrator to avoid long running reports

    ~ Specify record limits and send notifications to your administrator to avoid long running reports ~

    If there are any other handy tips and tricks that you think we missed, contact BPD Zenith and let us know!

    Sign up to our free newsletter to explore emerging technologies, industry events and Maximo best practice.