这种大概率是 jdbc 和 doris 兼容性的问题。我建议你通过debug 方式找到 jdbc 发给 doris 的原始 sql,并且直连
doris 看看这个sql 是否返回正常结果。
如果直连doris 正常,那可能要调整jdbc 的使用方式。

Ling Miao

温天柱 <wtz4...@163.com> 于2022年1月18日周二 10:57写道:

> column 17 这列字段时
> CHECK_TIME,字段类型是TIMESTAMP,其他表里这个字段值是NULL,部分表这个字段值是异常信息,情况比较奇怪。
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> 在 2022-01-18 10:51:49,"ling miao" <lingm...@apache.org> 写道:
> >首先你需要确认一下,column 17 这个列的类型是什么?以及 value 'e792-02-22 13:30:02' 是否是你表里面的数据。
> >
> >Ling Miao
> >
> >温天柱 <wtz4...@163.com> 于2022年1月18日周二 10:37写道:
> >
> >> 各位老师们好:
> >> 我通过jdbc的方式去查询Doris中存储的表信息时,有部分表返回类似如下报错:
> >>
> >>
> >> jdbc :
> >> Caused by: java.sql.SQLException: Cannot convert value 'e767-06-09
> >> 18:23:19' from column 17 to TIMESTAMP.
> >> at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:965)
> >> at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:898)
> >> at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:887)
> >> at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:861)
> >> at com.mysql.jdbc.ResultSetRow.getTimestampFast(ResultSetRow.java:1170)
> >> at com.mysql.jdbc.ByteArrayRow.getTimestampFast(ByteArrayRow.java:130)
> >> at
> >>
> com.mysql.jdbc.ResultSetImpl.getTimestampInternal(ResultSetImpl.java:5921)
> >> at com.mysql.jdbc.ResultSetImpl.getTimestamp(ResultSetImpl.java:5591)
> >> at com.mysql.jdbc.ResultSetImpl.getObject(ResultSetImpl.java:4552)
> >> at com.mysql.jdbc.ResultSetImpl.getObject(ResultSetImpl.java:4698)
> >> at
> >>
> com.dtstack.flinkx.metadatadoris.collector.JdbcCollector.toJavaBean(JdbcCollector.java:159)
> >> ... 11 more
> >> Caused by: java.lang.NumberFormatException: e767-06-09 18:23:19
> >> at com.mysql.jdbc.StringUtils.getInt(StringUtils.java:758)
> >> at com.mysql.jdbc.ResultSetRow.getTimestampFast(ResultSetRow.java:1008)
> >> ... 17 more
> >>
> >>
> >>
> >>
> >> 这种报错只存在部分表中,但是这些表没有任何异常,只是在information.tables查询出来的结果中CHECK_TIME字段存在报错:
> >> <failed to load>
> >> java.sql.SQLException: Cannot convert value 'e792-02-22 13:30:02' from
> >> column 17 to TIMESTAMP.
> >> at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:965)
> >> at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:898)
> >> at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:887)
> >> at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:861)
> >> at com.mysql.jdbc.ResultSetRow.getTimestampFast(ResultSetRow.java:1181)
> >> at com.mysql.jdbc.BufferRow.getTimestampFast(BufferRow.java:559)
> >> at
> >>
> com.mysql.jdbc.ResultSetImpl.getTimestampInternal(ResultSetImpl.java:5921)
> >> at com.mysql.jdbc.ResultSetImpl.getTimestamp(ResultSetImpl.java:5589)
> >> at com.mysql.jdbc.ResultSetImpl.getObject(ResultSetImpl.java:4550)
> >> in JdbcHelperImpl.getObject(JdbcHelperImpl.java:321)
> >> Caused by: java.lang.NumberFormatException:
> >> �xiaohe_dbxiao_ftp_dest_3_rep_10g
> >> BASE TABLEDoris���������2021-10-27 17:14:39�e792-02-22 13:30:02���OLAP
> >> at com.mysql.jdbc.StringUtils.getInt(StringUtils.java:758)
> >> at com.mysql.jdbc.ResultSetRow.getTimestampFast(ResultSetRow.java:1018)
> >> ... 25 more
> >>
> >>
> >> 请问这种报错应该如何处理呢?如果是Doris bug,我想尝试修复下
> >>
> >>
>

Reply via email to