A failure in DBMS is categorized into the following three classifications to ease the process of determining the exact nature of the problem:
- Transaction failure
- Disk failure
- System crash
Types of failure
Transaction failure
A failure in transaction occurs when the transaction is unable to execute or if it reaches a point from where the execution cannot proceed any further. If two or more operations are hampered, then a transaction failure takes place.
Some of the reasons for transaction failure include:
Logical flaws
When the execution of a transaction fails due to internal errors or mistakes in the code, then that is a logical flaw or error.
Syntax flaw
Syntax flaw takes place when the DBMS terminates an ongoing transaction on its own due to the failure of the system to execute it. For instance, abortion of a current transaction takes place during deadlock or unavailability of resources.
Disk failure
Disk failure occurs due to frequent failure of hard disks and storage drives.
Few reasons for disk failure are the formation of damaged sectors, head crash, unreachability, and destruction of the disk.
System crash
Power cuts and failure in software and hardware causes a system crash, for instance, OS crash.
The non-volatile memory does not get affected in a system crash (Fail-stop assumption).