View Issue Details

IDProjectCategoryView StatusLast Update
0001234Double CommanderFile operationspublic2020-11-30 07:43
Reporterphs Assigned ToAlexx2000  
PrioritylowSeveritytweakReproducibilityalways
Status closedResolutionfixed 
ProjectionnoneETAnone 
Product Version0.6.6Product Build2015/10/11 
Target Version0.8.0Fixed in Version0.8.0 
Summary0001234: Wrong estimated remaining time, if total amount of time is greather than 24 hours
DescriptionBy copying a lot of files (several TBs), I was woder by strenght estimeted time. I can oberve, the remaining time after about one day (in cca 15% of progress), the remaining time was under 2 hours (it was suspicious). After this time (aproximetly), the estimation was been decreasing to nearly zero and change to 23:59:59 (percentual proggres was still about 20 %) and next day this was hapend again. The remaining time is showing as modulo 24 hours.
Steps To ReproduceSelect big amount of files to copy. If the operation will take more than one day, the error will occur.
Additional InformationI have discoverred the cause of this behaviour:
In source file "fFileOpDlg.pas" at line 726
             sEstimated := FormatDateTime('HH:MM:SS', RemainingTime)
are not expected, the fileoperation can take one day or more (its not very common)
My soulution (but only partial - same problem will occur for >30 days of estimated time, but its simplest solution)
(line 723 and next lines)
      if RemainingTime > 0 then
        begin
          if RemainingTime < 1 then {I'm not sure, if this condition is correct, but it is working}
             sEstimated := FormatDateTime('HH:MM:SS', RemainingTime) //normal wiev, less than 24 hours of estimated time
             // if the estimated time is greather (or equal) than 24 hour, there is viewed in modulo 24
          else
             sEstimated := FormatDateTime('d "d" HH:MM:SS', RemainingTime);//by estimation, operation take more than 24 hours
             //This soulution is not an ideal one (what hapen, in case of more thah 30 d), it may be better to view d days hh:mm:ss (but the word "day"
             //can be (must be) different in differrent languages and not only in my language is different form for different letter "d" is more universal (in english and czech (i.e. my) language)
             //count of days (1="den"; 2,3,4="dny"; >5="dnů"))
             //larger number in hours without conversion to days may be sipmlest to implementation but less clear for ussers
             //or can you realize, how much time take operation if odhad is for instance 126 hours (formatdatetime don't offer this possibility)
          sEstimated := Format(rsDlgSpeedTime, [Speed, sEstimated]);
        end {if RemainingTime > 0}
      else
      ....



more universal soulution will combinate day without dependency to calendar and time (probably there is not needed solution for more than several days):
             sEstimated := int2str(trunc(RemainingTime)) + ' d ' + FormatDateTime('HH:MM:SS', RemainingTime)
//sEstimated := whole_days + part_of_day
//the day symbol or word should be localised and in case of using whole word they should change the form (singular, dual (relict for several quantity in some languages) and plural)
TagsNo tags attached.
Attached Files
fFileOpDlg_modified.pas (38,052 bytes)
Fixed in Revision7551
Operating systemWindows
Widgetset
Architecture

Activities

Issue History

Date Modified Username Field Change
2015-12-14 19:14 phs New Issue
2015-12-14 19:14 phs File Added: fFileOpDlg_modified.pas
2016-07-06 21:19 Alexx2000 Status new => acknowledged
2016-07-06 21:19 Alexx2000 Target Version => 0.8.0
2017-05-09 12:46 Alexx2000 Fixed in Revision => 7551
2017-05-09 12:46 Alexx2000 Status acknowledged => resolved
2017-05-09 12:46 Alexx2000 Resolution open => fixed
2017-05-09 12:46 Alexx2000 Assigned To => Alexx2000
2017-05-09 12:46 Alexx2000 Fixed in Version => 0.8.0
2020-11-30 07:43 Alexx2000 Status resolved => closed