Archives

Archives

The reasons why I always avoid to shutdown abort

It is a common practice to always shutdown abort the database before restarting and shutting in down immediate. This is because sometimes SHUTDOWN IMMEDIATE takes ages. For instance due to a huge transaction to be rollback.

I do not like it. At all.

First, chance exists that you won’t be able to start the database anymore. I have not heard or meet anyone who had this issue since Oracle7, but I still believe it.

Second, shutdown abort is very useful if something goes seriously wrong. But if something goes wrong, you may want to find out what it is.

Third, you may hit more bugs than if you do close normal. And you may get less help from support if this is due to an abusive shutdown abort. YMMV

Ok, small demo to preach to the converteddisclaimer: this demo is not innocent, do not try this on your database

The problem with abort has always been that it exposes you unnecessarily to any redo stream problem. Now, for years many people claim (one way or another) that the redo stream is inviolate, if you don’t trust Oracle recovery you should go work on Access, etc. The general claim is that redo and commit are atomic, either something is done or not, and recovery will always sort it out.

Well, I’m more paranoid than that, partly because I’ve seen standby go bonkers in several versions, and what is standby than continuous recovery (granted, once things get out into a network there are additional corruption vectors), and partly because a quick look at bugs in recent versions still finds recovery bugs (Bug 9406607 in my 2-minute search looks tasty, though not completely deadly). A less common but still seen issue is hardware errors (sometimes silly configuration that allows hardware to lie to Oracle, sometimes real problems like earlier SSD’s aging and randomly flipping bits).

I’ve certainly seen plain old crashing make problems in 8 and 8i. One of my favorites was a Sun box in a secure military center with the db set to autostart. Electrician comes in and starts working on the UPS, booting the Sun repeatedly as it tries to come up. All you need is the right paperwork…

Add a few new features, and look what you demo in a dozen lines. Respect shutdown au-thor-i-tah.