The way we query the DB in `submission_status` is prone to breakage

Abierto
#183 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
66/100
Tipo de issue
Refactorización
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
rust
Área
database

Línea de trabajo

Start in common/submission.rs at submission_status and inspect the existing database queries and their ordering assumptions. Choose a transaction or UNION ALL approach that makes the status read consistent under concurrent writes, while preserving the current results and status behavior.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

In common/submission.rs:submission_status we have the following comment:

// NOTE: The order is important here; a concurrent writer could move a submission
// from Paused to InProgress/Cancelled in-between the queries.
// from InProgress to Completed/Failed/Cancelled in-between the queries.

Instead of relying on our attention to detail. Let's rewrite the queries here to use a transaction and/or merge them into a single query using UNION ALL.

Found in https://github.com/channable/opsqueue/pull/132#discussion_r3776586912.

Lenguaje dominante
Rust
Estrellas
96
Forks
2
Métricas de merge de PR
Sin PR fusionados en 30 d

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de channable/opsqueue

Todos los issues de channable/opsqueue

Issues similares

Más issues de Rust

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.