应用前端报错:
ORA-01460: unimplemented or unreasonable conversion requested
据排查分析是在处理clob类型时偶尔发生这个报错,再次运行便恢复正常,而且已经持续了一段时间。
2022-06-27 15:39:54,062 [DEBUG] com.mchange.v2.c3p0.impl.NewPooledConnection com.mchange.v2.c3p0.impl.NewPooledConnection@5f5d43a2 handling a throwable. java.sql.SQLException: ORA-01460: unimplemented or unreasonable conversion requested at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:447) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396) at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:951) at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:513) at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:227) at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531) at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:205) at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:1036) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1336) at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3608) at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3709) at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4735) at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1090) at com.mchange.v2.c3p0.impl.NewProxyCallableStatement.execute(NewProxyCallableStatement.java:3044) at com.xxxx.cop.db.DBHelper.execute(DBHelper.java:320) at com.xxxx.cop.xscript.scriptmodel.ProcedureHandler.execute(ProcedureHandler.java:91) at com.xxxx.cop.xscript.scriptmodel.XScriptModel.runModel(XScriptModel.java:35) at com.xxxx.cop.xscript.runtime.XScriptRuntime.runModel(XScriptRuntime.java:223) at com.xxxx.cop.xscript.runtime.XScriptRuntime.runArrows(XScriptRuntime.java:177) at com.xxxx.cop.xscript.runtime.XScriptRuntime.runArrows(XScriptRuntime.java:198) at com.xxxx.cop.xscript.runtime.XScriptRuntime.runArrows(XScriptRuntime.java:198) at com.xxxx.cop.xscript.runtime.XScriptRuntime.runArrows(XScriptRuntime.java:198) at com.xxxx.cop.xscript.runtime.XScriptRuntime.runArrows(XScriptRuntime.java:198) at com.xxxx.cop.xscript.runtime.XScriptRuntime.runArrows(XScriptRuntime.java:198) at com.xxxx.cop.xscript.runtime.XScriptRuntime.runArrows(XScriptRuntime.java:198) at com.xxxx.cop.xscript.runtime.XScriptRuntime.runArrows(XScriptRuntime.java:198) at com.xxxx.cop.xscript.runtime.XScriptRuntime.runArrows(XScriptRuntime.java:198) at com.xxxx.cop.xscript.runtime.XScriptRuntime.execute(XScriptRuntime.java:168) at com.xxxx.cop.xscript.runtime.XScriptRuntime.runScript(XScriptRuntime.java:86) at com.xxxx.cop.dispatcher.engine.flow.BaseService.runScript(BaseService.java:77) at com.xxxx.cop.dispatcher.engine.flow.BaseService.runScript(BaseService.java:61) at com.xxxx.cop.dispatcher.engine.flow.CreateProcess.createProcess(CreateProcess.java:95) at sun.reflect.GeneratedMethodAccessor1836.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.xxxx.cop.dispatcher.engine.execute.SunDSExecEngine.invoke(SunDSExecEngine.java:118) at com.xxxx.cop.dispatcher.engine.execute.SunDSExecEngine.execute(SunDSExecEngine.java:50) at sun.reflect.GeneratedMethodAccessor1829.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.xxxx.cop.util.reflect.ReflectHandler.invoke(ReflectHandler.java:224) at com.xxxx.cop.util.reflect.ReflectHandler.invoke(ReflectHandler.java:162) at com.xxxx.cop.communication.SocketMSGUtil.bussProcess(SocketMSGUtil.java:178) at com.xxxx.cop.communication.SocketMSGUtil.run(SocketMSGUtil.java:54) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)
复制
根据业务反馈,该业务模块之前从未出现问题,就是在Oracle由10g升级到19c以后频繁发生告警,最终怀疑的ojdbc驱动版本太低带来的问题。我们的ojdbc版本为ojdbc14.jar 这个版本是9i、10g时候使用的,所以决定升级到对应的版本ojdbc8.jar,升级到目前为止不再报ORA-01460错误。
Oracle适配的驱动版本:
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
【纯干货】Oracle 19C RU 19.27 发布,如何快速升级和安装?
Lucifer三思而后行
762次阅读
2025-04-18 14:18:38
Oracle RAC 一键安装翻车?手把手教你如何排错!
Lucifer三思而后行
649次阅读
2025-04-15 17:24:06
Oracle数据库一键巡检并生成HTML结果,免费脚本速来下载!
陈举超
571次阅读
2025-04-20 10:07:02
【ORACLE】你以为的真的是你以为的么?--ORA-38104: Columns referenced in the ON Clause cannot be updated
DarkAthena
525次阅读
2025-04-22 00:13:51
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
518次阅读
2025-04-17 17:02:24
【ORACLE】记录一些ORACLE的merge into语句的BUG
DarkAthena
498次阅读
2025-04-22 00:20:37
一页概览:Oracle GoldenGate
甲骨文云技术
483次阅读
2025-04-30 12:17:56
火焰图--分析复杂SQL执行计划的利器
听见风的声音
440次阅读
2025-04-17 09:30:30
3月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
381次阅读
2025-04-15 14:48:05
OR+DBLINK的关联SQL优化思路
布衣
372次阅读
2025-05-05 19:28:36