Старый вопрос, но никто не упомянул, что он должен быть заменен массивами переменной длины.
char arr[size];
вместо
char *arr=alloca(size);
Он находится в стандарте C99 и существует как расширение компилятора во многих компиляторах.
Почему бы не использовать триггеры в клею для обработки зависимостей?
Вы можете синхронно вызывать задание Glue из StepFunction , чтобы оно ожидало завершения задания:
{
"StartAt": "gluejob1",
"States": {
"gluejob1": {
"Type": "Task",
"Resource": "arn:aws:states:::glue:startJobRun.sync",
"Parameters": {
"JobName.$": "ETLJobName1"
},
"Next": "gluejob2"
},
"gluejob2": {
"Type": "Task",
"Resource": "arn:aws:states:::glue:startJobRun.sync",
"Parameters": {
"JobName.$": "ETLJobName2"
},
"Next": "Gluejob2 Finished Loading"
},
"Gluejob2 Finished Loading": {
"Type": "Pass",
"Result": "",
"End": true
}
}