Thanks Nicolas, indeed this was good change :)
- Best Regards, Swapnil M Mane On Tue, Sep 11, 2018 at 1:15 PM Nicolas Malin <nicolas.ma...@nereide.fr> wrote: > Thanks for your return, much appreciated :) > > I load the modification on trunk at 1840526 > > Cheers, > > Nicolas > > > On 07/09/2018 17:22, Nicolas Malin wrote: > > Hi, > > > > On a customer site, we have huge services that call different rest api > > to collect information > > To increase the velocity we run all them by persistence asynchrone > > then the job pooler manage them with available resources. > > > > The problem is, when a call failed and the service threw an error, the > > service engine reschedule it, ... and it failed, rescheduled, failed, > > rescheduled, failed ... with beautiful result to overload your pool > > with zombie services. > > > > The solution is easy, set on your service definition attribute > > max-retry to 0 (or 1, if you want one retry) but I didn't understand > > why we have this configuration to reschedule indefinitely a service if > > it is in error. > > > > This configuration exists before apache migration so I'd happy to have > > your vision about this. > > From my view, I'm in favor to set max retry to 0 by default and left > > the developer set him self when he wants that a service restart after > > a failure. > > > > Easy change : > > Index: > > > framework/service/src/main/java/org/apache/ofbiz/service/job/PersistedServiceJob.java > > > > @@ -80,7 +80,7 @@ > > this.jobValue = jobValue; > > Timestamp storedDate = jobValue.getTimestamp("runTime"); > > this.startTime = storedDate.getTime(); > > - this.maxRetry = jobValue.get("maxRetry") != null ? > > jobValue.getLong("maxRetry") : -1; > > + this.maxRetry = jobValue.get("maxRetry") != null ? > > jobValue.getLong("maxRetry") : 0; > > > > Nicolas > > > >