sling-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From pa...@apache.org
Subject svn commit: r1804116 - /sling/trunk/bundles/extensions/event/resource/src/main/java/org/apache/sling/event/impl/jobs/JobImpl.java
Date Fri, 04 Aug 2017 12:54:08 GMT
Author: pauls
Date: Fri Aug  4 12:54:08 2017
New Revision: 1804116

URL: http://svn.apache.org/viewvc?rev=1804116&view=rev
Log:
SLING-7027: Fix eta calculation for jobs and make sure we use the new eta on an updated.

Modified:
    sling/trunk/bundles/extensions/event/resource/src/main/java/org/apache/sling/event/impl/jobs/JobImpl.java

Modified: sling/trunk/bundles/extensions/event/resource/src/main/java/org/apache/sling/event/impl/jobs/JobImpl.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/event/resource/src/main/java/org/apache/sling/event/impl/jobs/JobImpl.java?rev=1804116&r1=1804115&r2=1804116&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/event/resource/src/main/java/org/apache/sling/event/impl/jobs/JobImpl.java
(original)
+++ sling/trunk/bundles/extensions/event/resource/src/main/java/org/apache/sling/event/impl/jobs/JobImpl.java
Fri Aug  4 12:54:08 2017
@@ -278,7 +278,7 @@ public class JobImpl implements Job, Com
             final Calendar now = Calendar.getInstance();
             final long elapsed = now.getTimeInMillis() - this.getProcessingStarted().getTimeInMillis();
 
-            final long eta = elapsed * steps / step;
+            final long eta = System.currentTimeMillis() + (elapsed / current) * (steps -
current);
             now.setTimeInMillis(eta);
             this.setProperty(Job.PROPERTY_JOB_PROGRESS_ETA, now);
             return new String[] {Job.PROPERTY_JOB_PROGRESS_STEP, Job.PROPERTY_JOB_PROGRESS_ETA};
@@ -291,7 +291,7 @@ public class JobImpl implements Job, Com
             final Date finishDate = new Date(System.currentTimeMillis() + eta * 1000);
             final Calendar finishCal = Calendar.getInstance();
             finishCal.setTime(finishDate);
-            this.setProperty(Job.PROPERTY_JOB_PROGRESS_ETA, eta);
+            this.setProperty(Job.PROPERTY_JOB_PROGRESS_ETA, finishCal);
         } else {
             this.properties.remove(Job.PROPERTY_JOB_PROGRESS_ETA);
         }



Mime
View raw message