我的团队中有一些人正在对Oracle数据库进行性能testing。 在脚本执行过程中,他们看到v $ sysstat表中的“用户回滚”值大大增加。 在模拟几百个用户的小时testing中,这个值增加了几十万。 testing大部分只对数据库执行只读操作,或者执行简单的插入操作。 所以我不希望任何交易回滚。 这个值是什么意思? 我应该关心这个统计吗? 我应该看到什么原因?
如果重要的话,testing是针对通过ADO.NET和ODP.NET生成SQL的ASP.NET应用程序执行的。
我怀疑这是应用程序如何“结束”不进行更新的事务的人为因素。
检查统计“回滚更改 – 撤消logging应用”。 这实际上指的是回滚所做的工作量(即实际上需要回滚的实际数量)。