use freshgun for tryAndWait
This commit is contained in:
parent
19f14e6d83
commit
c6f8e37c5f
1 changed files with 23 additions and 16 deletions
|
|
@ -81,15 +81,21 @@ const tryAndWait = async (promGen, shouldRetry = () => false) => {
|
||||||
)
|
)
|
||||||
|
|
||||||
if (shouldRetry(resolvedValue)) {
|
if (shouldRetry(resolvedValue)) {
|
||||||
throw new Error('force retrying')
|
logger.info(
|
||||||
|
'force retrying' +
|
||||||
|
` args: ${promGen.toString()} -- ${shouldRetry.toString()}`
|
||||||
|
)
|
||||||
|
} else {
|
||||||
|
return resolvedValue
|
||||||
}
|
}
|
||||||
|
|
||||||
return resolvedValue
|
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
logger.error(e)
|
logger.error(e)
|
||||||
}
|
}
|
||||||
|
|
||||||
logger.info(`\n retrying \n`)
|
logger.info(
|
||||||
|
`\n retrying \n` +
|
||||||
|
` args: ${promGen.toString()} -- ${shouldRetry.toString()}`
|
||||||
|
)
|
||||||
|
|
||||||
await delay(3000)
|
await delay(3000)
|
||||||
|
|
||||||
|
|
@ -102,24 +108,25 @@ const tryAndWait = async (promGen, shouldRetry = () => false) => {
|
||||||
)
|
)
|
||||||
|
|
||||||
if (shouldRetry(resolvedValue)) {
|
if (shouldRetry(resolvedValue)) {
|
||||||
throw new Error('force retrying')
|
logger.info(
|
||||||
|
'force retrying' +
|
||||||
|
` args: ${promGen.toString()} -- ${shouldRetry.toString()}`
|
||||||
|
)
|
||||||
|
} else {
|
||||||
|
return resolvedValue
|
||||||
}
|
}
|
||||||
|
|
||||||
return resolvedValue
|
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
logger.error(e)
|
logger.error(e)
|
||||||
}
|
}
|
||||||
|
|
||||||
logger.info(`\n recreating gun and retrying one last time \n`)
|
logger.info(
|
||||||
|
`\n recreating a fresh gun and retrying one last time \n` +
|
||||||
await require('../../Mediator/index').instantiateGun()
|
` args: ${promGen.toString()} -- ${shouldRetry.toString()}`
|
||||||
|
|
||||||
return timeout10(
|
|
||||||
promGen(
|
|
||||||
require('../../Mediator/index').getGun(),
|
|
||||||
require('../../Mediator/index').getUser()
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
const { gun, user } = await require('../../Mediator/index').freshGun()
|
||||||
|
|
||||||
|
return timeout10(promGen(gun, user))
|
||||||
/* eslint-enable no-empty */
|
/* eslint-enable no-empty */
|
||||||
/* eslint-enable init-declarations */
|
/* eslint-enable init-declarations */
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue