Hi Petr and Jim,

Both of your questions and suggestions are valid. If I can paraphrase what you wrote:

Jim: If a one second sleep fixes the problem, then why not try 1/10s or 1/2s, or sleeping 200ms multiple times before giving up?

    Petr:  Why sleep on the third iteration and not on the last iteration?

The challenge with this problem is that there is probably more than one solution that would work. These same type of questions could be asked of the original implementation that tried 5 times before giving up. For example, why not try only 4 times, or perhaps 6 times?

My guess is that the original author found that 5 times appeared to solve the problem and hence 5 is the number that was used.

I believe that the solution I have proposed falls into the same category. I wished to maintain at least the same number of tries as the original code before invoking the sleep. Then following the sleep I wished to have at least a couple of more tries before the function would give up. I happened to choose 9 and 3 because I liked these numbers and the solution appears to work (my test has now run over 35,000 iterations successfully).

Perhaps a better solution would involve both of your suggestions.

From my perspective I am interested in having this problem fixed. Because I have been working on this problem since November and I believe that the proposed solution does address the problem, I am inclined to leave it at that. I think that for me, spending more time on this problem will result in significantly diminishing returns.

Please feel free to improve upon the solution. This is one of the great benefits of free open source software.

I will report back with the status of my test when it completes. I anticipate that this will take at least a few more days.

Sincerely,
Curtis Gedak

_______________________________________________
parted-devel mailing list
[email protected]
http://lists.alioth.debian.org/mailman/listinfo/parted-devel

Reply via email to