aws / aws/aws-durable-execution-sdk-python
revisit locking strategy in local runner
- 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
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