java.sql.SQLTimeoutException: ORA-01013: 用户请求取消当前的操作

简介: java.sql.SQLTimeoutException: ORA-01013: 用户请求取消当前的操作

 问题背景:

在应用中配置了第三方数据源,启动时未报错。但是当使用应用中的数据集管理功能去加载配置的第三方数据源的所有视图时,一直报如下错误:

2022-08-12 09:57:44 ERROR DruidDataSource: create connection SQLException, url: jdbc:oracle:thin:@10.254.100.115:1521:ORCL, errorCode 1013, state 72000
java.sql.SQLTimeoutException: ORA-01013: 用户请求取消当前的操作
ORA-06512: 在 "SYS.XMLTYPE", line 272
ORA-06512: 在 line 1
  at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:509) ~[ojdbc8-19.3.0.0.jar:19.3.0.0.0]
  at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:461) ~[ojdbc8-19.3.0.0.jar:19.3.0.0.0]
  at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1104) ~[ojdbc8-19.3.0.0.jar:19.3.0.0.0]
  at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:550) ~[ojdbc8-19.3.0.0.jar:19.3.0.0.0]
  at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:268) ~[ojdbc8-19.3.0.0.jar:19.3.0.0.0]
  at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:655) ~[ojdbc8-19.3.0.0.jar:19.3.0.0.0]
  at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:229) ~[ojdbc8-19.3.0.0.jar:19.3.0.0.0]
  at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:41) ~[ojdbc8-19.3.0.0.jar:19.3.0.0.0]
  at oracle.jdbc.driver.T4CStatement.executeForDescribe(T4CStatement.java:765) ~[ojdbc8-19.3.0.0.jar:19.3.0.0.0]
  at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:983) ~[ojdbc8-19.3.0.0.jar:19.3.0.0.0]
  at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1168) ~[ojdbc8-19.3.0.0.jar:19.3.0.0.0]
  at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:1362) ~[ojdbc8-19.3.0.0.jar:19.3.0.0.0]
  at oracle.jdbc.driver.OracleStatementWrapper.executeQuery(OracleStatementWrapper.java:369) ~[ojdbc8-19.3.0.0.jar:19.3.0.0.0]
  at com.alibaba.druid.pool.vendor.OracleValidConnectionChecker.isValidConnection(OracleValidConnectionChecker.java:84) ~[druid-1.2.6.jar:1.2.6]
  at com.alibaba.druid.pool.DruidAbstractDataSource.validateConnection(DruidAbstractDataSource.java:1398) ~[druid-1.2.6.jar:1.2.6]
  at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1733) ~[druid-1.2.6.jar:1.2.6]
  at com.alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:2801) [druid-1.2.6.jar:1.2.6]

image.gif

解决过程:

1. 在网上百度了此问题的解决方案。

一种说是此问题可能是数据库有事务未提交,导致锁表,sql语句执行超时。 使用语句查询了之后,未发现有锁表。

2. 看到报错中有SYS.XMLTYPE,推测可能是第三方提供的用户权限不够,查了用户的权限,发现用户的权限还挺大。

3. 再仔细阅读报错信息,发现是创建链接时的校验报错了。

image.gif编辑

再回想起自己在数据库连接中的校验相关信息配置的是一个视图,于是改成一张物理表,重启服务,问题解决。

image.gif编辑


目录
相关文章
|
1月前
|
Java
Java aop 如何获取请求头里的token
【8月更文挑战第13天】Java aop 如何获取请求头里的token
78 0
|
2月前
|
Java BI 数据处理
如何在Java中实现Excel操作
如何在Java中实现Excel操作
|
1月前
|
SQL JSON Go
Go - 基于 GORM 获取当前请求所执行的 SQL 信息
Go - 基于 GORM 获取当前请求所执行的 SQL 信息
37 3
|
25天前
|
SQL 流计算
慢sql治理问题之下游 Task 频繁请求 JobMaster 导致 RPC 超时的问题你们是如何解决的
慢sql治理问题之下游 Task 频繁请求 JobMaster 导致 RPC 超时的问题你们是如何解决的
|
2月前
|
存储 Java 索引
Java ArrayList操作指南:如何移除并返回第一个元素
通过上述方法,你可以方便地从Java的 `ArrayList` 中移除并返回第一个元素。这种操作在日常编程中非常常见,是处理列表时的基本技能之一。希望这篇指南能帮助你更好地理解和运用Java的 `ArrayList`。
37 4
|
27天前
|
数据采集 人工智能 监控
【Azure 应用程序见解】Application Insights Java Agent 3.1.0的使用实验,通过修改单个URL的采样率来减少请求及依赖项的数据采集
【Azure 应用程序见解】Application Insights Java Agent 3.1.0的使用实验,通过修改单个URL的采样率来减少请求及依赖项的数据采集
|
2月前
|
分布式计算 DataWorks Java
DataWorks操作报错合集之使用ODPS Tunnel Upload功能时,遇到报错:Java 堆内存不足,该如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
2月前
|
数据采集 Web App开发 Java
Java爬虫安全策略:防止TikTok音频抓取过程中的请求被拦截
Java爬虫安全策略:防止TikTok音频抓取过程中的请求被拦截
|
2月前
|
SQL 缓存 Java
使用MyBatis优化Java持久层操作
使用MyBatis优化Java持久层操作
|
2月前
|
SQL Cloud Native 关系型数据库
云原生数据仓库使用问题之控制JDBC方式请求的SQL大小限制的参数是什么
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。