Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: shutdown abort and database consistency
A couple of comments in-line.
-- Jonathan Lewis http://www.jlcomp.demon.co.uk Next Seminars UK July / Sept Australia July / August Malaysia September USA (MI) November http://www.jlcomp.demon.co.uk/seminar.html Howard J. Rogers wrote in message ...Received on Wed Jul 10 2002 - 02:44:38 CDT
>So the database opens fine, but the table is missing, in its entirety. Not
>just the records.... the table itself. Why? Because when you create a table
>'nologging', the entries in the data dictionary to record its creation are
>not logged either. Therefore, the change to the data dictionary is lost
>along with the insertion of records. But the database is consistent
>(consistently missing table NASTY, anyway).
>
I think you may need to review the above. The data dictionary entries to record its creation are logged, but the sequence of events is: create temporary segment load data into temporary segment create most table definitions entries attach temp segement to table definition eliminate temp segment definition. So if you crash in mid-create, there is only a temp segment definition in the dictionary to clear out (smon) on startup.
>
>So the last batch insert was lost, but not the preceeding ones. I *was*
>committing after each insert, though. Had I not been, I would have lost the
>lot. But the database would have opened consistent.
>
It doesn't change the nature of your argument, but if you had not been committing between inserts you would have got oracle error: ORA-12838: cannot read/modify an object after modifying it in parallel. ;)