IBM Support

IJ03240: JAVA.UTIL.CONCURRENTMODIFICATIONEXCEPTION WHEN IMPORTING WHEN SQL LOGGER IS ON DEBUG

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • If SQL logger is set to debug when importing workorders the
    following
    error will be seen in the log file:
    java.util.ConcurrentModificationException
    STEPS TO REPLICATE:
    1. Go To ->Integration -> Object Structures -> Create a new OS:
    Object Structure: ADWO
    Source Object: WORKORDER
    2. Go To -> Integration -> Enterprise Services -> create a new
    ES based
    on the object structure created at step 1:
    Enterprise Service: ADWOInterface
    Object Structure: ADWO
    3. Go To -> Integration -> External Systems -> create a new
    external
    system:
    System: flat
    End Point: MXFLATFILE
    Enterprise Services tab -> add the enterprise service created
    at step 2
    and check the Enabled? checkbox
    On the System tab check the Enabled? checkbox.
    4. Go To -> System Configuration -> Platform Configurayion ->
    Logging
    -> filter for sql and set the log level to DEBUG
    Select Action -> Apply Settings.
    5. Go To -> Integration -> External Systems -> filter for the
    external
    system created at step 3.
    6. Enterprise Services tab -> ADWOInterface -> Data Import.
    Import a file similar to:
    flat,ADWOInterface,,EN
    DESCRIPTION,ORGID,SITEID,WONUM
    ,EAGLENA,BEDFORD,9202
    ,EAGLENA,BEDFORD,9203
    ,EAGLENA,BEDFORD,9204
    ,EAGLENA,BEDFORD,9205
    ,EAGLENA,BEDFORD,9206
    ,EAGLENA,BEDFORD,9207
    ,EAGLENA,BEDFORD,9208
    ,EAGLENA,BEDFORD,9209
    ,EAGLENA,BEDFORD,9210
    ,EAGLENA,BEDFORD,9211
    ,EAGLENA,BEDFORD,9212
    ,EAGLENA,BEDFORD,9213
    ,EAGLENA,BEDFORD,9214
    ,EAGLENA,BEDFORD,9215
    ,EAGLENA,BEDFORD,9216
    ,EAGLENA,BEDFORD,9217
    ,EAGLENA,BEDFORD,9218
    ,EAGLENA,BEDFORD,9219
    ,EAGLENA,BEDFORD,9220
    ,EAGLENA,BEDFORD,9221
    ,EAGLENA,BEDFORD,9222
    ,EAGLENA,BEDFORD,9223
    ,EAGLENA,BEDFORD,9224
    ,EAGLENA,BEDFORD,9225
    ,EAGLENA,BEDFORD,9226
    ,EAGLENA,BEDFORD,9227
    ,EAGLENA,BEDFORD,9228
    ,EAGLENA,BEDFORD,9229
    ,EAGLENA,BEDFORD,9230
    ,EAGLENA,BEDFORD,9231
    ,EAGLENA,BEDFORD,9232
    ,EAGLENA,BEDFORD,9233
    ,EAGLENA,BEDFORD,9234
    ,EAGLENA,BEDFORD,9235
    ,EAGLENA,BEDFORD,9236
    ,EAGLENA,BEDFORD,9237
    ,EAGLENA,BEDFORD,9238
    ,EAGLENA,BEDFORD,9239
    ,EAGLENA,BEDFORD,9240
    ,EAGLENA,BEDFORD,9241
    ,EAGLENA,BEDFORD,9242
    ,EAGLENA,BEDFORD,9243
    ,EAGLENA,BEDFORD,9244
    ,EAGLENA,BEDFORD,9245
    ,EAGLENA,BEDFORD,9246
    ,EAGLENA,BEDFORD,9247
    Check the log files. The following error will be shown:
    [09/01/18 14:16:28:374 GMT] 011de2b9 SystemOut     O 09 Jan 2018
    14:16:28:374 [ERROR] [MAXIMO] []
    java.util.ConcurrentModificationException
     at java.util.HashMap$HashIterator.nextEntry(HashMap.java:951)
     at java.util.HashMap$KeyIterator.next(HashMap.java:985)
     at
    psdi.server.DBManager.freeConnectionDetail(DBManager.java:1941)
     at psdi.server.DBManager.freeConnection(DBManager.java:1801)
     at psdi.server.DBManager.freeConnection(DBManager.java:1790)
     at psdi.server.AppService.freeDBConnection(AppService.java:582)
     at psdi.mbo.MboValue.generateUniqueID(MboValue.java:2555)
     at psdi.mbo.Mbo.setValueFromSequence(Mbo.java:7763)
     at psdi.mbo.Mbo.setUniqueIDValue(Mbo.java:7734)
     at psdi.mbo.MboSet.addAtIndex(MboSet.java:4816)
     at psdi.mbo.MboSet.add(MboSet.java:4727)
     at psdi.mbo.MboSet.add(MboSet.java:4609)
     at psdi.app.workorder.WO.createAssociatedWOSA(WO.java:1723)
     at psdi.app.workorder.WO.add(WO.java:1704)
     at psdi.mbo.MboSet.addAtIndex(MboSet.java:4818)
     at psdi.app.workorder.WOSet.addAtIndex(WOSet.java:523)
     at psdi.mbo.MboSet.add(MboSet.java:4727)
     at psdi.mbo.MboSet.add(MboSet.java:4609)
     at
    psdi.iface.mos.MosProcessImpl.addMaximoObject(MosProcessImpl.jav
    a:1987)
     at
    psdi.iface.mos.MosProcessImpl.setMainMaximoTable(MosProcessImpl.
    java:113
    8)
     at
    psdi.iface.mos.MosProcessImpl.fillMaximoTables(MosProcessImpl.ja
    va:781)
     at
    psdi.iface.mos.MosProcessImpl.processExternalData(MosProcessImpl
    .java:32
    8)
     at
    psdi.iface.mic.MicSetIn.processExternalData(MicSetIn.java:147)
     at
    psdi.iface.mic.MicService.processDataIn(MicService.java:1653)
     at
    psdi.iface.mic.MicService.processExternalData(MicService.java:15
    49)
     at
    psdi.iface.jms.QueueToMaximoProcessor.processMessage(QueueToMaxi
    moProces
    sor.java:129)
     at
    psdi.iface.jms.JMSContQueueProcessor.processMessage(JMSContQueue
    Processo
    r.java:227)
     at
    psdi.iface.jms.JMSListenerBean.onMessage(JMSListenerBean.java:20
    3)
     at
    com.ibm.ejs.container.WASMessageEndpointHandler.invokeJMSMethod(
    WASMessa
    geEndpointHandler.java:138)
     at
    com.ibm.ws.ejbcontainer.mdb.MessageEndpointHandler.invokeMdbMeth
    od(Messa
    geEndpointHandler.java:1146)
     at
    com.ibm.ws.ejbcontainer.mdb.MessageEndpointHandler.invoke(Messag
    eEndpoin
    tHandler.java:844)
     at com.sun.proxy.$Proxy27.onMessage(Unknown Source)
     at
    com.ibm.ws.sib.api.jmsra.impl.JmsJcaEndpointInvokerImpl.invokeEn
    dpoint(J
    msJcaEndpointInvokerImpl.java:233)
     at
    com.ibm.ws.sib.ra.inbound.impl.SibRaDispatcher.dispatch(SibRaDis
    patcher.
    java:919)
     at
    com.ibm.ws.sib.ra.inbound.impl.SibRaSingleProcessListener$SibRaW
    ork.run(
    SibRaSingleProcessListener.java:592)
     at com.ibm.ejs.j2c.work.WorkProxy.run(WorkProxy.java:668)
     at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1864)
    [09/01/18 14:16:28:374 GMT] 011de2b9 SystemOut     O 09 Jan 2018
    14:16:28:374 [ERROR] [MAXIMO] [] Processing failed for
    ADWOInterface.
    The object structure is 1. The primary object is WORKORDER. The
    key is
    BEDFORD~9067.null
    Environment:
    IBM Maximo Asset Management 7.6.0.8 Build 20170512-0100 DB
    Build V7604-01
    Tivoli's process automation engine 7.6.0.8 Build 20170512-0100
    DB Build V7608-63
    

