今天上午,收到运维组同事反映某应用系统的其中一个功能报错,不是偶然性事件,每个使用该功能的用户都报错。报错内容为:This transaction has been rolled back, rather than only the current.
为了进一步分析该问题,并解决问题,产生了如下对话:
“ 系统昨天晚上是否发布过程序或者做过相关较大的调整? “
”没有。没有做过任何调整。“
”该功能涉及到了哪些表?主要是干嘛的?”
“该功能主要是向中间库发送数据的,但是中间库我试过访问是正常的。”
“我先看看中间库吧,你顺便帮我找一下是涉及到了哪些表。”
几分钟之后,相关数据库表已经搜集完毕,我登录上接口服务器,发现数据库确实正常,测试代理服务,所有连接都是正常的。根据搜集到的库表,在生产库上通过代理表尝试访问,没有报错。一切看起来都好像很正常的样子。
“这个表读写数据 应该是比较频繁吧?怎么会没有数据?”
”不知道哦,这个表不应该没有数据才对呀。”
根据以往经验,SYBASE有时候代理表会莫名其妙的出现“可连通,但是读写不了”的情况。
“你去试试在主库里通过客户端读写一下这个代理表(AAA),看看能否正常写入数据?”
“测试结果报错,内容跟程序客户端之前抛出的异常一样。”
到这里,十有八九就是代理表异常了。于是,通过管理端,把相关涉及到的代理表进行了删除、重建,在管理端里尝试读取数据,可以正常看到数据了。
”你再让客户重新发送一下数据看看是否正常?”
几分钟过后。。。。
“都OK了,一切正常!”
问题是否到此结束?差多了,但是还未确保完全结束。
“你把代理表都检查一下,看看哪些在管理端里都没办法看到数据的,全部都重建一下吧,说不准一会某些功能用到的表也有问题,又要一大片人跳起了。”
“好的。”
PS:代理表莫名其妙会出现读不到数据的情况,之前出现过,咨询过原厂的工程师,当时也并没有得到一个确切的答案。不过经过我们测试,重建就可以解决了。希望知道如何可以根本解决的大虾给予指点,小弟不胜感激:)
This transaction has been rolled back, rather than only the current.的更多相关文章
-
ORA-06519: active autonomous transaction detected and rolled back
这个问题一般怎么解决 ?现在忙 待会贴详细代码 先给些路子..给位大大们 引用 楼主 green3365302 的回复: 这个问题一般怎么解决 ?现在忙 待会贴详细代码 先给些路子..给位大大们 ...
-
The transaction log for database 'xxxx' is full due to 'ACTIVE_TRANSACTION'
今天查看Job的History,发现Job 运行失败,错误信息是:“The transaction log for database 'xxxx' is full due to 'ACTIVE_TRA ...
-
Compensating Transaction Pattern(事务修正模式)
Undo the work performed by a series of steps, which together define an eventually consistent operati ...
-
关于Oracle AUTONOMOUS TRANSACTION(自治事务)的介绍
AUTONOMOUS TRANSACTION(自治事务)的介绍 在基于低版本的ORACLE做一些项目的过程中,有时会遇到一些头疼的问题,比如想在执行当前一个由多个DML组成的transaction(事 ...
-
(转)关于Oracle AUTONOMOUS TRANSACTION(自治事务)的介绍
AUTONOMOUS TRANSACTION(自治事务)的介绍 在基于低版本的ORACLE做一些项目的过程中,有时会遇到一些头疼的问题,比如想在执行当前一个由多个DML组成的transaction(事 ...
-
Ehcache(2.9.x) - API Developer Guide, Transaction Support
About Transaction Support Transactions are supported in versions of Ehcache 2.0 and higher. The 2.3. ...
-
mysql &; java &; spring transaction isolation level
mysql /*SESSION LEVEL*/ select @@tx_isolation; /*GLOBAL LEVEL*/ select @@global.tx_isolation; select ...
-
[转]How to nest transactions nicely - ";begin transaction"; vs ";save transaction"; and SQL Server
本文转自:http://geekswithblogs.net/bbiales/archive/2012/03/15/how-to-nest-transactions-nicely---quotbegi ...
-
MySQL 5.6 Reference Manual-14.3 InnoDB Transaction Model and Locking
14.3 InnoDB Transaction Model and Locking 14.3.1 InnoDB Lock Modes 14.3.2 InnoDB Record, Gap, and Ne ...
随机推荐
-
PROC SORT
PROC SORT DATA=输入数据集 <OUT=输出数据集><选项>; BY 关键变量; RUN; PROC SORT 语法如上,其中在尖括号中的可以不出现,也不会报错. ...
-
grep、egrep、fgrep
grep: global search regular expression and printing
-
SQL Server远程连接操作
有时候需要在跨数据库或者跨服务器间进行操作时,可用以下代码: -- 开启远程选项 reconfigure reconfigure -- 方法1: -- 方法2: * FROM OPENROWSET(' ...
-
【C++基础】 各种“虚”总结(ing...)
虚基类,虚函数,虚析构函数,纯虚函数,虚函数表(待补充) 一.虚基类——在继承方式(public / private)之前加 virtual class B1: virtual public B0{} ...
-
vs下开端口直接调试iis
有些时候我们接口调试不想发布然后挂到iis下面,因为这样子调试有点麻烦,不是不可以调试.当然我们就希望在vs下直接运行直接打断点调试! 只需要三步就可以实现: 1) 找到这个文件 2) 打开上面文 ...
-
使用.NET Core在RESTful API中进行路由操作
介绍 当列出REST API的最佳实践时,Routing(路由)总是使它位于堆栈的顶部.今天,在这篇文章中,我们将使用特定于.NET Core的REST(web)API来处理路由概念. 对于新手API ...
-
还是Go 为了伟大的未来
今天,还是想讲讲Go 我觉得还没讲够,哈哈哈 其实,是想把框架再清晰些,因为上一篇框架没能引入goroutine(协程),感觉比较遗憾 下边,我就用上goroutine,但这里的协程仅是为了演示,没有 ...
-
【scrapy】爬虫的时候总在提示 KeyError: &#39;novelLabel&#39;
调试的时候总是提示 KeyError: 'novelLabel'然后决定断点调试一下, 在def parse_book_list(self, response):方法下,添加print(respons ...
-
Android-okhttp下载网络图片并设置壁纸
在AndroidManifest.xml配置网络访问权限: <!-- 访问网络是危险的行为 所以需要权限 --> <uses-permission android:name=&quo ...
-
View的setLayerType() , setDrawingCacheEnabled() 方法用法
一.Android开发:用getDrawingCache方法获取ImageView中的图像需要注意的问题http://www.linuxidc.com/Linux/2011-09/43131.htm ...