in functions/util.js [9:22]
async function waitForQueryExecution(queryExecutionId) {
while (true) {
const data = await athena.getQueryExecution({
QueryExecutionId: queryExecutionId
}).promise();
const state = data.QueryExecution.Status.State;
if (state === 'SUCCEEDED') {
return;
} else if (state === 'FAILED' || state === 'CANCELLED') {
throw Error(`Query ${queryExecutionId} failed: ${data.QueryExecution.Status.StateChangeReason}`);
}
await new Promise(resolve => setTimeout(resolve, 100));
}
}