Local fix

  • Turn sql logger to info
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * MAXIMO users                                                 *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * DEBUG SQL logger results in                                  *
    * java.util.ConcurrentModificationException error when         *
    * importing workorders. Some of the work order transactions    *
    * needlessly fail due to this logging issue.                   *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    If SQL logger is set to debug when importing work orders the
    following error will be seen in the log file:
    java.util.ConcurrentModificationException
    As a result, some work orders fail to be processed.
    
    Changing the SQL logger from DEBUG to INFO or ERROR circumvents
    this problem, however, one loses the ability to log SQL at the
    DEBUG level
    for performance and process analysis.
    
    STEPS TO REPLICATE:
    1. Go To ->Integration -> Object Structures -> Create a new OS:
    Object Structure: ADWO
    Source Object: WORKORDER
    2. Go To -> Integration -> Enterprise Services -> create a new
    ES based
    on the object structure created at step 1:
    Enterprise Service: ADWOInterface
    Object Structure: ADWO
    3. Go To -> Integration -> External Systems -> create a new
    external
    system:
    System: flat
    End Point: MXFLATFILE
    Enterprise Services tab -> add the enterprise service created
    at step 2
    and check the Enabled? checkbox
    On the System tab check the Enabled? checkbox.
    4. Go To -> System Configuration -> Platform Configurayion ->
    Logging
    -> filter for sql and set the log level to DEBUG
    Select Action -> Apply Settings.
    5. Go To -> Integration -> External Systems -> filter for the
    external
    system created at step 3.
    6. Enterprise Services tab -> ADWOInterface -> Data Import.
    
    Import a file similar to (but with many more records) the
    following:
    
    flat,ADWOInterface,,EN
    DESCRIPTION,ORGID,SITEID,WONUM
    ,EAGLENA,BEDFORD,9202
    ,EAGLENA,BEDFORD,9203
    ,EAGLENA,BEDFORD,9204
    ,EAGLENA,BEDFORD,9205
    
    Check the log files. The following error will be shown:
    [09/01/18 14:16:28:374 GMT] 011de2b9 SystemOut     O 09 Jan 2018
    14:16:28:374 [ERROR] [MAXIMO] []
    java.util.ConcurrentModificationException
     at java.util.HashMap$HashIterator.nextEntry(HashMap.java:951)
     at java.util.HashMap$KeyIterator.next(HashMap.java:985)
     at
    psdi.server.DBManager.freeConnectionDetail(DBManager.java:1941)
     at psdi.server.DBManager.freeConnection(DBManager.java:1801)
     at psdi.server.DBManager.freeConnection(DBManager.java:1790)
     at psdi.server.AppService.freeDBConnection(AppService.java:582)
     at psdi.mbo.MboValue.generateUniqueID(MboValue.java:2555)
     at psdi.mbo.Mbo.setValueFromSequence(Mbo.java:7763)
     at psdi.mbo.Mbo.setUniqueIDValue(Mbo.java:7734)
     at psdi.mbo.MboSet.addAtIndex(MboSet.java:4816)
     at psdi.mbo.MboSet.add(MboSet.java:4727)
     at psdi.mbo.MboSet.add(MboSet.java:4609)
     at psdi.app.workorder.WO.createAssociatedWOSA(WO.java:1723)
     at psdi.app.workorder.WO.add(WO.java:1704)
     at psdi.mbo.MboSet.addAtIndex(MboSet.java:4818)
     at psdi.app.workorder.WOSet.addAtIndex(WOSet.java:523)
     at psdi.mbo.MboSet.add(MboSet.java:4727)
     at psdi.mbo.MboSet.add(MboSet.java:4609)
     at
    psdi.iface.mos.MosProcessImpl.addMaximoObject(MosProcessImpl.jav
    a:1987)
     at
    psdi.iface.mos.MosProcessImpl.setMainMaximoTable(MosProcessImpl.
    java:1138)
     at
    psdi.iface.mos.MosProcessImpl.fillMaximoTables(MosProcessImpl.ja
    va:781)
     at
    psdi.iface.mos.MosProcessImpl.processExternalData(MosProcessImpl
    .java:328)
     at
    psdi.iface.mic.MicSetIn.processExternalData(MicSetIn.java:147)
     at
    psdi.iface.mic.MicService.processDataIn(MicService.java:1653)
     at
    psdi.iface.mic.MicService.processExternalData(MicService.java:15
    49)
     at
    psdi.iface.jms.QueueToMaximoProcessor.processMessage(QueueToMaxi
    moProcessor.java:129)
     at
    psdi.iface.jms.JMSContQueueProcessor.processMessage(JMSContQueue
    Processor.java:227)
     at
    psdi.iface.jms.JMSListenerBean.onMessage(JMSListenerBean.java:20
    3)
     at
    com.ibm.ejs.container.WASMessageEndpointHandler.invokeJMSMethod(
    WASMessageEndpointHandler.java:138)
     at
    com.ibm.ws.ejbcontainer.mdb.MessageEndpointHandler.invokeMdbMeth
    od(MessageEndpointHandler.java:1146)
     at
    com.ibm.ws.ejbcontainer.mdb.MessageEndpointHandler.invoke(Messag
    eEndpointHandler.java:844)
     at com.sun.proxy.$Proxy27.onMessage(Unknown Source)
     at
    com.ibm.ws.sib.api.jmsra.impl.JmsJcaEndpointInvokerImpl.invokeEn
    dpoint(JmsJcaEndpointInvokerImpl.java:233)
     at
    com.ibm.ws.sib.ra.inbound.impl.SibRaDispatcher.dispatch(SibRaDis
    patcher.java:919)
     at
    com.ibm.ws.sib.ra.inbound.impl.SibRaSingleProcessListener$SibRaW
    ork.run(SibRaSingleProcessListener.java:592)
     at com.ibm.ejs.j2c.work.WorkProxy.run(WorkProxy.java:668)
     at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1864)
    [09/01/18 14:16:28:374 GMT] 011de2b9 SystemOut     O 09 Jan 2018
    14:16:28:374 [ERROR] [MAXIMO] [] Processing failed for
    ADWOInterface. The object structure is 1. The primary object is
    WORKORDER. The key is BEDFORD~9067.null
    
    
    Environment:
    IBM Maximo Asset Management 7.6.0.8 Build 20170512-0100 DB Build
    V7604-01
    Tivoli's process automation engine 7.6.0.8 Build 20170512-0100
    DB Build V7608-63
    

Problem conclusion

  • The fix for this APAR is contained in the following maintenance
    package:
    	| release\fix pack\interim fix for Release 7.6.1.0
    

Temporary fix

Comments

APAR Information

  • APAR number

    IJ03240

  • Reported component name

    INTEGRATION

  • Reported component ID

    5724R46I1

  • Reported release

    760

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2018-01-12

  • Closed date

    2018-05-22

  • Last modified date

    2018-05-22

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    INTEGRATION

  • Fixed component ID

    5724R46I1

Applicable component levels

  • R760 PSY

       UP

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSLKT6","label":"IBM Maximo Asset Management"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"760","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Document Information

Modified date:
22 May 2018