Christopher Kings-Lynne <chriskl@familyhealth.com.au> writes:
>> Oracle does, but you pay in other ways. Instead of keeping dead tuples
>> in the main heap, they shuffle them off to an 'undo log'. This has some
>> downsides:
>> Rollbacks take *forever*, though this usually isn't much of an issue
>> unless you need to abort a really big transaction.
> It's a good point though. Surely a database should be optimised for the
> most common operation - commits, rather than rollbacks?
The "shuffling off" of the data is expensive in itself, so I'm not sure
you can argue that the Oracle way is more optimal for commits either.
regards, tom lane