Import tasks getting stuck mid execution
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Error
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- aws, go, rabbitmq
- Área
- backend, distributed-systems
Línea de trabajo
Comienza con el tiempo de espera de 10 minutos en task/runner.go y, a continuación, sigue las rutas de notificación del progreso, piping y carga a S3 de la tarea de importación. Reproduce o instrumenta los casos reportados de tareas atascadas, incluidos los ejemplos de assets grandes y normales. Se considera terminado cuando se haya identificado la causa y las tareas de importación ya no permanezcan en silencio ni se vuelvan a ejecutar repetidamente después de una redelivery de RabbitMQ.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
We have some weird cases of tasks getting stuck mid execution. These tasks just keep getting
re-executed, since the RabbitMQ will eventually timeout (after 30m) waiting on an ACK and just
terminates the connection with the client (nacking all messages it had in-flight). The task is then
re-executed as if nothing happened [1].
[1] This is also another bug that we should address. Should just fail if the task had already tried
running before and just disappeared, which we can already tell from the metadata in the API. This
is not the root cause though so we still need to investigate and fix the stuck tasks.
No logs that indicate what is wrong, but I have a light suspicion on either:
- the "progress reporting" logic
- the "piping" logic in the import task which sends a stream both to
ffprobeand to the storage - the S3 upload client
On the first tasks I found this error, they were actually importing large stream recordings which take
12+ minutes to download on a good connection, due to the on-demand MP4 generation bottleneck.
It was already weird since we have a hard timeout of 10 minutes so the task runner
should have just failed the task, instead of gone silent.
Right now I just found an even weirder case though. It was from a regular "import" task, which is not
importing a recording but actually just another asset as a test that the user was making. This is the
task:
{
"id": "51ea2a1e-618e-452d-a024-7c5a0ace266f",
"type": "import",
"params": {
"import": {
"url": "https://livepeercdn.com/asset/REDACTED/video"
}
},
"status": {
"phase": "running",
"progress": 0.649,
"updatedAt": 1651269956139
},
"userId": "REDACTED",
"createdAt": 1650886712179,
"outputAssetId": "4582de3b-ead3-4ffe-8b6d-b130f61290a1"
}
The asset has around 5GB and takes less than a minute to download from a good connection, so there's
no clear reason of why the task-runner is getting stuck.
- Lenguaje dominante
- Go
- Estrellas
- 3
- Forks
- 1
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de livepeer/task-runner
-
Out of bounds panics when processing catalyst callback messagesQuizá libre de nuevo @gioelecerati la tomó hace 1352 días y no hay ningún pull request abierto. Abierto
livepeer/task-runner#136 · 1 asignado ·
-
"error processing ffprobe output: no video track found in file" for audio only inputQuizá libre de nuevo @red-0ne la tomó hace 1380 días y no hay ningún pull request abierto. Abierto
livepeer/task-runner#121 · 1 asignado ·
-
catalyst task lost (last update 1m58.390845005s ago) after retrying for an Acceleration faultQuizá libre de nuevo @thomshutt la tomó hace 1401 días y no hay ningún pull request abierto. Abierto
livepeer/task-runner#115 · 3 comentarios · 1 asignado ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
livepeer/task-runner#108 ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
livepeer/task-runner#105 ·
Todos los issues de livepeer/task-runner
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 81/100
apache/rocketmq-dashboard#6895 ·
Los mantenedores suelen responder en 3 días
-
agent-butler-finding chore
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
jordansmall/spindrift#5466 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 87/100
777genius/agent-notifications#490 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
devantler-tech/ksail#7836 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
keyxmakerx/Chronicle#1469 ·
Los mantenedores suelen responder en 1 día