无鱼之水

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2010年12月29日

摘要: 本来无驱状态用着挺不错的,自从戒了游戏之后,感觉Ubuntu没有什么不适应的地方。偏偏前几天抽风学人家玩3D桌面。也没怎么详细查资料,听信某些网友片面之言,上来先装了闭源驱动。重启。我了个去,黑屏了。 我这个物语阿,本机非公版HD3850显卡,显示器比较老了,最高支持13**分辨率。再重启一次,看显示器提示信息,超出显示范围。按照之前用电视卡的经历,应该是分辨率设的太高了。 cat /etc/X11/xorg.conf 居然没有显示器分辨率设置: 那fglrx默认的分辨率难道是动态计算的?狗日的。 上links, 放狗,无果。 无奈手动设置Screen的SubSection: 重启,X启动成 阅读全文
posted @ 2010-12-29 20:17 陈伟强 阅读(409) 评论(0) 推荐(0) 编辑

摘要: 自己写来玩的,只做测试用。使用sys.dm_tran_locks表Resource_description列值。完全不排除不准确的可能 只适用Clustered Index,Non-Clustered Index使用DBCC PAGE更快一些。[代码] 用法: usp_PKHash N'TableName', N'PKColumnName', N'Filter' 阅读全文
posted @ 2010-12-29 18:57 陈伟强 阅读(314) 评论(0) 推荐(0) 编辑

摘要: 今天改一处效率问题,对一个临时表进行分段累加计算,累加方式为累积(Cumulative Aggregations),大约9万条记录的表,时间超过三分钟。执行环境:SQL SERVER 2005 ENTERPRISE EDITION8 CPU CORES16G MAXSERVERMEMORY累加算法如下:代码 执行计划可以想象,内连接驱动假脱机(Inner Join Drived Eager Spool)。其中假脱机运算符占据了多数的CPU时间。 一开始打算使用开窗聚合函数(Window Aggregations),查资料发现SQL SERVER 2005只为聚合函数实现了带Partion语句的 阅读全文
posted @ 2010-12-29 18:43 陈伟强 阅读(231) 评论(0) 推荐(0) 编辑

摘要: 今天修改一处并发问题,小记如下。 程序的核心代码包括以下存储过程(示例代码,未包含索引及TRY..CATCH逻辑)。持锁存储过程 程序的基本逻辑是这样的: 程序在并发条件下经常出现超时情况,Profiler截取GenerateLSH执行时间没有发现明显规律。 转而一想,由于启用了RCSI,是否跟存储过程中唯一的一句Update语句有关。因为只有这一句会持有KEY锁。这个存储过程只能是线性执行,其持有的KEY锁生命周期为: @time = TimePoint(Commit Tran) - TimePoint(Exec Proc) 以程序30秒的超时间隔计算,允许的并发数可粗略计算为: @coun 阅读全文
posted @ 2010-12-29 18:36 陈伟强 阅读(326) 评论(2) 推荐(0) 编辑