Re: Thoughts on implicit/auto COMMITs

  • From: Rich J <rjoralist3@xxxxxxxxxxxxxxxxxxxxx>
  • To: oracle-l@xxxxxxxxxxxxx
  • Date: Thu, 15 Mar 2018 08:23:43 -0500

On 2018/03/15 07:34, Jeff Smith wrote:

Brent is a friend and an ex-coworker. He wanted to share the background of 
this customer's scenario, in case it would help you with yours. 

I let Brent know some folks were having...fun...with his take on autocommit. 

Jeff 

_Heh heh heh, I can only imagine. The difference on optimistic vs pessimistic 
concurrency nailed it though - the default combo of optimistic & implicit 
transactions makes sense in Oracle, and the default of pessimistic and 
automatic transactions makes sense in SQL Server. It's when you change only 
one of those two settings that you're screwed._ 

_The blog post stemmed from an app that had been written by SQL Server 
people, and then an Oracle guy came in and made a few changes. He switched to 
implicit transactions without understanding that everybody was doing 
single-line inserts/updates all over the place in code, not bothering to set 
transactions. He didn't understand the impact of what he was doing. (Not an 
Oracle jab by any means - the guy was well-meaning but just not prepared.)_ 

_We got called in because performance went straight into the toilet. Even 
worse, rollbacks were rolling back completely unrelated transactions, and 
nobody knew why, hahaha_.

Ah, that context adds a lot to the assertion.  I still disagree that
autocommit is a good practice for applications, whether it's Oracle or
SQL Server, but I understand where Brent's coming from. 

And my intent wasn't to have "fun", but a sanity check for myself.  IT
changes constantly outside of my narrow focus, and as I've been
following Brent's blog for years, that entry offers an opinion that is
completely backwards of my understanding of how any modern RDBMS should
work. 

So, of course, I ask _Oracle_ people about it.  :) 

Thanks all for the sanity check!
Rich

Other related posts: