Sometimes a transaction has to be undone after it has commited, because it was erroneously executed, for example because of erroneous input by a bank teller.
a. Give an example to show that using the normal transaction undo mechanism to undo such a transaction could lead to an inconsistent state.
b. One way to handle this situation is to bring the whole database to a state prior to the commit of the erroneous transaction (called point-in-time recovery). Transactions that committed later have their effects rolled back with this scheme.
Suggest a modification to the advanced recovery mechanism to implement point-in-time recovery.
c. Later non-erroneous transactions can be reexecuted logically, but cannot be reexecuted using their log records.Why?