|Subject:||Re: [Bug-ddrescue] Problem with domain-logfile|
|Date:||Wed, 04 Sep 2013 14:29:43 +0200|
Katona Gábor wrote:
I absolutely agree with Gábor, sequential processing is the consequent way to do it. We could specify in such a "free style" domain the order in which to try blocks and explicit retries. ddrescuelog might also be enabled to create such a sequential domain-logfile from a pre-ordered list of blocks.
To complement that, there should be the option to deduce the (sequential) rescue domain from all the lines present in the domain-logfile (instead of only "+"), simply ignoring the status field. This would give the opportunity to make a copy of a real log file from an incomplete first run, edit out all areas that are not important, rearrange the rest by priority, and continue rescuing, without having to change all lines to status "+".
Btw, I would wish for an option to exit a run _before_ the trimming phase (e.g. -N, —no-trim), because trimming already switches from cluster- to block-reading.
But all this leads to more changes in code than just loose syntax checking, I guess?
Taking that line of thought even a little further:
Sequential processing would bring the domain-logfile more to something like a batch file, which opens the question, if even more could be done in this direction (e.g. execution directions beyond order and location of blocks). On the other hand, the syntactical compatibility with "regular" complete logfiles has a lot of advantages too, so that should not be broken.
One possibility would be to use the different status markers from the domain-logfile in their original meaning to override the "initial status read from log file" just once at the beginning of the run (first or last occurrence of the same block wins). This would allow to selectively retrim or re-copy certain areas without having to alter the original (regular) log file.
Finally, using only a domain-logfile with status-overrides _without_ a regular log file, the domain-logfile would become the sole source for the "initial status" of a block. Strictly processing the domain-logfile line by line - together with the new enhanced logging-features of ddrescue - could come in handy for all sorts of test-cases.
|[Prev in Thread]||Current Thread||[Next in Thread]|