ElementsProject / ElementsProject/elements
Intermittent stall in unit tests
- Vorherrschende Sprache
- C++
- Sterne
- 1.2k
- Forks
- 416
- Ø Merge
- 1 T. 23 Std.
- Gemergte PRs (30 T.)
- 15
Beschreibung
There is a race condition where we wind up enabling dynafed globally when running all the unit tests. Then in the `TestChain100Setup` (used by most of the wallet tests, for example), try to PoW up a bunch of blocks, in the line
https://github.com/ElementsProject/elements/blob/88067ddbe4223e43a4c86912928b28b834bbf69e/src/test/test_bitcoin.cpp#L168
which will just run forever. In dynafed `nNonce` doesn't go into the hash.
We should either force dynafed off for these tests, or just replace the PoW loop with a signed-block setup.
Beitragsleitfaden
Rechercherichtung
Beginne in src/test/test_bitcoin.cpp an der verknüpften Zeile in TestChain100Setup und verfolge, wie dynafed während der Ausführung der Unit-Tests aktiviert wird. Reproduziere den Hänger, indem du die vollständige Unit-Test-Suite ausführst, und wähle dann einen der im Issue genannten Ansätze. Als erledigt gilt die Aufgabe, wenn die Wallet-bezogenen Tests abgeschlossen werden, ohne dass die PoW-Schleife endlos läuft.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- cpp
- Bereich
- blockchain, testing
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100