Pentaho

 View Only

 problem with java script value step

  • Pentaho
  • Kettle
  • Pentaho
  • Pentaho Data Integration PDI
Nikola Garafolic's profile image
Nikola Garafolic posted 09-04-2019 11:33

I will attach transformation, but to sum up, it is supposed to insert jpg files inside BLOB column in mysql database.

The other transformation with exact same java script code is working fine, this one gives me following error:

 

Unexpected error

last_login Timestamp : We can't convert data type Timestamp to an original (V2) Value

    at org.pentaho.di.trans.steps.scriptvalues_mod.ScriptValuesMod.addValues(ScriptValuesMod.java:475)

    at org.pentaho.di.trans.steps.scriptvalues_mod.ScriptValuesMod.processRow(ScriptValuesMod.java:547)

    at org.pentaho.di.trans.step.RunThread.run(RunThread.java:62)

    at java.lang.Thread.run(Thread.java:748)

Caused by: org.pentaho.di.core.exception.KettleValueException: 

Unexpected error

last_login Timestamp : We can't convert data type Timestamp to an original (V2) Value

    at org.pentaho.di.trans.steps.scriptvalues_mod.ScriptValuesMod.addValues(ScriptValuesMod.java:384)

    ... 3 more

Caused by: org.pentaho.di.core.exception.KettleValueException: 

last_login Timestamp : We can't convert data type Timestamp to an original (V2) Value

    at org.pentaho.di.core.row.value.ValueMetaBase.createOriginalValue(ValueMetaBase.java:4231)

    at org.pentaho.di.core.row.RowMeta.createOriginalRow(RowMeta.java:1166)

    at org.pentaho.di.trans.steps.scriptvalues_mod.ScriptValuesMod.addValues(ScriptValuesMod.java:346)

    ... 3 more

2019/09/04 13:17:12 - Java Script Value.0 - ERROR (version 8.3.0.0-371, build 8.3.0.0-371 from 2019-06-11 11.09.08 by buildguy) : Unexpected error

2019/09/04 13:17:12 - Java Script Value.0 - ERROR (version 8.3.0.0-371, build 8.3.0.0-371 from 2019-06-11 11.09.08 by buildguy) : org.pentaho.di.core.exception.KettleValueException: 

2019/09/04 13:17:12 - Java Script Value.0 - Javascript error: 

2019/09/04 13:17:12 - Java Script Value.0 - 

2019/09/04 13:17:12 - Java Script Value.0 - Unexpected error

2019/09/04 13:17:12 - Java Script Value.0 - 

2019/09/04 13:17:12 - Java Script Value.0 - last_login Timestamp : We can't convert data type Timestamp to an original (V2) Value

2019/09/04 13:17:12 - Java Script Value.0 - 

2019/09/04 13:17:12 - Java Script Value.0 - 

2019/09/04 13:17:12 - Java Script Value.0 - 

2019/09/04 13:17:12 - Java Script Value.0 -   at org.pentaho.di.trans.steps.scriptvalues_mod.ScriptValuesMod.addValues(ScriptValuesMod.java:475)

2019/09/04 13:17:12 - Java Script Value.0 -   at org.pentaho.di.trans.steps.scriptvalues_mod.ScriptValuesMod.processRow(ScriptValuesMod.java:547)

2019/09/04 13:17:12 - Java Script Value.0 -   at org.pentaho.di.trans.step.RunThread.run(RunThread.java:62)

2019/09/04 13:17:12 - Java Script Value.0 -   at java.lang.Thread.run(Thread.java:748)

2019/09/04 13:17:12 - Java Script Value.0 - Caused by: org.pentaho.di.core.exception.KettleValueException: 

2019/09/04 13:17:12 - Java Script Value.0 - Unexpected error

2019/09/04 13:17:12 - Java Script Value.0 - 

2019/09/04 13:17:12 - Java Script Value.0 - last_login Timestamp : We can't convert data type Timestamp to an original (V2) Value

2019/09/04 13:17:12 - Java Script Value.0 - 

2019/09/04 13:17:12 - Java Script Value.0 - 

2019/09/04 13:17:12 - Java Script Value.0 -   at org.pentaho.di.trans.steps.scriptvalues_mod.ScriptValuesMod.addValues(ScriptValuesMod.java:384)

2019/09/04 13:17:12 - Java Script Value.0 -   ... 3 more

2019/09/04 13:17:12 - Java Script Value.0 - Caused by: org.pentaho.di.core.exception.KettleValueException: 

2019/09/04 13:17:12 - Java Script Value.0 - last_login Timestamp : We can't convert data type Timestamp to an original (V2) Value

2019/09/04 13:17:12 - Java Script Value.0 - 

2019/09/04 13:17:12 - Java Script Value.0 -   at org.pentaho.di.core.row.value.ValueMetaBase.createOriginalValue(ValueMetaBase.java:4231)

2019/09/04 13:17:12 - Java Script Value.0 -   at org.pentaho.di.core.row.RowMeta.createOriginalRow(RowMeta.java:1166)

2019/09/04 13:17:12 - Java Script Value.0 -   at org.pentaho.di.trans.steps.scriptvalues_mod.ScriptValuesMod.addValues(ScriptValuesMod.java:346)

2019/09/04 13:17:12 - Java Script Value.0 -   ... 3 more

 

Java script code is following:

 

if (getFileSize(filename)>0) then 

{

file = new Packages.java.io.File(filename.getString());  

fileInputStream = new Packages.java.io.FileInputStream(file);

var content = Packages.org.pentaho.di.core.Const.createByteArray(file.length());

fileInputStream.read(content, 0, file.length());

fileInputStream.close();

}

 

Help me wrap my head around this, I dont get where does "last_login" timestamp came from?!

And where and why does it want to convert to original value V2 whatever that is.

 

Problem occurs with pentaho pdi version 8.3.0.2-474 and 8.3.0.0-371, both R versions. Didnt check other version. OS is Centos 7 if that is relevant. I am using pan.sh (because its headless server).


#Kettle
#Pentaho
#PentahoDataIntegrationPDI
Nikola Garafolic's profile image
Nikola Garafolic

Turns out the cause of problem was using "select * in database join instead of only relevant columns like username. When using only relevant columns, error goes away. And, no there was not last_login column inside the database join table, but still not that someone will believe me :D