revisit locking strategy in local runner

Offen
#639 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
38/100
Issue-Typ
Refactoring
Klarheit
Muss geklärt werden
Aktivitätsstatus
Ruhig
Tech-Stack
python
Bereich
backend

Rechercherichtung

Beginne damit, den lokalen Runner und die get_navigable-Methoden zu lokalisieren, und verfolge dann, wie die lane-basierte Ausführung von CheckpointTask durchgeführte Checkpoint-Schreibvorgänge serialisiert. Ermittle, ob _state_lock für diese Lese- und Schreibvorgänge redundant ist. Als erledigt gilt die Aufgabe, wenn die Locking-Strategie nur dort vereinfacht wurde, wo dies sicher ist, und die Bereinigung redundanter Locks klar von dem umfassenderen Refactoring getrennt ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

pkg:testing

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

Vorherrschende Sprache
Python
Sterne
58
Forks
32
Ø Merge
1 T. 6 Std.
Gemergte PRs (30 T.)
80

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus aws/aws-durable-execution-sdk-python

Alle Issues in aws/aws-durable-execution-sdk-python

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.