Člověk jednou za čas narazí na něco, co tu bylo odjakživa, ale je to pro něj nová zkušenost. Zrovna dnes jsem poprvé v kariéře narazil na chybu ORA-1097. Byl jsem v testovací databázi a potřeboval jsem ji vypnout.
SQL> shutdown immediate ORA-01097: cannot shutdown while in a transaction - commit or rollback firstŘešení je nasnadě. Buď potvrďte svou transakci, nebo ji vraťte zpět a pak mohu pokračovat.
SQL> commit; Commit complete. SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down.S tak nízkým číslem chyb to muselo být už hodně dlouho. Nejprve jsem byl chybou zaskočen. Co tím myslíš, že nemohu vypnout svou instanci? Pak jsem si přečetl chybovou zprávu a uvědomil jsem si, co se děje. Myslím, že to dává smysl. Oracle chce vědět, co dělat s vaší transakcí, než bude možné zahájit odstávku. Pokud provedete PŘERUŠENÍ VYPNUTÍ, Oracle vám tuto zprávu neposkytne, ale vrátí transakci zpět při obnově instance. Morálka příběhu je taková, že i když jste tu byli dlouho a viděli jste toho hodně, neviděli jste to. Všechno.