Maximo Open Forum

 View Only

 Do Not Run Crontask List is Too Long

  • Administration
Jared Schrag's profile image
Jared Schrag posted 07-10-2024 15:33

We have a need to prevent nearly all Crontask Instances from executing on some of our Maximo application servers. To achieve this, we attempt to simply list all Crontasks (except for the 2 or 3 Crontasks we'd like to allow to execute) in the mxe.crontask.donotrun System Property configured within the maximo.properties file that is built into the EAR file.

We are running into an issue with the donotrun list being too long to fit the MAXPROP.CACHEDVALUE attribute. Should we just consider increasing the attribute max length in Database Configuration to accomodate the longer list - is this the only real solution to this situation?

When we attempt this configuration of the donotrun list, we see the following error within the Maximo System Properties front-end when attempting to filter the list down to just the mxe.crontask.donotrun Property:

Error seen when the value for MAXPROP.CACHEDVALUE exceeds the max length for this attribute.
The maximo server logs indicate this error:
10 Jul 2024 13:29:54:908 [ERROR] [MXServerD1] [] BMXAA4049E - The value specified exceeds the maximum field length that is allowed for this attribute: Value = ReorderCronTask, PMWoGenCronTask, KPICronTask, LDAPSYNC, ESCALATION, LSNRCRON, J..., Object Name=MAXPROP, Attribute Name=CACHEDVALUE, Maximum Length=512.
psdi.util.MXApplicationException: BMXAA4049E - The value specified exceeds the maximum field length that is allowed for this attribute: Value = ReorderCronTask, PMWoGenCronTask, KPICronTask, LDAPSYNC, ESCALATION, LSNRCRON, J..., Object Name=MAXPROP, Attribute Name=CACHEDVALUE, Maximum Length=512.
   at psdi.util.MaxTypeALN.checkLength(MaxTypeALN.java:110) ~[businessobjects.jar:?]
   at psdi.util.MaxTypeALN.setValue(MaxTypeALN.java:95) ~[businessobjects.jar:?]
   at psdi.mbo.MboValue._setValue(MboValue.java:1289) ~[businessobjects.jar:?]
   at psdi.mbo.MboValue.setValue(MboValue.java:1200) ~[businessobjects.jar:?]
   at psdi.mbo.Mbo.setValue(Mbo.java:2447) ~[businessobjects.jar:?]
   at psdi.app.system.MaxProp.setValue(MaxProp.java:581) ~[businessobjects.jar:?]
   at psdi.app.system.MaxProp.setInitialValues(MaxProp.java:350) ~[businessobjects.jar:?]
   at psdi.app.system.MaxProp.init(MaxProp.java:180) [businessobjects.jar:?]
   at psdi.mbo.Mbo.initialize(Mbo.java:1017) [businessobjects.jar:?]
   at psdi.mbo.MboSet.generateMboInstance(MboSet.java:2320) [businessobjects.jar:?]
   at psdi.mbo.MboSet.loadMboVecFromMrd(MboSet.java:13637) [businessobjects.jar:?]
   at psdi.mbo.MboSet.getMbo(MboSet.java:2142) [businessobjects.jar:?]
   at psdi.mbo.MboSet.getMboData(MboSet.java:994) [businessobjects.jar:?]
   at psdi.mbo.MboSet.getMboSetData(MboSet.java:885) [businessobjects.jar:?]
   at psdi.webclient.system.beans.DataBean.getMboSetData(DataBean.java:4724) [classes/:?]
   at psdi.webclient.system.beans.DataBean.fetchTableData(DataBean.java:4637) [classes/:?]
   at psdi.webclient.system.beans.DataBean.scrollnext(DataBean.java:6188) [classes/:?]
   at psdi.webclient.controls.Table.nextpage(Table.java:720) [classes/:?]
Jared Schrag's profile image
Jared Schrag

According to this IBM article, you can set the mxe.crontask.donotrun System Property value to "ALL"; however, are desire is to still execute a few of the Crontasks.

Jason VenHuizen's profile image
Jason VenHuizen

Hi Jared,

First, this issue is caused by the RELOADCACHE attribute on the SERVERSESSION table being to small to replicate the value to the other cluster members, so one option would be to expand this column in the database. Although, that would be outside of normal Maximo configurations so perhaps not an ideal solution.

The better solution is to use the mxe.crontask.dorun property to specify only the crontasks that you want to run, which is probably a shorter list.  Here is the article describing the property.

https://www.ibm.com/support/pages/mxecrontaskdonotrun-and-mxecrontaskdorun-system-properties-clustered-environment