Maximo Open Forum

 View Only

 Maximo unable to initialize MAXLOGGERCACHE

Jump to  Best Answer
  • Administration
  • Architecture
  • Everything Maximo
  • Infrastructure
Rana Ahmed's profile image
Rana Ahmed posted 06-27-2024 22:10

We are having an error in Maximo 7.6.1.3.

Here is the system property of mxe.logging.disableLoggingPropFile = 0

In the Logging application, it does not matter if we change any logger or not.

Clicking on Apply Settings is shows this error.

 Any suggestions?

This stack trace comes in Systemout.log and nothing in SystemErr.log

22:07:16.246 [WebContainer : 6] ERROR maximo - BMXAA6445E - Cache MAXLOGGERCACHE could not be initialized. Log out and then log in again to refresh your database connection.
psdi.util.MXApplicationException: BMXAA5189E - Failed to load logging settings from the database.
        begin 0, end -1, length 8
        at psdi.util.logging.MXLoggerFactory.loadSettingsFromDB(MXLoggerFactory.java:641) ~[businessobjects.jar:?]
        at psdi.util.logging.MXLoggerFactory.applySettings(MXLoggerFactory.java:772) ~[businessobjects.jar:?]
        at psdi.util.logging.MXLoggerFactory.reload(MXLoggerFactory.java:839) ~[businessobjects.jar:?]
        at psdi.mbo.MaximoCacheWrapper.reload(MaximoCacheWrapper.java:64) ~[businessobjects.jar:?]
        at psdi.server.MXServer.reloadMaximoCache(MXServer.java:965) [businessobjects.jar:?]
        at psdi.util.logging.LoggingService.applySettings(LoggingService.java:161) [businessobjects.jar:?]
        at psdi.webclient.beans.logging.LoggingAppBean.APPLY(LoggingAppBean.java:82) [classes/:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:90) ~[?:1.8.0]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55) ~[?:1.8.0]
        at java.lang.reflect.Method.invoke(Method.java:508) ~[?:1.8.0]
        at psdi.webclient.system.session.WebClientSession.defaultHandler(WebClientSession.java:1510) [classes/:?]
        at psdi.webclient.system.session.WebClientSession.handleEvent(WebClientSession.java:1403) [classes/:?]
        at psdi.webclient.system.session.WebClientSession.processRequestEvent(WebClientSession.java:6219) [classes/:?]
        at psdi.webclient.system.session.WebClientSession.handleClientSideQueueRequest(WebClientSession.java:6175) [classes/:?]
        at psdi.webclient.system.session.WebClientSession.handleRequest(WebClientSession.java:892) [classes/:?]
        at psdi.webclient.system.session.AsyncRequestManager.handleRequest(AsyncRequestManager.java:555) [classes/:?]
        at psdi.webclient.system.session.AsyncRequestManager.manageRequest(AsyncRequestManager.java:253) [classes/:?]
        at psdi.webclient.system.controller.RequestManager.manageRequest(RequestManager.java:327) [classes/:?]
        at psdi.webclient.servlet.WebClientServlet.handleRequest(WebClientServlet.java:141) [classes/:?]
        at psdi.webclient.servlet.WebClientServlet.doPost(WebClientServlet.java:52) [classes/:?]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707) [javax.j2ee.servlet.jar:?]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) [javax.j2ee.servlet.jar:?]
        at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1235) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:779) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:179) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:143) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:96) [com.ibm.ws.webcontainer.jar:?]
        at psdi.webclient.system.filter.HttpCrossSiteScriptingSecurity.doFilter(HttpCrossSiteScriptingSecurity.java:66) [classes/:?]
        at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:197) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90) [com.ibm.ws.webcontainer.jar:?]
        at psdi.webclient.system.filter.MXCorrelationFilter.doFilter(MXCorrelationFilter.java:137) [classes/:?]
        at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:197) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90) [com.ibm.ws.webcontainer.jar:?]
        at psdi.webclient.system.filter.PerformanceMonitor.doFilter(PerformanceMonitor.java:126) [classes/:?]
        at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:197) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.tivoli.maximo.filter.UnSupportedMethodBlockFilter.doFilter(UnSupportedMethodBlockFilter.java:60) [commonweb.jar:?]
        at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:197) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90) [com.ibm.ws.webcontainer.jar:?]
        at psdi.webclient.system.filter.HttpXFrameOptionsFilter.doFilter(HttpXFrameOptionsFilter.java:38) [classes/:?]
        at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:197) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90) [com.ibm.ws.webcontainer.jar:?]
        at psdi.webclient.system.filter.MTContextFilter.doFilter(MTContextFilter.java:53) [classes/:?]
        at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:197) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90) [com.ibm.ws.webcontainer.jar:?]
        at org.apache.logging.log4j.web.Log4jServletFilter.doFilter(Log4jServletFilter.java:71) [log4j-web-2.17.1.jar:2.17.1]
        at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:197) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:979) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1119) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:82) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:966) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1817) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:382) [com.ibm.ws.webcontainer.jar:?]
        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:465) [com.ibm.ws.runtime.jar:?]
        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:532) [com.ibm.ws.runtime.jar:?]
        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:318) [com.ibm.ws.runtime.jar:?]
        at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:88) [com.ibm.ws.runtime.jar:?]
        at com.ibm.ws.ssl.channel.impl.SSLReadServiceContext$SSLReadCompletedCallback.complete(SSLReadServiceContext.java:1833) [com.ibm.ws.runtime.jar:?]
        at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175) [com.ibm.ws.runtime.jar:?]
        at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217) [com.ibm.ws.runtime.jar:?]
        at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161) [com.ibm.ws.runtime.jar:?]
        at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138) [com.ibm.ws.runtime.jar:?]
        at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204) [com.ibm.ws.runtime.jar:?]
        at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775) [com.ibm.ws.runtime.jar:?]
        at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905) [com.ibm.ws.runtime.jar:?]
        at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1909) [com.ibm.ws.runtime.jar:?]
