My work is following:
(1) call the oracle logminer tools
(2) get the records from view V$logmnr_contents which is born after you called logminer statr tools
so I have change some code to make the connection which is calling logmnr hava the same connection with ‘select’ connection. But i am sure those code is self-governed.
(3)insert those records which is from V$logmnr_contents into mysql table which hava the same structure.
There is the problem when the “select * from V$logmnr_contents” is querying.
========================================================================================================================
<Field name="LOG_ID" type="decimal" nullable="yes" delimiter="," format="#" />
<Field name="LOG_ID" type="decimal" nullable="yes" delimiter="," />
<Field name="LOG_ID" type="decimal" nullable="yes" />
DEBUG [INPUT] - Number is out of available precision [8,2]. ()
java.lang.NumberFormatException: Number is out of available precision [8,2]. ()
at org.jetel.data.primitive.IntegerDecimal.setValue(IntegerDecimal.java:143)
at org.jetel.data.primitive.IntegerDecimal.setValue(IntegerDecimal.java:209)
at org.jetel.data.DecimalDataField.setValue(DecimalDataField.java:282)
at org.jetel.connection.jdbc.CopySQLData$CopyDecimal.setJetel(CopySQLData.java:671)
at org.jetel.connection.jdbc.CopySQLData.sql2jetel(CopySQLData.java:145)
at org.jetel.connection.jdbc.SQLDataParser.populateField(SQLDataParser.java:234)
at org.jetel.connection.jdbc.SQLDataParser.parseNext(SQLDataParser.java:206)
at org.jetel.connection.jdbc.SQLDataParser.getNext(SQLDataParser.java:137)
at org.jetel.connection.jdbc.SQLDataParser.getNext(SQLDataParser.java:181)
at org.jetel.component.DBInputTable.execute(DBInputTable.java:242)
at org.jetel.graph.Node.run(Node.java:379)
at java.lang.Thread.run(Unknown Source)
ERROR [WatchDog] - Graph execution finished with error
ERROR [WatchDog] - Node INPUT finished with status: ERROR caused by: Number is out of available precision [8,2]. ()
DEBUG [WatchDog] - Node INPUT error details:
java.lang.RuntimeException: Number is out of available precision [8,2]. ()
at org.jetel.connection.jdbc.SQLDataParser.populateField(SQLDataParser.java:246)
at org.jetel.connection.jdbc.SQLDataParser.parseNext(SQLDataParser.java:206)
at org.jetel.connection.jdbc.SQLDataParser.getNext(SQLDataParser.java:137)
at org.jetel.connection.jdbc.SQLDataParser.getNext(SQLDataParser.java:181)
at org.jetel.component.DBInputTable.execute(DBInputTable.java:242)
at org.jetel.graph.Node.run(Node.java:379)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NumberFormatException: Number is out of available precision [8,2]. ()
at org.jetel.data.primitive.IntegerDecimal.setValue(IntegerDecimal.java:143)
at org.jetel.data.primitive.IntegerDecimal.setValue(IntegerDecimal.java:209)
at org.jetel.data.DecimalDataField.setValue(DecimalDataField.java:282)
at org.jetel.connection.jdbc.CopySQLData$CopyDecimal.setJetel(CopySQLData.java:671)
at org.jetel.connection.jdbc.CopySQLData.sql2jetel(CopySQLData.java:145)
at org.jetel.connection.jdbc.SQLDataParser.populateField(SQLDataParser.java:234)
... 6 more
==========================================================================================================================
<Field name="LOG_ID" type="integer" nullable="yes" delimiter="," />
<Field name="LOG_ID" type="long" nullable="yes" delimiter="," />
DEBUG [INPUT] - 数字溢出 with field LOG_ID
java.sql.SQLException: 数字溢出 with field LOG_ID
at org.jetel.connection.jdbc.CopySQLData.sql2jetel(CopySQLData.java:147)
at org.jetel.connection.jdbc.SQLDataParser.populateField(SQLDataParser.java:234)
at org.jetel.connection.jdbc.SQLDataParser.parseNext(SQLDataParser.java:206)
at org.jetel.connection.jdbc.SQLDataParser.getNext(SQLDataParser.java:137)
at org.jetel.connection.jdbc.SQLDataParser.getNext(SQLDataParser.java:181)
at org.jetel.component.DBInputTable.execute(DBInputTable.java:242)
at org.jetel.graph.Node.run(Node.java:379)
at java.lang.Thread.run(Unknown Source)
ERROR [WatchDog] - Graph execution finished with error
ERROR [WatchDog] - Node INPUT finished with status: ERROR caused by: 数字溢出 with field LOG_ID
DEBUG [WatchDog] - Node INPUT error details:
java.lang.RuntimeException: 数字溢出 with field LOG_ID
at org.jetel.connection.jdbc.SQLDataParser.populateField(SQLDataParser.java:246)
at org.jetel.connection.jdbc.SQLDataParser.parseNext(SQLDataParser.java:206)
at org.jetel.connection.jdbc.SQLDataParser.getNext(SQLDataParser.java:137)
at org.jetel.connection.jdbc.SQLDataParser.getNext(SQLDataParser.java:181)
at org.jetel.component.DBInputTable.execute(DBInputTable.java:242)
at org.jetel.graph.Node.run(Node.java:379)
at java.lang.Thread.run(Unknown Source)
Caused by: java.sql.SQLException: 数字溢出 with field LOG_ID
at org.jetel.connection.jdbc.CopySQLData.sql2jetel(CopySQLData.java:147)
at org.jetel.connection.jdbc.SQLDataParser.populateField(SQLDataParser.java:234)
... 6 more
============================================================================================================================
<Field name="LOG_ID" type="numeric" nullable="yes" delimiter="," />
DEBUG [INPUT] - -2
java.lang.ArrayIndexOutOfBoundsException: -2
at oracle.jdbc.driver.NumberCommonAccessor.getDouble(NumberCommonAccessor.java:1358)
at oracle.jdbc.driver.OracleResultSetImpl.getDouble(OracleResultSetImpl.java:581)
at org.jetel.connection.jdbc.CopySQLData$CopyNumeric.setJetel(CopySQLData.java:587)
at org.jetel.connection.jdbc.CopySQLData.sql2jetel(CopySQLData.java:145)
at org.jetel.connection.jdbc.SQLDataParser.populateField(SQLDataParser.java:234)
at org.jetel.connection.jdbc.SQLDataParser.parseNext(SQLDataParser.java:206)
at org.jetel.connection.jdbc.SQLDataParser.getNext(SQLDataParser.java:137)
at org.jetel.connection.jdbc.SQLDataParser.getNext(SQLDataParser.java:181)
at org.jetel.component.DBInputTable.execute(DBInputTable.java:242)
at org.jetel.graph.Node.run(Node.java:379)
at java.lang.Thread.run(Unknown Source)
ERROR [WatchDog] - Graph execution finished with error
ERROR [WatchDog] - Node INPUT finished with status: ERROR caused by: -2
DEBUG [WatchDog] - Node INPUT error details:
java.lang.RuntimeException: -2
at org.jetel.connection.jdbc.SQLDataParser.populateField(SQLDataParser.java:246)
at org.jetel.connection.jdbc.SQLDataParser.parseNext(SQLDataParser.java:206)
at org.jetel.connection.jdbc.SQLDataParser.getNext(SQLDataParser.java:137)
at org.jetel.connection.jdbc.SQLDataParser.getNext(SQLDataParser.java:181)
at org.jetel.component.DBInputTable.execute(DBInputTable.java:242)
at org.jetel.graph.Node.run(Node.java:379)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ArrayIndexOutOfBoundsException: -2
at oracle.jdbc.driver.NumberCommonAccessor.getDouble(NumberCommonAccessor.java:1358)
at oracle.jdbc.driver.OracleResultSetImpl.getDouble(OracleResultSetImpl.java:581)
at org.jetel.connection.jdbc.CopySQLData$CopyNumeric.setJetel(CopySQLData.java:587)
at org.jetel.connection.jdbc.CopySQLData.sql2jetel(CopySQLData.java:145)
at org.jetel.connection.jdbc.SQLDataParser.populateField(SQLDataParser.java:234)
... 6 more
=============================================================================================================================
The “LOG_ID” is one of the especial fields, it is type is ‘number’, but there is lots of ‘number’ oracle fields which is OK.
By the way , the MateDate is from the Method AnalyzeDB().
The errors above is like that , when i try to fix it. every num type is wrong.
Following is some record from V$logmnr_contents:
THREAD# LOG_ID RBASQN RBABLK RBABYTE PXIDSQN PXIDSLT
---------- ---------- ---------- ---------- ---------- ---------- ----------
1 879 879 15508 16 7099 32
1 879 879 15508 16 7099 32
1 879 879 15509 36 7099 32
1 879 879 15510 16 5740 24
1 879 879 15510 16 5740 24
1 879 879 15511 92 5740 24
1 879 879 15511 488 5740 24
1 879 879 15514 16 6084 32
1 879 879 15514 16 6084 32
1 879 879 15515 296 6084 32
1 879 879 15516 28 6084 32
THREAD# LOG_ID RBASQN RBABLK RBABYTE PXIDSQN PXIDSLT
---------- ---------- ---------- ---------- ---------- ---------- ----------
1 879 879 15516 248 6084 32
1 879 879 15517 332 7100 43
1 879 879 15517 332 7100 43
1 879 879 15519 24 7100 43
1 879 879 15519 280 7100 43
1 879 879 15520 428 7100 43
1 879 879 15522 16 7102 16
1 879 879 15522 16 7102 16
已选择19行。
THE ‘THREAD#’ ’ LOG_ID’ ’ RBASQN ’ 'RBABLK ’ is error in CLoverETL
AND ’ RBABYTE ’ ’ PXIDSQN ’ ‘PXIDSLT’ is OK
By the way My cloverETL version is cloverETL.src.rel-2-5-4.zip