Resolve "Duniter is using 100% of one CPU core"
Closes #297 (closed)
The issue was that command_rx
was always ready, even if it did not have received any command. As a consequence, the running async loop was heavily triggered causing high CPU usage.
Furthermore it always took precedence over handle_notification_event
's future, which explains why peering documents were not shared.
@bgallois already noticed about a potential issue with
command_rx
which is only used for tests for now.
This MR also adds more logs.
Merge request reports
Activity
assigned to @c-geek
changed milestone to %client-0.10.1
added 1 commit
- 660c86eb - fix(#297 (closed)): duniter-endpoints task was using 100% of one CPU core
added 58 commits
- 660c86eb...9123b87a - 48 earlier commits
- 79e46685 - client 0.9.1
- 83f279f0 - Merge branch 'hugo/tmp-0.9.1' into network/gdev-800
- 3136eaa0 - Merge branch 'master' into network/gdev-800
- e6a97f37 - client 0.9.2
- c69d549c - cargo.lock
- 24cf5515 - Merge branch 'master' into network/gdev-800
- c781169a - client 0.10.0
- 630ee36c - fix: wrong client version
- 31ef3447 - fix: cargo.lock
- 11c68005 - fix(#297 (closed)): duniter-endpoints task was using 100% of one CPU core
Toggle commit listrequested review from @HugoTrentesaux
Pining @tuxmain / @librelois / @bgallois for review.
101 101 while let Some(event) = stream.next().await { 102 102 debug_event(event.clone(), local_peer_id); 103 103 if let DuniterPeeringEvent::GoodPeering(peer, _) = event { 104 debug!(target: "duniter-libp2p", "[{}] Received peering from {}",local_peer_id, peer); 104 warn!(target: "duniter-libp2p", "[{}] Received peering from {}",local_peer_id, peer); On est dans le module de tests unitaires, c'est juste pour pouvoir mettre en exergue ces logs dans le cadre du test. Je me suis rendu compte en voulant voir les logs de tests que si je mettais
RUST_LOG=debug
pour voir ces logs j'avais aussi énormément de logs de Substrate qui les noyaient. En mettantRUST_LOG=warn
et en exécutant juste ce test, alors je vois presque uniquement les logs de mon test.
- Resolved by Cédric Moreau
Les tests échouent, mais sont dus à #298. Je mergerai avec ces tests en échec, puis corrigerai le ticket indépendamment.
added 2 commits
-
880c740d - 1 commit from branch
network/gdev-800
- 28cd76fc - fix(#297 (closed)): duniter-endpoints task was using 100% of one CPU core
-
880c740d - 1 commit from branch
mentioned in commit 776a0e9c
removed review request for @HugoTrentesaux