BBS.ChinaUnix.net
今日推荐    首页 | 新闻 | Linux | AIX | 博客 | 论坛 | 存储 | 人才 | 培训 | 知识库 | 资料 | 读书 | 手册 | 精华 | 下载 | 空间     
  会员: 密码: 免费注册 | 忘记密码 | 会员登录 | 搜索 | 帮助 


一次锁阻塞的解决过程

首页 » 论坛 » Sybase »  
[打印] [订阅] [收藏] [推荐给朋友] [本帖文本页]
shawnlee
精灵王




UID:108983
注册:2003-11-3
最后登录: 2008-07-05
帖子:386
精华:0

可用积分:808
信誉积分:100
专家积分:0 (本版)

状态:...离线...

[个人空间] [短信] [博客]


顶部
1楼 发表于 2007-10-26 14:40 
•        问题的出现及现象描述
今年9月,我给我公司的一个报社用户升级基于sybase数据库的应用系统。为此制定了两套升级方案:一是整库的dump/load,二是表的bcp。考虑到升级的时间限制、库结构的变化以及数据库字符集要由iso_1迁移为cp850,最后决定采用方案二,即:表的bcp拷贝。经过供需双方技术人员的共同努力,整个系统顺利升级并一次切换成功。
就在其后的系统运行跟踪期间,系统出现了异常,具体现象表现为,输入登陆帐号后,应用程序界面迟迟不出现,而查看Windows进程却发该应用的进程显示,把Sybase 数据库服务重起后,则应用系统恢复正常。
•        查明问题原因
这个问题在我们众多的用户中从来没碰到过。经过现场观察和深入分析,首先查看服务器的系统日志和Sybase数据库的errorlog日志文件,经过细致的观察,均发现有大量的错误信息存在:
00:00000:00203:2007/09/03 10:12:04.59 kernel  Cannot send, host process disconnected: 2708 spid: 203
00:00000:00203:2007/09/03 10:12:04.59 server  Error: 1608, Severity: 18, State: 4
00:00000:00203:2007/09/03 10:12:04.59 server  A client process exited abnormally, or a network error was encountered. Unless other errors occurred, continue processing normally
根据以往经验,1608错误原因一般是网络不稳定或客户端不正常退出引起的,经过对网络环境进行勘察核实,首先排除了网络不稳定因素和病毒;由于现场问题时,问题不再现,而数据库、应用软件都很正常,致使排错进程陷入僵局。
不经意间,想起以前作过锁表的实验,会不会是锁的阻塞引起的呢?于是对应用系统登陆模块用到的表进行手动了锁定试验:(应用系统登陆都要用到该表)
use ImplyDB
Go
Begin tran
Update ImplyTable set UpdateFlag=’1’ where LoginName=’user1’
Go
此时进入应用系统时,异常出现了,由此断定故障就是由锁的阻塞引起的。
•        故障现象解释
Adaptive Server 的缺省隔离级别是1,即防止脏读。级别1的查询只读取已提交的数据更改。在隔离级别1,如果事务需要读取被另一会话中未完成的事务修改过的行,该事务将等待,直到第一个事务完成(提交或回退)。

此次系统异常的原因,可能是工作站由于性能的原因,不能及时完成对登陆表的处理,而占用了锁,进而造成随后登陆的帐户的锁的等待,因此造成表的阻塞,从而引发文中所描述的异常现象。
•        故障处理
原因找到了,问题迎刃而解。首先安装我公司研发的锁监控程序,其次,将表锁改为行锁。



您对本贴的看法:鲜花[0] 臭蛋[0]
CU可用积分兑换Linux/Unix精品图书 |《Ubuntu标准教程》书评获奖名单公布
ehxz   帅哥 (宗宗)
侠客
宗宗



UID:122155
注册:2003-12-25
最后登录: 2008-04-03
帖子:41
精华:0

可用积分:252
信誉积分:100
专家积分:0 (本版)

来自:http://www.dbacn.com/
状态:...离线...

[个人空间] [短信] [博客]


顶部
2楼 发表于 2007-10-28 10:36 
学习!1608的确太常见了。



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

欢迎光临SYBASE中国论坛

http://www.sybasecn.com/
CU可用积分兑换Linux/Unix精品图书 |《Ubuntu标准教程》书评获奖名单公布
zhhui2000
光明使者



UID:34348
注册:2002-12-15
最后登录: 2008-03-13
帖子:972
精华:0

可用积分:474
信誉积分:100
专家积分:0 (本版)

来自:湖南长沙
状态:...离线...

[个人空间] [短信] [博客]


顶部
3楼 发表于 2007-10-29 10:24 
如果系统有问题时,用sp_lock

sp_who 看一下的法,就会发现问题所在.

BTW.
您的这种分享精神,值得我们学习.



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

什么都会,什么都不会。
CU可用积分兑换Linux/Unix精品图书 |《Ubuntu标准教程》书评获奖名单公布
shawnlee
精灵王




UID:108983
注册:2003-11-3
最后登录: 2008-07-05
帖子:386
精华:0

可用积分:808
信誉积分:100
专家积分:0 (本版)

状态:...离线...

[个人空间] [短信] [博客]


顶部
4楼 发表于 2007-10-29 10:31 
是,如果出问题的时候在场的话,有可能用sp_who ,sp_lock看下,但出问题的时候不在现场,人到现场的时候,问题又不出现了,



您对本贴的看法:鲜花[0] 臭蛋[0]
CU可用积分兑换Linux/Unix精品图书 |《Ubuntu标准教程》书评获奖名单公布
wuicpp
精灵



UID:589636
注册:2007-7-20
最后登录: 2008-07-04
帖子:151
精华:0

可用积分:235
信誉积分:100
专家积分:0 (本版)

状态:...离线...

[个人空间] [短信] [博客]


顶部
5楼 发表于 2007-11-8 19:47 
看来规划表的锁是很重要的,登陆用户表这种表由于表大小不是特别大,而且记录登陆状态应该用行级锁.



您对本贴的看法:鲜花[0] 臭蛋[0]
CU可用积分兑换Linux/Unix精品图书 |《Ubuntu标准教程》书评获奖名单公布
donniejeck   帅哥
精灵王




UID:236982
注册:2005-3-11
最后登录: 2008-06-27
帖子:328
精华:0

可用积分:285
信誉积分:100
专家积分:0 (本版)

状态:...离线...

[个人空间] [短信] [博客]


顶部
6楼 发表于 2007-11-12 18:38 
1608经常在应用系统中出现,偶尔也会造成锁阻塞.



您对本贴的看法:鲜花[0] 臭蛋[0]
CU可用积分兑换Linux/Unix精品图书 |《Ubuntu标准教程》书评获奖名单公布

首页 » 论坛 » Sybase »


 


Copyright © 2001-2008 ChinaUnix.net All Rights Reserved     联系我们:

感谢所有关心和支持过ChinaUnix的朋友们    转载本站内容请注明原作者名及出处

京ICP证041476号


清除 Cookies - ChinaUnix - Archiver - WAP - TOP

Processed in 0.052176 second(s), 4 queries , Gzip enabled