java.util.ConcurrentModificationException

Pentaho BI Platform Tracking | Pavel Utko | 2 years ago
tip
Do you know that we can give you better hits? Get more relevant results from Samebug’s stack trace search.
  1. 0

    Concurrent execution of org.pentaho.di.core.row.RowMeta.cloneRow couse an error. This situation may happens when multiple copies of the SelectValues step is executed. The error is in the following code (one copy of step executes the first loop and another copy goes throw the next loop): {noformat} public Object[] cloneRow( Object[] objects, Object[] newObjects ) throws KettleValueException { if ( valuesThatNeedRealClone == null ) { valuesThatNeedRealClone = new ArrayList<Integer>(); for ( int i = 0; i < size(); i++ ) { ValueMetaInterface valueMeta = getValueMeta( i ); if ( valueMeta.requiresRealClone() ) { valuesThatNeedRealClone.add( i ); } } } for ( Integer i : valuesThatNeedRealClone ) { ValueMetaInterface valueMeta = getValueMeta( i ); newObjects[i] = valueMeta.cloneValueData( objects[i] ); } return newObjects; } {noformat} The stack trace is: {noformat} java.util.ConcurrentModificationException at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:901) at java.util.ArrayList$Itr.next(ArrayList.java:851) at org.pentaho.di.core.row.RowMeta.cloneRow(RowMeta.java:403) at org.pentaho.di.core.row.RowMeta.cloneRow(RowMeta.java:384) at com.google.corp.corpdata.pantheon.kettle.trans.steps.selectvalues.SelectValues.getRow(SelectValues.java:28) at org.pentaho.di.trans.steps.selectvalues.SelectValues.processRow(SelectValues.java:337) at org.pentaho.di.trans.step.RunThread.run(RunThread.java:62) at java.lang.Thread.run(Thread.java:745) java.util.ConcurrentModificationException at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:901) at java.util.ArrayList$Itr.next(ArrayList.java:851) at org.pentaho.di.core.row.RowMeta.cloneRow(RowMeta.java:403) at org.pentaho.di.core.row.RowMeta.cloneRow(RowMeta.java:384) at com.google.corp.corpdata.pantheon.kettle.trans.steps.selectvalues.SelectValues.getRow(SelectValues.java:28) at org.pentaho.di.trans.steps.selectvalues.SelectValues.processRow(SelectValues.java:337) at org.pentaho.di.trans.step.RunThread.run(RunThread.java:62) at java.lang.Thread.run(Thread.java:745) {noformat}

    Pentaho BI Platform Tracking | 2 years ago | Pavel Utko
    java.util.ConcurrentModificationException
  2. 0

    Concurrent execution of org.pentaho.di.core.row.RowMeta.cloneRow couse an error. This situation may happens when multiple copies of the SelectValues step is executed. The error is in the following code (one copy of step executes the first loop and another copy goes throw the next loop): {noformat} public Object[] cloneRow( Object[] objects, Object[] newObjects ) throws KettleValueException { if ( valuesThatNeedRealClone == null ) { valuesThatNeedRealClone = new ArrayList<Integer>(); for ( int i = 0; i < size(); i++ ) { ValueMetaInterface valueMeta = getValueMeta( i ); if ( valueMeta.requiresRealClone() ) { valuesThatNeedRealClone.add( i ); } } } for ( Integer i : valuesThatNeedRealClone ) { ValueMetaInterface valueMeta = getValueMeta( i ); newObjects[i] = valueMeta.cloneValueData( objects[i] ); } return newObjects; } {noformat} The stack trace is: {noformat} java.util.ConcurrentModificationException at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:901) at java.util.ArrayList$Itr.next(ArrayList.java:851) at org.pentaho.di.core.row.RowMeta.cloneRow(RowMeta.java:403) at org.pentaho.di.core.row.RowMeta.cloneRow(RowMeta.java:384) at com.google.corp.corpdata.pantheon.kettle.trans.steps.selectvalues.SelectValues.getRow(SelectValues.java:28) at org.pentaho.di.trans.steps.selectvalues.SelectValues.processRow(SelectValues.java:337) at org.pentaho.di.trans.step.RunThread.run(RunThread.java:62) at java.lang.Thread.run(Thread.java:745) java.util.ConcurrentModificationException at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:901) at java.util.ArrayList$Itr.next(ArrayList.java:851) at org.pentaho.di.core.row.RowMeta.cloneRow(RowMeta.java:403) at org.pentaho.di.core.row.RowMeta.cloneRow(RowMeta.java:384) at com.google.corp.corpdata.pantheon.kettle.trans.steps.selectvalues.SelectValues.getRow(SelectValues.java:28) at org.pentaho.di.trans.steps.selectvalues.SelectValues.processRow(SelectValues.java:337) at org.pentaho.di.trans.step.RunThread.run(RunThread.java:62) at java.lang.Thread.run(Thread.java:745) {noformat}

    Pentaho BI Platform Tracking | 2 years ago | Pavel Utko
    java.util.ConcurrentModificationException
  3. 0

    StringUtils concurrency exception

    Stack Overflow | 2 years ago
    java.util.ConcurrentModificationException
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    Investigate concurrent modification exception

    GitHub | 2 years ago | rtyler
    java.util.ConcurrentModificationException
  6. 0

    Can't Add Scene in main() Function Of GameObject

    GitHub | 2 years ago | SolarLune
    java.util.ConcurrentModificationException
Not finding the right solution?
Take a tour to get the most out of Samebug.

Tired of useless tips?

Automated exception search integrated into your IDE

Root Cause Analysis

  1. java.util.ConcurrentModificationException

    No message provided

    at java.util.ArrayList$Itr.checkForComodification()
  2. Java RT
    ArrayList$Itr.next
    1. java.util.ArrayList$Itr.checkForComodification(ArrayList.java:901)
    2. java.util.ArrayList$Itr.next(ArrayList.java:851)
    2 frames
  3. org.pentaho.di
    RowMeta.cloneRow
    1. org.pentaho.di.core.row.RowMeta.cloneRow(RowMeta.java:403)
    2. org.pentaho.di.core.row.RowMeta.cloneRow(RowMeta.java:384)
    2 frames
  4. com.google.corp
    SelectValues.getRow
    1. com.google.corp.corpdata.pantheon.kettle.trans.steps.selectvalues.SelectValues.getRow(SelectValues.java:28)
    1 frame
  5. org.pentaho.di
    RunThread.run
    1. org.pentaho.di.trans.steps.selectvalues.SelectValues.processRow(SelectValues.java:337)
    2. org.pentaho.di.trans.step.RunThread.run(RunThread.java:62)
    2 frames
  6. Java RT
    Thread.run
    1. java.lang.Thread.run(Thread.java:745)
    1 frame