Jan Wieck wrote:
>
> RECOVER DATABASE {ALL | UNTIL 'datetime' | RESET};
>
...
>
> For the others, the backend starts the recovery program
> which reads the redolog files, establishes database
> connections as required and reruns all the commands in
^^^^^^^^^^^^^^^^^^^^^^^^^^
> them. If a required logfile isn't found, it tells the ^^^^^
I foresee problems with using _commands_ logging for
recovery/replication -:((
Let's consider two concurrent updates in READ COMMITTED mode:
update test set x = 2 where y = 1;
and
update test set x = 3 where y = 1;
The result of both committed transaction will be x = 2
if the 1st transaction updated row _after_ 2nd transaction
and x = 3 if the 2nd transaction gets row after 1st one.
Order of updates is not defined by order in which commands
begun and so order in which commands should be rerun
will be unknown...
Comments?
Vadim