Caused by: java.lang.StringIndexOutOfBoundsException: begin 0, end -1, length 8
        at java.lang.String.substring(String.java:2744) ~[?:2.9 (09-08-2023)]
        at psdi.util.logging.MXLoggerFactory.loadSettingsFromDB(MXLoggerFactory.java:457) ~[businessobjects.jar:?]
        ... 68 more

Rana Ahmed's profile image
Rana Ahmed  Best Answer

The solution is simple for any one else having the same issue.

In the Logging application, click Manage Appenders

Filter for a row where the filename doesn't have a extension, for example, maximo instead of maximo.log.
add an extension and then apply settings would work

Martin Fabra's profile image
Martin Fabra

Hi

Look, these are 4 tables associated with the problem: 

select * from maximo.maxprop where propname = 'mxe.logging.disableLoggingPropFile';
select * from maximo.maxpropvalue where propname = 'mxe.logging.disableLoggingPropFile';
select * from maximo.maxlogger;
select * from maximo.maxlogappender;

You should be query the tables to see if you can detect any erroneous data.

The problem seems to occur in the loadSettingsFromDB method of the MXLoggerFactory class

(java.lang.StringIndexOutOfBoundsException: begin 0, end -1, length 8
at java.lang.String.substring(String.java:2744)
at psdi.util.logging.MXLoggerFactory.loadSettingsFromDB(MXLoggerFactory.java:457)

This method attempts to load logging configurations from the database and fails when manipulating a string (possibly attempting to split a string into components).

Regards!

Rana Ahmed's profile image
Rana Ahmed

I have only found this document which states that it was a known bug which was fixed in 

If the error is related to Array index out of range: 1, it is a known issue already fixed in versions: 7.6.1.2 IFIX022, 7.6.1.3 and also Manage patch 8.3.3.


Errors BMXAA4160E and BMXAA5189E when Applying Settings in Logging application (ibm.com)

but I encountered this error in Maximo 7.6.1.3