(resource, arg1, arg2)
| 425 | // This retries a `save` call if we get an error like: |
| 426 | // 500 - Something went wrong, please try again |
| 427 | function saveWithRetry(resource, arg1, arg2) { |
| 428 | return resource.save(arg1, arg2) |
| 429 | .catch(err => { |
| 430 | console.error(err); |
| 431 | if (err.statusCode === 500 || err.statusCode === 429 || err.code === 'ETIMEDOUT') { // server error or rate limit |
| 432 | return new Promise(r => setTimeout(r, 10000)) // wait 10 sec |
| 433 | .then(() => saveWithRetry(resource, arg1, arg2)); // try again |
| 434 | } else { |
| 435 | throw err; |
| 436 | } |
| 437 | }); |
| 438 | } |
no test coverage detected