bug-ddrescue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-ddrescue] Slow reads for x time to exit and whitespace skipping


From: Antonio Diaz Diaz
Subject: Re: [Bug-ddrescue] Slow reads for x time to exit and whitespace skipping
Date: Tue, 24 Jan 2017 18:24:14 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i586; en-US; rv:1.9.1.19) Gecko/20110420 SeaMonkey/2.0.14

Hi Cameron,

Cameron Andrews wrote:
Firstly, if the --min-read-rate and --max-slow-reads configuration could
be extended so it could be possible to include a timeout, so, I would
set --min-read-rate and then --max-slow-read-time=60 or something like
that. So if it sits at or below the minimum for that length of time, it
would exit ddrescue...

What is the problem with using --max-slow-reads=60 and power cycling every time ddrescue exits with non zero status? (Ddrescue increases 'slow reads' at most once per second).

What do you think about Paul Daniels' idea of resetting the slow reads count if read speed rises above the threshold again?


Alternatively to this, could you send ALL the error codes to stdout?
Not just 0, 1, 3 ... Then I could write a script to get around the
time issue..

Do you mean using a different exit status for each cause of termination? This requires some amount of thinking, because there are a good number of causes for ddrescue to exit, some of which can happen simultaneously.


Second request is for a whitespace detector, hopefully it's not outside
the scope of ddrescue and isn't as hard as it sounds.

This may perhaps be implemented as yet another cause of skipping, perhaps adding two more passes to the copying phase. It should also be considered if passes 3 and 4 should read the blocks skipped due to slow areas before passes 5 and 6 read the blocks skipped due to empty space, or the other way round. (Note that a given block may have been skipped because it is suspected to be both slow and empty).

This requires major changes to ddrescue and I am not sure it will be generally useful. For example, when you know that the data are stored, say, at the beginning of the drive, you can limit the rescue domain. But if, as you say, the data are spread sparsely, there is no way to be sure that all data have been recovered but reading the whole drive.


Best regards,
Antonio.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]