One of our production databases had 25 constraints that were disabled. I would like to know how they became disabled. The server is a PIII with 2gb ram and 70 gb raid 5 running Oracle 8.1.6. Has anyone ever heard of 8.1.6 having problems with constraints becoming invalid? We are not running auditing. Does anyone have any suggestions as to how I can find out when they became disabled?
Any help would be appreciated. I certainly am not discounting the possibility that it was either done intentionally by a person or by the software that runs against the database. I just want to make sure that I check out the other possible causes as well.
Is anyone doing any table reorganization, or is your application doing any bulk loading of data? A technique in bulk loading is to disable contraints on one or more tables (because of the way the data is organized) so all of the data goes in, and then the contraints are enabled.
For auditing - select one of the tables where the problem is occuring. Write a trigger that records what is happening to the table (row/table, before/after, insert/update/delete - the 12 types available - 2x2x3 options) and then check the status. Check the before and after status of a constraint.