Talend Open Studio不支持的数据转换

问题描述

我刚刚开始使用Talend Open Studio将数据从多个数据库迁移到单个仓库中。
目前正在将数据从OpenEdge Progress迁移到Postgres sql

我已经能够成功连接数据源并更新了查询,因此可以找到所有表。我目前遇到的问题是当我尝试实际利用数据时。

我已经创建了一个简单的输出,仅用于查看数据,并得到了不受支持的数据转换错误

Data Connection to LogRow

这是错误

Exception in component tDBInput_1 (Customer)
org.talend.components.api.exception.ComponentException: UNEXPECTED_EXCEPTION:{message=UNEXPECTED_EXCEPTION}
    at org.talend.components.jdbc.CommonUtils.newComponentException(CommonUtils.java:583)
    at org.talend.components.jdbc.runtime.reader.JDBCInputReader.start(JDBCInputReader.java:241)
    at org.talend.codegen.flowvariables.runtime.FlowVariablesReader.start(FlowVariablesReader.java:73)
    at local_project.customer_0_1.Customer.tDBInput_1Process(Customer.java:2418)
    at local_project.customer_0_1.Customer.runJobInTOS(Customer.java:3314)
    at local_project.customer_0_1.Customer.main(Customer.java:3163)
Caused by: org.talend.components.api.exception.ComponentException: UNEXPECTED_EXCEPTION
    at org.talend.components.common.avro.JDBCAvroRegistry$14.convertToAvro(JDBCAvroRegistry.java:492)
    at org.talend.components.common.avro.JDBCAvroRegistry$14.convertToAvro(JDBCAvroRegistry.java:481)
    at org.talend.components.common.avro.JDBCResultSetIndexedRecordConverter$ResultSetIndexedRecord.<init>(JDBCResultSetIndexedRecordConverter.java:104)
    at org.talend.components.common.avro.JDBCResultSetIndexedRecordConverter.convertToAvro(JDBCResultSetIndexedRecordConverter.java:82)
    at org.talend.components.common.avro.JDBCResultSetIndexedRecordConverter.convertToAvro(JDBCResultSetIndexedRecordConverter.java:23)
    at org.talend.components.jdbc.runtime.reader.JDBCInputReader.haveNext(JDBCInputReader.java:250)
    at org.talend.components.jdbc.runtime.reader.JDBCInputReader.start(JDBCInputReader.java:237)
    ... 4 more
Caused by: java.sql.sqlException: [DataDirect][OpenEdge JDBC Driver]Unsupported data conversion.
    at com.ddtek.jdbc.openedgebase.ddb9.b(UnkNown Source)
    at com.ddtek.jdbc.openedgebase.ddb9.a(UnkNown Source)
    at com.ddtek.jdbc.openedgebase.ddb8.b(UnkNown Source)
    at com.ddtek.jdbc.openedgebase.ddb8.a(UnkNown Source)
    at com.ddtek.jdbc.openedgebase.ddah.a(UnkNown Source)
    at com.ddtek.jdbc.openedgebase.ddah.a(UnkNown Source)
    at com.ddtek.jdbc.openedgebase.dddm.getBytes(UnkNown Source)
    at org.talend.components.common.avro.JDBCAvroRegistry$14.convertToAvro(JDBCAvroRegistry.java:486)
    ... 10 more

我已经使用了opensge.jar文件,并进行了遍历并验证了日期字段。任何帮助都将非常有用。

这是我正在使用的表的数据结构: Data Structure of Table

解决方法

我首先从负载中删除字段,然后重新运行它以缩小有问题的字段。我怀疑您的byte []数组。从那开始。然后可能是下一个约会。一旦缩小范围,我们就可以尝试找出实际的转换错误以及如何处理。