1
0
mirror of https://github.com/sasjs/adapter.git synced 2026-01-03 18:50:05 +00:00

fix(job-state-poll): Continue polling for job state despite errored requests

This commit is contained in:
Krishna Acondy
2021-05-11 08:23:40 +01:00
parent dffcb66d54
commit 98114c5591

View File

@@ -594,15 +594,16 @@ export class SASViyaApiClient {
}
}
const { result: createFolderResponse } =
await this.requestClient.post<Folder>(
`/folders/folders?parentFolderUri=${parentFolderUri}`,
{
name: folderName,
type: 'folder'
},
accessToken
)
const {
result: createFolderResponse
} = await this.requestClient.post<Folder>(
`/folders/folders?parentFolderUri=${parentFolderUri}`,
{
name: folderName,
type: 'folder'
},
accessToken
)
// update folder map with newly created folder.
await this.populateFolderMap(
@@ -874,7 +875,9 @@ export class SASViyaApiClient {
throw new Error(`URI of job definition was not found.`)
}
const { result: jobDefinition } = await this.requestClient
const {
result: jobDefinition
} = await this.requestClient
.get<JobDefinition>(
`${this.serverUrl}${jobDefinitionLink.href}`,
accessToken
@@ -1107,7 +1110,11 @@ export class SASViyaApiClient {
this.debug
)
.catch((err) => {
throw prefixMessage(err, 'Error while getting job state. ')
console.error(
'Error fetching job state. Starting poll, assuming job to be running.',
err
)
return { result: 'running' }
})
const currentState = state.trim()
@@ -1134,10 +1141,17 @@ export class SASViyaApiClient {
this.debug
)
.catch((err) => {
throw prefixMessage(
err,
'Error while getting job state after interval. '
if (pollCount >= MAX_POLL_COUNT) {
throw prefixMessage(
err,
'Error while getting job state after interval. '
)
}
console.error(
'Error fetching job state. Resuming poll, assuming job to be running.',
err
)
return { result: 'running' }
})
postedJobState = jobState.trim()