Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(backoff): allow no delay arg when setting immediate strategy #154

Merged
merged 1 commit into from Feb 21, 2020

Conversation

ghmeier
Copy link
Contributor

@ghmeier ghmeier commented Dec 12, 2018

Per the documentation you should be able to call job.backoff('immediate') to set an immediate backoff strategy for retried jobs. However, the backoff method explicitly disallowed this by checking for Number.isSafeInteger(undefined) which returns false. This means you currently cannot specify an immediate backoff strategy without also specifying a positive delay value.

To fix this, only check for valid integers when the strategy is not immediate.

@coveralls

This comment has been minimized.

@coveralls
Copy link

coveralls commented Dec 12, 2018

Coverage Status

Coverage remained the same at 100.0% when pulling d9155c9 on mixmaxhq:ghmeier/allow-immediate-backoff into b9ffac9 on bee-queue:master.

@ghmeier
Copy link
Contributor Author

ghmeier commented Jan 14, 2019

Bump on this ☝️

@bradvogel
Copy link
Contributor

@ghmeier I just added you to the Bee Queue org, so you can merge this.

@LewisJEllis - Garret is an engineer on our team

@skeggse skeggse force-pushed the ghmeier/allow-immediate-backoff branch 2 times, most recently from dada8ad to fac1f67 Compare January 27, 2020 23:45
@skeggse skeggse force-pushed the ghmeier/allow-immediate-backoff branch from c9f7632 to a4d8059 Compare February 21, 2020 16:44
@skeggse skeggse changed the title Allow non-positive integer delays for immediate backoff strategy fix(backoff): allow no delay arg when setting immediate strategy Feb 21, 2020
@skeggse skeggse force-pushed the ghmeier/allow-immediate-backoff branch from a4d8059 to e1a1c40 Compare February 21, 2020 16:57
@hughsw

This comment has been minimized.

… test

Per [the
documentation](https://github.com/mixmaxhq/bee-queue#jobbackoffstrategy-delayfactor)
you should be able to call `job.backoff('immediate')` to set an
immediate backoff strategy for retried jobs. However, the `backoff`
method explicitly disallowed this by checking for
`Number.isSafeInteger(undefined)` which returns false. This means
you currently cannot specify an immediate backoff strategy without also specifying a positive delay value.

To fix this, only check for valid integers when the strategy is not
`immediate`.

Co-Authored-By: Hugh Secker-Walker <hsw@hodain.net>
@skeggse skeggse force-pushed the ghmeier/allow-immediate-backoff branch from e1a1c40 to d9155c9 Compare February 21, 2020 17:01
@skeggse skeggse merged commit 6f1d62f into bee-queue:master Feb 21, 2020
@skeggse skeggse deleted the ghmeier/allow-immediate-backoff branch February 21, 2020 17:04
beequeueci pushed a commit that referenced this pull request Nov 2, 2020
## [1.3.0](v1.2.3...v1.3.0) (2020-11-02)

### Features

* implement Queue#saveAll feature ([#198](#198)) ([851f09d](851f09d))
* support custom strategies on a queue ([#134](#134)) ([926de9d](926de9d))
* **types:** add generics to type definitions ([a565d3d](a565d3d))
* **types:** add isRunning ([c488385](c488385))
* **types:** add ready handler ([32c4b1e](32c4b1e))

### Bug Fixes

* **backoff:** allow no delay arg when setting immediate strategy ([#154](#154)) ([6f1d62f](6f1d62f))
* **queue:** remove error event listener on close ([#231](#231)) ([36b4904](36b4904))
* **removeJob:** remove job from stored jobs ([#230](#230)) ([a8c9d87](a8c9d87))
* **types:** support progress events using arbitrary data ([#140](#140)) ([bc8aa52](bc8aa52))
* **types:** update createJob handler for consistency ([b71a993](b71a993))
* **types:** update redis option type ([#290](#290)) ([e80c51d](e80c51d))
* **types:** update type declaration ([#252](#252)) ([1dce7ca](1dce7ca))
* misc edge case fixes ([a2df983](a2df983))
* update typescript declarations and add documentation ([#187](#187)) ([cec1498](cec1498)), closes [#138](#138)
beequeueci pushed a commit that referenced this pull request Nov 3, 2020
## [1.3.0](v1.2.3...v1.3.0) (2020-11-03)

### Features

* implement Queue#saveAll feature ([#198](#198)) ([851f09d](851f09d))
* support custom strategies on a queue ([#134](#134)) ([926de9d](926de9d))
* **types:** add generics to type definitions ([a565d3d](a565d3d))
* **types:** add isRunning ([c488385](c488385))
* **types:** add ready handler ([32c4b1e](32c4b1e))

### Bug Fixes

* **backoff:** allow no delay arg when setting immediate strategy ([#154](#154)) ([6f1d62f](6f1d62f))
* **queue:** remove error event listener on close ([#231](#231)) ([36b4904](36b4904))
* **removeJob:** remove job from stored jobs ([#230](#230)) ([a8c9d87](a8c9d87))
* **types:** support progress events using arbitrary data ([#140](#140)) ([bc8aa52](bc8aa52))
* **types:** update createJob handler for consistency ([b71a993](b71a993))
* **types:** update redis option type ([#290](#290)) ([e80c51d](e80c51d))
* **types:** update type declaration ([#252](#252)) ([1dce7ca](1dce7ca))
* misc edge case fixes ([a2df983](a2df983))
* update typescript declarations and add documentation ([#187](#187)) ([cec1498](cec1498)), closes [#138](#138)
@beequeueci
Copy link
Collaborator

🎉 This PR is included in version 1.3.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants