matrix-org / matrix-org/complement

container logs not flushed if there is a timeout spinning up a container

Offen
#484 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Go
Sterne
99
Forks
72
Ø Merge
4 T. 1 Std.
Gemergte PRs (30 T.)
8

Beschreibung

#392 added a ContainerStop to Deployer.Destroy, so that the container has a chance to gracefully shut down and flush its logs before we print them.

However, we print the logs in a couple of other situations:

  • in Deployer.Deploy, if there is a timeout waiting for the container to be ready. (In this case it looks like we don't destroy the container at all?)
  • in Builder.ConstructBlueprint (via Builder.construct).

In both these cases, the logs are printed before the container is stopped.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, Deployer.Deploy und Builder.ConstructBlueprint über Builder.construct zu lesen, und vergleiche anschließend ihre Protokollbehandlung mit Deployer.Destroy und dessen ContainerStop-Verhalten. Reproduziere die Timeout- und Konstruktionspfade, um zu überprüfen, wann die Logs ausgegeben werden. Als erledigt gilt die Änderung, wenn der Container in beiden Fällen vor der Ausgabe der Logs gestoppt wird und der Timeout-Pfad außerdem den Lebenszyklus des Containers korrekt behandelt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
go
Bereich
testing
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

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