ServicePulse: Make it possible to do Retry Errors in batches

Sometimes the number of errors for a certain msg type is very high. I want to retry them in batches to not suffocate the system.

I can select a whole page or errors (50) and then retry them at once, and I can retry all of them. There is no middle ground, it is 50 msg or all.

I would like to have an option to retry and then specify the batch, like 1000 or 5000. Would be this a feature to add to ServicePulse?

Hi @remyvd

That is actually a nice feature request. Could you create a feature request issue at https://github.com/Particular/ServicePulse/issues for this?

For my curiosity, you state you don’t want to suffocate the system. Would it help if:

a. Group retries were “rate limited“?

b. Would run in “chunks“ untill “failure“ and then for example pause?

In other words what are we mitigating with the small batch? Only preventing fully utilizing the infrastructure? What is the ideal workflow?

ServicePulse: Make it possible to do Retry Errors in batches · Issue #2764 · Particular/ServicePulse

There are different scenarios regarding retries, so there is I think not one solution.

If I can just specify manually an x number of msg to retry it would solve a lot of scenarios for me, I think.

Examples:

  • After a bugfix, I want to slowly increase the number to process, to make sure I really fixed the bug (or created by accident a new one). (increasing batches 1,2,5,20,50,100,200,500,1000,2000,5000,10000, etc)
  • Retries can be done but it is too much and will interfere with normal operations. I want to slowly do the retries with a rate-limiter.
  • Retries are done on 1 or very low number of saga’s, so it is of no use to retry all because they will all be hitting the same saga. Rate-limiter could help here.
1 Like