aws / aws/aws-durable-execution-sdk-python

revisit locking strategy in local runner

Abierto
#639 0 comentarios 0 reacciones 0 asignados Ver en GitHub
pkg:testing
Lenguaje dominante
Python
Estrellas
53
Forks
25
Merge medio
1 d 12 h
PR fusionados (30 d)
37

Descripción

the extra `_state_lock` is actually not necessary, and if anything we could/should _probably_ remove it from get_navigable and friends, reason being the recent lane-based re-architecture isolated an execution into its own lane that serializes Checkpoint writes that run as CheckpointTask on that same lane, so the read and write cannot overlap.

however, that's wider refactor beyond the scope fo this PR, and since the lock is harmless and for the sake of symmetry might as well let it stand as introduced here and then revisit clean-up opportunities for redundant locks throughout later.

_Originally posted by @yaythomas in https://github.com/aws/aws-durable-execution-sdk-python/issues/637#issuecomment-5287117584_

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Empieza localizando el runner local y los métodos get_navigable; después, sigue cómo la ejecución basada en lanes serializa las escrituras de Checkpoint realizadas por CheckpointTask. Determina si _state_lock es redundante para estas lecturas y escrituras. Se considera terminado cuando la estrategia de locking se simplifica únicamente donde es seguro hacerlo, y la limpieza de locks redundantes está claramente separada del refactor más amplio.

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

Evaluación

Stack tecnológico
python
Área
backend
Tipo de issue
Refactorización
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Tranquilo
Claridad
Necesita aclaración
Aptitud para principiantes
38/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.