CodeChain-io / CodeChain-io/foundry

ConnectionEstablished is called in an already established connection

Offen
#274 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
bug
Vorherrschende Sprache
Rust
Sterne
36
Forks
11
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Recently, discovery5 tests failed occasionally.
I read the failed test log and found that a connection established event is fired in the already existing connection. It made Foundry crash.

## Why this error found nowadays

Recently when we implementing a peer DB, we added an assertion that the same peer is not added twice in the DB. The assertion made Foundry panic.
It seems that the duplicated connection established event bug is aged, but recently found by the assertion.

## How should we fix it

The "connection established" event should not be called in an existing connection.

## ErrorLog

[2020_03_18T01_56_17_226Z.1.log](https://github.com/CodeChain-io/foundry/files/4346655/2020_03_18T01_56_17_226Z.1.log)
[2020_03_18T01_56_17_226Z.4.log](https://github.com/CodeChain-io/foundry/files/4346656/2020_03_18T01_56_17_226Z.4.log)

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne damit, den intermittierenden Fehler im discovery5-Test zu reproduzieren und die verknüpften Fehlerprotokolle zu überprüfen. Verfolge, wo das ConnectionEstablished-Ereignis für eine bestehende Verbindung ausgegeben wird, zusammen mit der Assertion auf ein Duplikat in der peer DB. Die Aufgabe ist abgeschlossen, wenn eine bestehende Verbindung das Ereignis nicht mehr ausgibt und die discovery5-Tests ohne Absturz von Foundry erfolgreich sind.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

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

Neue Issues direkt in Ihr Postfach

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