没有不可能--测试很重要

      前段时间我们进行数据库的升级测试,测试的规模和投入的力量都是很大的。从9i到10g,本以为会非常顺利(ORACLE产品都自家兄弟,并且都是比较可靠的RELEASE 2 ),但是确实发现了一个重大的问题。
      在一个通过统计查询显示趋势图的页面,原本显示的很正常的图形在接入10g数据库后显示的乱七八糟。-:(
       后来终于查明:
     
    starting with 10g, Oracle uses the new HASH GROUP BY mechanism which will not guarantee the result in any order unless ORDER BY clause is specified.
    In a nutshell, in Oracle 9i, GROUP BY clause gives result in sort order, this behavior has changed from 10g onwards.
    The general and Oracle recommendation is, to add the ORDER BY clause in order to have 100% guaranteed order by result.

        鉴于对现有应用影响最小的原则:将该排序方法在数据库服务器端停止。 即修改了ORACLE10g的隐含参数:_gby_hash_aggregation_enabled=false,输出的趋势图终于没有问题了。

         良好的测试,尤其是优良的测试用例,真的可以让我们自己的应用在上线前避免很多错误,甚至上线后发现问题我们仍然可以比较快速的定位问题。没有什么不可能,错误可以无处不在,并且往往是那些没有被测试或者认真测试过的地方 -:)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值